src/HOL/Library/Float.thy
changeset 47230 6584098d5378
parent 47165 9344891b504b
child 47599 400b158f1589
equal deleted inserted replaced
47215:ca516aa5b6ce 47230:6584098d5378
   163   with floateq have a': "real a' = real a * pow2 (b - b')"
   163   with floateq have a': "real a' = real a * pow2 (b - b')"
   164     by (simp add: pow2_diff field_simps)
   164     by (simp add: pow2_diff field_simps)
   165 
   165 
   166   {
   166   {
   167     assume bcmp: "b > b'"
   167     assume bcmp: "b > b'"
   168     then have "\<exists>c::nat. b - b' = int c + 1"
   168     then obtain c :: nat where "b - b' = int c + 1"
   169       by arith
   169       by atomize_elim arith
   170     then guess c ..
       
   171     with a' have "real a' = real (a * 2^c * 2)"
   170     with a' have "real a' = real (a * 2^c * 2)"
   172       by (simp add: pow2_def nat_add_distrib)
   171       by (simp add: pow2_def nat_add_distrib)
   173     with odd have False
   172     with odd have False
   174       unfolding real_of_int_inject by simp
   173       unfolding real_of_int_inject by simp
   175   }
   174   }