equal
deleted
inserted
replaced
111 a problem of the form @{prop"2*t - t < t + (1::int)"} and we are back in the |
111 a problem of the form @{prop"2*t - t < t + (1::int)"} and we are back in the |
112 realm of linear arithmetic. |
112 realm of linear arithmetic. |
113 |
113 |
114 Because @{thm[source]algebra_simps} multiplies out, terms can explode. |
114 Because @{thm[source]algebra_simps} multiplies out, terms can explode. |
115 If one merely wants to bring sums or products into a canonical order |
115 If one merely wants to bring sums or products into a canonical order |
116 it suffices to rewrite with @{thm [source] add_ac} or @{thm [source] mult_ac}: *} |
116 it suffices to rewrite with @{thm [source] ac_simps}: *} |
117 |
117 |
118 lemma fixes f :: "int \<Rightarrow> int" shows "f(x*y*z) - f(z*x*y) = 0" |
118 lemma fixes f :: "int \<Rightarrow> int" shows "f(x*y*z) - f(z*x*y) = 0" |
119 by(simp add: mult_ac) |
119 by(simp add: ac_simps) |
120 |
120 |
121 text{* The lemmas @{thm[source]algebra_simps} take care of addition, subtraction |
121 text{* The lemmas @{thm[source]algebra_simps} take care of addition, subtraction |
122 and multiplication (algebraic structures up to rings) but ignore division (fields). |
122 and multiplication (algebraic structures up to rings) but ignore division (fields). |
123 The lemmas @{thm[source]field_simps} also deal with division: |
123 The lemmas @{thm[source]field_simps} also deal with division: |
124 *} |
124 *} |