equal
deleted
inserted
replaced
228 |
228 |
229 lemma sqr_conv_mult: "sqr x = x * x" |
229 lemma sqr_conv_mult: "sqr x = x * x" |
230 by (simp add: num_eq_iff nat_of_num_sqr nat_of_num_mult) |
230 by (simp add: num_eq_iff nat_of_num_sqr nat_of_num_mult) |
231 |
231 |
232 |
232 |
233 subsection {* Numary numerals *} |
233 subsection {* Binary numerals *} |
234 |
234 |
235 text {* |
235 text {* |
236 We embed numary representations into a generic algebraic |
236 We embed binary representations into a generic algebraic |
237 structure using @{text numeral}. |
237 structure using @{text numeral}. |
238 *} |
238 *} |
239 |
239 |
240 class numeral = one + semigroup_add |
240 class numeral = one + semigroup_add |
241 begin |
241 begin |
965 |
965 |
966 lemma inverse_numeral_1: |
966 lemma inverse_numeral_1: |
967 "inverse Numeral1 = (Numeral1::'a::division_ring)" |
967 "inverse Numeral1 = (Numeral1::'a::division_ring)" |
968 by simp |
968 by simp |
969 |
969 |
970 text{*Theorem lists for the cancellation simprocs. The use of a numary |
970 text{*Theorem lists for the cancellation simprocs. The use of a binary |
971 numeral for 1 reduces the number of special cases.*} |
971 numeral for 1 reduces the number of special cases.*} |
972 |
972 |
973 lemmas mult_1s = |
973 lemmas mult_1s = |
974 mult_numeral_1 mult_numeral_1_right |
974 mult_numeral_1 mult_numeral_1_right |
975 mult_minus1 mult_minus1_right |
975 mult_minus1 mult_minus1_right |