semiring_numeral_0_eq_0, semiring_numeral_1_eq_1 now [simp], superseeding corresponding simp rules on type nat; attribute code_abbrev superseedes code_unfold_post
authorhaftmann
Thu, 29 Dec 2011 10:47:55 +0100
changeset 46027 ff3c4f2bee01
parent 46026 83caa4f4bd56
child 46028 9f113cdf3d66
semiring_numeral_0_eq_0, semiring_numeral_1_eq_1 now [simp], superseeding corresponding simp rules on type nat; attribute code_abbrev superseedes code_unfold_post
src/HOL/Int.thy
--- a/src/HOL/Int.thy	Thu Dec 29 10:47:54 2011 +0100
+++ b/src/HOL/Int.thy	Thu Dec 29 10:47:55 2011 +0100
@@ -1009,21 +1009,21 @@
   Converting numerals 0 and 1 to their abstract versions.
 *}
 
-lemma semiring_numeral_0_eq_0:
+lemma semiring_numeral_0_eq_0 [simp, code_post]:
   "Numeral0 = (0::'a::number_semiring)"
   using number_of_int [where 'a='a and n=0]
   unfolding numeral_simps by simp
 
-lemma semiring_numeral_1_eq_1:
+lemma semiring_numeral_1_eq_1 [simp, code_post]:
   "Numeral1 = (1::'a::number_semiring)"
   using number_of_int [where 'a='a and n=1]
   unfolding numeral_simps by simp
 
-lemma numeral_0_eq_0 [simp, code_post]:
+lemma numeral_0_eq_0: (* FIXME delete candidate *)
   "Numeral0 = (0::'a::number_ring)"
   by (rule semiring_numeral_0_eq_0)
 
-lemma numeral_1_eq_1 [simp, code_post]:
+lemma numeral_1_eq_1: (* FIXME delete candidate *)
   "Numeral1 = (1::'a::number_ring)"
   by (rule semiring_numeral_1_eq_1)
 
@@ -2296,11 +2296,11 @@
 
 hide_const (open) nat_aux
 
-lemma zero_is_num_zero [code, code_unfold_post]:
+lemma zero_is_num_zero [code, code_unfold]:
   "(0\<Colon>int) = Numeral0" 
   by simp
 
-lemma one_is_num_one [code, code_unfold_post]:
+lemma one_is_num_one [code, code_unfold]:
   "(1\<Colon>int) = Numeral1" 
   by simp