src/HOL/Hyperreal/HTranscendental.thy
changeset 15234 ec91a90c604e
parent 15229 1eb23f805c06
child 15539 333a88244569
equal deleted inserted replaced
15233:c55a12162944 15234:ec91a90c604e
   384 done
   384 done
   385 
   385 
   386 lemma starfun_ln_not_eq_zero [simp]: "[| 0 < x; x \<noteq> 1 |] ==> ( *f* ln) x \<noteq> 0"
   386 lemma starfun_ln_not_eq_zero [simp]: "[| 0 < x; x \<noteq> 1 |] ==> ( *f* ln) x \<noteq> 0"
   387 apply (cases x)
   387 apply (cases x)
   388 apply (auto simp add: starfun hypreal_zero_num hypreal_less hypreal_one_num, ultra)
   388 apply (auto simp add: starfun hypreal_zero_num hypreal_less hypreal_one_num, ultra)
   389 apply (auto dest: ln_not_eq_zero) 
       
   390 done
   389 done
   391 
   390 
   392 lemma starfun_ln_HFinite: "[| x \<in> HFinite; 1 \<le> x |] ==> ( *f* ln) x \<in> HFinite"
   391 lemma starfun_ln_HFinite: "[| x \<in> HFinite; 1 \<le> x |] ==> ( *f* ln) x \<in> HFinite"
   393 apply (rule HFinite_bounded)
   392 apply (rule HFinite_bounded)
   394 apply (rule_tac [2] order_less_imp_le)
   393 apply assumption 
   395 apply (rule_tac [2] starfun_ln_less_self)
   394 apply (simp_all add: starfun_ln_less_self order_less_imp_le)
   396 apply (rule_tac [2] order_less_le_trans, auto)
       
   397 done
   395 done
   398 
   396 
   399 lemma starfun_ln_inverse: "0 < x ==> ( *f* ln) (inverse x) = -( *f* ln) x"
   397 lemma starfun_ln_inverse: "0 < x ==> ( *f* ln) (inverse x) = -( *f* ln) x"
   400 apply (cases x)
   398 apply (cases x)
   401 apply (simp add: starfun hypreal_zero_num hypreal_minus hypreal_inverse hypreal_less, ultra)
   399 apply (simp add: starfun hypreal_zero_num hypreal_minus hypreal_inverse hypreal_less, ultra)
   451 done
   449 done
   452 
   450 
   453 lemma starfun_ln_less_zero: "[| 0 < x; x < 1 |] ==> ( *f* ln) x < 0"
   451 lemma starfun_ln_less_zero: "[| 0 < x; x < 1 |] ==> ( *f* ln) x < 0"
   454 apply (cases x)
   452 apply (cases x)
   455 apply (simp add: hypreal_zero_num hypreal_one_num hypreal_less starfun, ultra)
   453 apply (simp add: hypreal_zero_num hypreal_one_num hypreal_less starfun, ultra)
   456 apply (auto intro: ln_less_zero) 
       
   457 done
   454 done
   458 
   455 
   459 lemma starfun_ln_Infinitesimal_less_zero:
   456 lemma starfun_ln_Infinitesimal_less_zero:
   460      "[| x \<in> Infinitesimal; 0 < x |] ==> ( *f* ln) x < 0"
   457      "[| x \<in> Infinitesimal; 0 < x |] ==> ( *f* ln) x < 0"
   461 by (auto intro!: starfun_ln_less_zero simp add: Infinitesimal_def)
   458 by (auto intro!: starfun_ln_less_zero simp add: Infinitesimal_def)