src/HOL/NSA/HTranscendental.thy
changeset 61970 6226261144d7
parent 61945 1135b8de26c3
child 61971 720fa884656e
equal deleted inserted replaced
61969:e01015e49041 61970:6226261144d7
   567 apply (subst starfun_inverse)
   567 apply (subst starfun_inverse)
   568 apply (erule starfunNat_inverse_real_of_nat_Infinitesimal)
   568 apply (erule starfunNat_inverse_real_of_nat_Infinitesimal)
   569 apply simp
   569 apply simp
   570 done
   570 done
   571 
   571 
   572 lemma NSLIMSEQ_sin_pi: "(%n. real n * sin (pi / real n)) ----NS> pi"
   572 lemma NSLIMSEQ_sin_pi: "(%n. real n * sin (pi / real n)) \<longlonglongrightarrow>\<^sub>N\<^sub>S pi"
   573 apply (auto simp add: NSLIMSEQ_def starfun_mult [symmetric] starfunNat_real_of_nat)
   573 apply (auto simp add: NSLIMSEQ_def starfun_mult [symmetric] starfunNat_real_of_nat)
   574 apply (rule_tac f1 = sin in starfun_o2 [THEN subst])
   574 apply (rule_tac f1 = sin in starfun_o2 [THEN subst])
   575 apply (auto simp add: starfun_mult [symmetric] starfunNat_real_of_nat divide_inverse)
   575 apply (auto simp add: starfun_mult [symmetric] starfunNat_real_of_nat divide_inverse)
   576 apply (rule_tac f1 = inverse in starfun_o2 [THEN subst])
   576 apply (rule_tac f1 = inverse in starfun_o2 [THEN subst])
   577 apply (auto dest: STAR_sin_pi_divide_HNatInfinite_approx_pi 
   577 apply (auto dest: STAR_sin_pi_divide_HNatInfinite_approx_pi 
   578             simp add: starfunNat_real_of_nat mult.commute divide_inverse)
   578             simp add: starfunNat_real_of_nat mult.commute divide_inverse)
   579 done
   579 done
   580 
   580 
   581 lemma NSLIMSEQ_cos_one: "(%n. cos (pi / real n))----NS> 1"
   581 lemma NSLIMSEQ_cos_one: "(%n. cos (pi / real n))\<longlonglongrightarrow>\<^sub>N\<^sub>S 1"
   582 apply (simp add: NSLIMSEQ_def, auto)
   582 apply (simp add: NSLIMSEQ_def, auto)
   583 apply (rule_tac f1 = cos in starfun_o2 [THEN subst])
   583 apply (rule_tac f1 = cos in starfun_o2 [THEN subst])
   584 apply (rule STAR_cos_Infinitesimal)
   584 apply (rule STAR_cos_Infinitesimal)
   585 apply (auto intro!: Infinitesimal_HFinite_mult2 
   585 apply (auto intro!: Infinitesimal_HFinite_mult2 
   586             simp add: starfun_mult [symmetric] divide_inverse
   586             simp add: starfun_mult [symmetric] divide_inverse
   587                       starfun_inverse [symmetric] starfunNat_real_of_nat)
   587                       starfun_inverse [symmetric] starfunNat_real_of_nat)
   588 done
   588 done
   589 
   589 
   590 lemma NSLIMSEQ_sin_cos_pi:
   590 lemma NSLIMSEQ_sin_cos_pi:
   591      "(%n. real n * sin (pi / real n) * cos (pi / real n)) ----NS> pi"
   591      "(%n. real n * sin (pi / real n) * cos (pi / real n)) \<longlonglongrightarrow>\<^sub>N\<^sub>S pi"
   592 by (insert NSLIMSEQ_mult [OF NSLIMSEQ_sin_pi NSLIMSEQ_cos_one], simp)
   592 by (insert NSLIMSEQ_mult [OF NSLIMSEQ_sin_pi NSLIMSEQ_cos_one], simp)
   593 
   593 
   594 
   594 
   595 text{*A familiar approximation to @{term "cos x"} when @{term x} is small*}
   595 text{*A familiar approximation to @{term "cos x"} when @{term x} is small*}
   596 
   596