separate neg_simps from rel_simps
authorhuffman
Tue, 09 Dec 2008 20:36:20 -0800
changeset 290398b9207f82a78
parent 29038 90f42c138585
child 29040 286c669d3a7a
separate neg_simps from rel_simps
src/HOL/Groebner_Basis.thy
src/HOL/Int.thy
src/HOL/NatBin.thy
src/HOL/Tools/nat_simprocs.ML
     1.1 --- a/src/HOL/Groebner_Basis.thy	Tue Dec 09 20:35:31 2008 -0800
     1.2 +++ b/src/HOL/Groebner_Basis.thy	Tue Dec 09 20:36:20 2008 -0800
     1.3 @@ -178,7 +178,8 @@
     1.4  lemma not_iszero_Numeral1: "\<not> iszero (Numeral1::'a::number_ring)"
     1.5    by (simp add: numeral_1_eq_1)
     1.6  
     1.7 -lemmas comp_arith = Let_def arith_simps nat_arith rel_simps if_False
     1.8 +lemmas comp_arith =
     1.9 +  Let_def arith_simps nat_arith rel_simps neg_simps if_False
    1.10    if_True add_0 add_Suc add_number_of_left mult_number_of_left
    1.11    numeral_1_eq_1[symmetric] Suc_eq_add_numeral_1
    1.12    numeral_0_eq_0[symmetric] numerals[symmetric]
     2.1 --- a/src/HOL/Int.thy	Tue Dec 09 20:35:31 2008 -0800
     2.2 +++ b/src/HOL/Int.thy	Tue Dec 09 20:36:20 2008 -0800
     2.3 @@ -1254,7 +1254,7 @@
     2.4    by (simp add: neg_def number_of_eq numeral_simps)
     2.5  qed
     2.6  
     2.7 -lemmas neg_simps =
     2.8 +lemmas neg_simps [simp] =
     2.9    not_neg_0 not_neg_1
    2.10    not_neg_number_of_Pls neg_number_of_Min
    2.11    neg_number_of_Bit0 neg_number_of_Bit1
    2.12 @@ -1325,7 +1325,7 @@
    2.13    less_number_of less_bin_simps
    2.14    le_number_of le_bin_simps
    2.15    eq_number_of_eq eq_bin_simps
    2.16 -  iszero_simps neg_simps
    2.17 +  iszero_simps
    2.18  
    2.19  
    2.20  subsubsection {* Simplification of arithmetic when nested to the right. *}
     3.1 --- a/src/HOL/NatBin.thy	Tue Dec 09 20:35:31 2008 -0800
     3.2 +++ b/src/HOL/NatBin.thy	Tue Dec 09 20:36:20 2008 -0800
     3.3 @@ -627,9 +627,8 @@
     3.4       {add_mono_thms = add_mono_thms, mult_mono_thms = mult_mono_thms,
     3.5        inj_thms = inj_thms,
     3.6        lessD = lessD, neqE = neqE,
     3.7 -      simpset = simpset addsimps [Suc_nat_number_of, int_nat_number_of,
     3.8 -        @{thm not_neg_number_of_Pls}, @{thm neg_number_of_Min},
     3.9 -        @{thm neg_number_of_Bit0}, @{thm neg_number_of_Bit1}]})
    3.10 +      simpset = simpset addsimps @{thms neg_simps} @
    3.11 +        [@{thm Suc_nat_number_of}, @{thm int_nat_number_of}]})
    3.12  *}
    3.13  
    3.14  declaration {* K nat_bin_arith_setup *}
     4.1 --- a/src/HOL/Tools/nat_simprocs.ML	Tue Dec 09 20:35:31 2008 -0800
     4.2 +++ b/src/HOL/Tools/nat_simprocs.ML	Tue Dec 09 20:36:20 2008 -0800
     4.3 @@ -53,7 +53,7 @@
     4.4        @{thm mult_nat_number_of}, @{thm nat_number_of_mult_left}, 
     4.5        @{thm less_nat_number_of}, 
     4.6        @{thm Let_number_of}, @{thm nat_number_of}] @
     4.7 -     @{thms arith_simps} @ @{thms rel_simps};
     4.8 +     @{thms arith_simps} @ @{thms rel_simps} @ @{thms neg_simps};
     4.9  
    4.10  fun prep_simproc (name, pats, proc) =
    4.11    Simplifier.simproc (the_context ()) name pats proc;