src/HOL/ex/Bit_Operations.thy
changeset 71822 67cc2319104f
parent 71821 541e68d1a964
child 71823 214b48a1937b
--- a/src/HOL/ex/Bit_Operations.thy	Fri May 08 06:26:27 2020 +0000
+++ b/src/HOL/ex/Bit_Operations.thy	Fri May 08 06:26:28 2020 +0000
@@ -46,26 +46,26 @@
   by (simp add: bit_eq_iff bit_and_iff)
 
 lemma one_and_eq [simp]:
-  "1 AND a = of_bool (odd a)"
+  "1 AND a = a mod 2"
   by (simp add: bit_eq_iff bit_and_iff) (auto simp add: bit_1_iff)
 
 lemma and_one_eq [simp]:
-  "a AND 1 = of_bool (odd a)"
+  "a AND 1 = a mod 2"
   using one_and_eq [of a] by (simp add: ac_simps)
 
-lemma one_or_eq [simp]:
+lemma one_or_eq:
   "1 OR a = a + of_bool (even a)"
   by (simp add: bit_eq_iff bit_or_iff add.commute [of _ 1] even_bit_succ_iff) (auto simp add: bit_1_iff)
 
-lemma or_one_eq [simp]:
+lemma or_one_eq:
   "a OR 1 = a + of_bool (even a)"
   using one_or_eq [of a] by (simp add: ac_simps)
 
-lemma one_xor_eq [simp]:
+lemma one_xor_eq:
   "1 XOR a = a + of_bool (even a) - of_bool (odd a)"
   by (simp add: bit_eq_iff bit_xor_iff add.commute [of _ 1] even_bit_succ_iff) (auto simp add: bit_1_iff odd_bit_iff_bit_pred elim: oddE)
 
-lemma xor_one_eq [simp]:
+lemma xor_one_eq:
   "a XOR 1 = a + of_bool (even a) - of_bool (odd a)"
   using one_xor_eq [of a] by (simp add: ac_simps)
 
@@ -533,26 +533,26 @@
   by (simp add: xor_nat_def xor_int_rec [of \<open>int m\<close> \<open>int n\<close>] zdiv_int nat_add_distrib nat_mult_distrib)
 
 lemma Suc_0_and_eq [simp]:
-  \<open>Suc 0 AND n = of_bool (odd n)\<close>
+  \<open>Suc 0 AND n = n mod 2\<close>
   using one_and_eq [of n] by simp
 
 lemma and_Suc_0_eq [simp]:
-  \<open>n AND Suc 0 = of_bool (odd n)\<close>
+  \<open>n AND Suc 0 = n mod 2\<close>
   using and_one_eq [of n] by simp
 
-lemma Suc_0_or_eq [simp]:
+lemma Suc_0_or_eq:
   \<open>Suc 0 OR n = n + of_bool (even n)\<close>
   using one_or_eq [of n] by simp
 
-lemma or_Suc_0_eq [simp]:
+lemma or_Suc_0_eq:
   \<open>n OR Suc 0 = n + of_bool (even n)\<close>
   using or_one_eq [of n] by simp
 
-lemma Suc_0_xor_eq [simp]:
+lemma Suc_0_xor_eq:
   \<open>Suc 0 XOR n = n + of_bool (even n) - of_bool (odd n)\<close>
   using one_xor_eq [of n] by simp
 
-lemma xor_Suc_0_eq [simp]:
+lemma xor_Suc_0_eq:
   \<open>n XOR Suc 0 = n + of_bool (even n) - of_bool (odd n)\<close>
   using xor_one_eq [of n] by simp