# HG changeset patch # User nipkow # Date 1396810893 -7200 # Node ID 82ce19612fe8d41eeece750d6880135a7c291142 # Parent 681717041f550de2f71fbaa3d462528537fdc9ab tuned lemmas: more general class diff -r 681717041f55 -r 82ce19612fe8 src/HOL/Fields.thy --- a/src/HOL/Fields.thy Sun Apr 06 17:19:08 2014 +0200 +++ b/src/HOL/Fields.thy Sun Apr 06 21:01:33 2014 +0200 @@ -188,6 +188,22 @@ lemma eq_divide_imp: "c \ 0 \ a * c = b \ a = b / c" by (drule sym) (simp add: divide_inverse mult_assoc) +lemma add_divide_eq_iff [field_simps]: + "z \ 0 \ x + y / z = (x * z + y) / z" + by (simp add: add_divide_distrib nonzero_eq_divide_eq) + +lemma divide_add_eq_iff [field_simps]: + "z \ 0 \ x / z + y = (x + y * z) / z" + by (simp add: add_divide_distrib nonzero_eq_divide_eq) + +lemma diff_divide_eq_iff [field_simps]: + "z \ 0 \ x - y / z = (x * z - y) / z" + by (simp add: diff_divide_distrib nonzero_eq_divide_eq eq_diff_eq) + +lemma divide_diff_eq_iff [field_simps]: + "z \ 0 \ x / z - y = (x - y * z) / z" + by (simp add: field_simps) + end class division_ring_inverse_zero = division_ring + @@ -323,22 +339,6 @@ "\b \ 0; c \ 0\ \ (a * c) / (c * b) = a / b" using nonzero_mult_divide_mult_cancel_right [of b c a] by (simp add: mult_ac) -lemma add_divide_eq_iff [field_simps]: - "z \ 0 \ x + y / z = (z * x + y) / z" - by (simp add: add_divide_distrib) - -lemma divide_add_eq_iff [field_simps]: - "z \ 0 \ x / z + y = (x + z * y) / z" - by (simp add: add_divide_distrib) - -lemma diff_divide_eq_iff [field_simps]: - "z \ 0 \ x - y / z = (z * x - y) / z" - by (simp add: diff_divide_distrib) - -lemma divide_diff_eq_iff [field_simps]: - "z \ 0 \ x / z - y = (x - z * y) / z" - by (simp add: diff_divide_distrib) - lemma diff_frac_eq: "y \ 0 \ z \ 0 \ x / y - w / z = (x * z - w * y) / (y * z)" by (simp add: field_simps) diff -r 681717041f55 -r 82ce19612fe8 src/HOL/Multivariate_Analysis/Derivative.thy --- a/src/HOL/Multivariate_Analysis/Derivative.thy Sun Apr 06 17:19:08 2014 +0200 +++ b/src/HOL/Multivariate_Analysis/Derivative.thy Sun Apr 06 21:01:33 2014 +0200 @@ -127,7 +127,7 @@ "(f has_field_derivative D) (at a within s) \ ((\z. (f z - f a) / (z - a)) ---> D) (at a within s)" proof - have 1: "\w y. ~(w = a) ==> y / (w - a) - D = (y - (w - a)*D)/(w - a)" - by (metis divide_diff_eq_iff eq_iff_diff_eq_0) + by (metis divide_diff_eq_iff eq_iff_diff_eq_0 mult_commute) show ?thesis apply (simp add: has_field_derivative_def has_derivative_within bounded_linear_mult_right) apply (simp add: LIM_zero_iff [where l = D, symmetric])