equal
deleted
inserted
replaced
615 apply (simp add: Infinitesimal_def HFinite_def, auto) |
615 apply (simp add: Infinitesimal_def HFinite_def, auto) |
616 apply (rule_tac x = 1 in bexI, auto) |
616 apply (rule_tac x = 1 in bexI, auto) |
617 done |
617 done |
618 |
618 |
619 lemma Infinitesimal_hypreal_of_real_mult: |
619 lemma Infinitesimal_hypreal_of_real_mult: |
620 "x \<in> Infinitesimal ==> x * hypreal_of_real r \<in> Infinitesimal" |
620 fixes x :: "'a::real_normed_algebra star" |
621 by (erule HFinite_hypreal_of_real [THEN [2] Infinitesimal_HFinite_mult]) |
621 shows "x \<in> Infinitesimal ==> x * star_of r \<in> Infinitesimal" |
|
622 by (erule HFinite_star_of [THEN [2] Infinitesimal_HFinite_mult]) |
622 |
623 |
623 lemma Infinitesimal_hypreal_of_real_mult2: |
624 lemma Infinitesimal_hypreal_of_real_mult2: |
624 "x \<in> Infinitesimal ==> hypreal_of_real r * x \<in> Infinitesimal" |
625 fixes x :: "'a::real_normed_algebra star" |
625 by (erule HFinite_hypreal_of_real [THEN [2] Infinitesimal_HFinite_mult2]) |
626 shows "x \<in> Infinitesimal ==> star_of r * x \<in> Infinitesimal" |
|
627 by (erule HFinite_star_of [THEN [2] Infinitesimal_HFinite_mult2]) |
626 |
628 |
627 |
629 |
628 subsection{*The Infinitely Close Relation*} |
630 subsection{*The Infinitely Close Relation*} |
629 |
631 |
630 lemma mem_infmal_iff: "(x \<in> Infinitesimal) = (x @= 0)" |
632 lemma mem_infmal_iff: "(x \<in> Infinitesimal) = (x @= 0)" |
1741 apply (drule_tac [4] SReal_hypreal_of_real [THEN SReal_Infinitesimal_zero], auto) |
1743 apply (drule_tac [4] SReal_hypreal_of_real [THEN SReal_Infinitesimal_zero], auto) |
1742 done |
1744 done |
1743 |
1745 |
1744 (*used once, in Lim/NSDERIV_inverse*) |
1746 (*used once, in Lim/NSDERIV_inverse*) |
1745 lemma Infinitesimal_add_not_zero: |
1747 lemma Infinitesimal_add_not_zero: |
1746 "[| h \<in> Infinitesimal; x \<noteq> 0 |] ==> hypreal_of_real x + h \<noteq> 0" |
1748 "[| h \<in> Infinitesimal; x \<noteq> 0 |] ==> star_of x + h \<noteq> 0" |
1747 apply auto |
1749 apply auto |
1748 apply (subgoal_tac "h = - hypreal_of_real x", auto) |
1750 apply (subgoal_tac "h = - star_of x", auto intro: equals_zero_I [symmetric]) |
1749 done |
1751 done |
1750 |
1752 |
1751 lemma Infinitesimal_square_cancel [simp]: |
1753 lemma Infinitesimal_square_cancel [simp]: |
1752 "(x::hypreal)*x + y*y \<in> Infinitesimal ==> x*x \<in> Infinitesimal" |
1754 "(x::hypreal)*x + y*y \<in> Infinitesimal ==> x*x \<in> Infinitesimal" |
1753 apply (rule Infinitesimal_interval2) |
1755 apply (rule Infinitesimal_interval2) |