1104 f(Suc(Suc n)) u *((z-u) *(z-u) ^ n) / (fact(Suc n)) - |
1104 f(Suc(Suc n)) u *((z-u) *(z-u) ^ n) / (fact(Suc n)) - |
1105 f(Suc n) u *((1 + of_nat n) *(z-u) ^ n) / (fact(Suc n))) = |
1105 f(Suc n) u *((1 + of_nat n) *(z-u) ^ n) / (fact(Suc n))) = |
1106 ((fact(Suc n)) *(f(Suc n) u *(z-u) ^ n)) / (fact n) + |
1106 ((fact(Suc n)) *(f(Suc n) u *(z-u) ^ n)) / (fact n) + |
1107 ((fact(Suc n)) *(f(Suc(Suc n)) u *((z-u) *(z-u) ^ n)) / (fact(Suc n))) - |
1107 ((fact(Suc n)) *(f(Suc(Suc n)) u *((z-u) *(z-u) ^ n)) / (fact(Suc n))) - |
1108 ((fact(Suc n)) *(f(Suc n) u *(of_nat(Suc n) *(z-u) ^ n))) / (fact(Suc n))" |
1108 ((fact(Suc n)) *(f(Suc n) u *(of_nat(Suc n) *(z-u) ^ n))) / (fact(Suc n))" |
1109 by (simp add: algebra_simps del: fact.simps) |
1109 by (simp add: algebra_simps del: fact_Suc) |
1110 also have "... = ((fact (Suc n)) * (f (Suc n) u * (z-u) ^ n)) / (fact n) + |
1110 also have "... = ((fact (Suc n)) * (f (Suc n) u * (z-u) ^ n)) / (fact n) + |
1111 (f (Suc (Suc n)) u * ((z-u) * (z-u) ^ n)) - |
1111 (f (Suc (Suc n)) u * ((z-u) * (z-u) ^ n)) - |
1112 (f (Suc n) u * ((1 + of_nat n) * (z-u) ^ n))" |
1112 (f (Suc n) u * ((1 + of_nat n) * (z-u) ^ n))" |
1113 by (simp del: fact.simps) |
1113 by (simp del: fact_Suc) |
1114 also have "... = (of_nat (Suc n) * (f (Suc n) u * (z-u) ^ n)) + |
1114 also have "... = (of_nat (Suc n) * (f (Suc n) u * (z-u) ^ n)) + |
1115 (f (Suc (Suc n)) u * ((z-u) * (z-u) ^ n)) - |
1115 (f (Suc (Suc n)) u * ((z-u) * (z-u) ^ n)) - |
1116 (f (Suc n) u * ((1 + of_nat n) * (z-u) ^ n))" |
1116 (f (Suc n) u * ((1 + of_nat n) * (z-u) ^ n))" |
1117 by (simp only: fact.simps of_nat_mult ac_simps) simp |
1117 by (simp only: fact_Suc of_nat_mult ac_simps) simp |
1118 also have "... = f (Suc (Suc n)) u * ((z-u) * (z-u) ^ n)" |
1118 also have "... = f (Suc (Suc n)) u * ((z-u) * (z-u) ^ n)" |
1119 by (simp add: algebra_simps) |
1119 by (simp add: algebra_simps) |
1120 finally show ?thesis |
1120 finally show ?thesis |
1121 by (simp add: mult_left_cancel [where c = "(fact (Suc n))", THEN iffD1] del: fact.simps) |
1121 by (simp add: mult_left_cancel [where c = "(fact (Suc n))", THEN iffD1] del: fact_Suc) |
1122 qed |
1122 qed |
1123 finally show ?case . |
1123 finally show ?case . |
1124 qed |
1124 qed |
1125 then have "((\<lambda>v. (\<Sum>i\<le>n. f i v * (z - v)^i / (fact i))) |
1125 then have "((\<lambda>v. (\<Sum>i\<le>n. f i v * (z - v)^i / (fact i))) |
1126 has_field_derivative f (Suc n) u * (z-u) ^ n / (fact n)) |
1126 has_field_derivative f (Suc n) u * (z-u) ^ n / (fact n)) |