src/HOL/Numeral_Simprocs.thy
changeset 47255 30a1692557b0
parent 47159 978c00c20a59
child 48891 c0eafbd55de3
equal deleted inserted replaced
47244:a7f85074c169 47255:30a1692557b0
    11   "~~/src/Provers/Arith/cancel_numeral_factor.ML"
    11   "~~/src/Provers/Arith/cancel_numeral_factor.ML"
    12   "~~/src/Provers/Arith/extract_common_term.ML"
    12   "~~/src/Provers/Arith/extract_common_term.ML"
    13   ("Tools/numeral_simprocs.ML")
    13   ("Tools/numeral_simprocs.ML")
    14   ("Tools/nat_numeral_simprocs.ML")
    14   ("Tools/nat_numeral_simprocs.ML")
    15 begin
    15 begin
       
    16 
       
    17 lemmas semiring_norm =
       
    18   Let_def arith_simps nat_arith rel_simps
       
    19   if_False if_True
       
    20   add_0 add_Suc add_numeral_left
       
    21   add_neg_numeral_left mult_numeral_left
       
    22   numeral_1_eq_1 [symmetric] Suc_eq_plus1
       
    23   eq_numeral_iff_iszero not_iszero_Numeral1
    16 
    24 
    17 declare split_div [of _ _ "numeral k", arith_split] for k
    25 declare split_div [of _ _ "numeral k", arith_split] for k
    18 declare split_mod [of _ _ "numeral k", arith_split] for k
    26 declare split_mod [of _ _ "numeral k", arith_split] for k
    19 
    27 
    20 text {* For @{text combine_numerals} *}
    28 text {* For @{text combine_numerals} *}