equal
deleted
inserted
replaced
206 power_one_right mult_minus_left mult_minus_right minus_minus) |
206 power_one_right mult_minus_left mult_minus_right minus_minus) |
207 |
207 |
208 lemma power_minus_Bit1: |
208 lemma power_minus_Bit1: |
209 "(- x) ^ numeral (Num.Bit1 k) = - (x ^ numeral (Num.Bit1 k))" |
209 "(- x) ^ numeral (Num.Bit1 k) = - (x ^ numeral (Num.Bit1 k))" |
210 by (simp only: eval_nat_numeral(3) power_Suc power_minus_Bit0 mult_minus_left) |
210 by (simp only: eval_nat_numeral(3) power_Suc power_minus_Bit0 mult_minus_left) |
211 |
|
212 lemma power_neg_numeral_Bit0 [simp]: |
|
213 "neg_numeral k ^ numeral (Num.Bit0 l) = numeral (Num.pow k (Num.Bit0 l))" |
|
214 by (simp only: neg_numeral_def power_minus_Bit0 power_numeral) |
|
215 |
|
216 lemma power_neg_numeral_Bit1 [simp]: |
|
217 "neg_numeral k ^ numeral (Num.Bit1 l) = neg_numeral (Num.pow k (Num.Bit1 l))" |
|
218 by (simp only: neg_numeral_def power_minus_Bit1 power_numeral pow.simps) |
|
219 |
211 |
220 lemma power2_minus [simp]: |
212 lemma power2_minus [simp]: |
221 "(- a)\<^sup>2 = a\<^sup>2" |
213 "(- a)\<^sup>2 = a\<^sup>2" |
222 by (rule power_minus_Bit0) |
214 by (rule power_minus_Bit0) |
223 |
215 |