416 |
415 |
417 in |
416 in |
418 |
417 |
419 val init_lin_arith_data = |
418 val init_lin_arith_data = |
420 Fast_Arith.setup @ |
419 Fast_Arith.setup @ |
421 [Fast_Arith.map_data (fn {add_mono_thms, mult_mono_thms, inj_thms, lessD, simpset = _} => |
420 [Fast_Arith.map_data (fn {add_mono_thms, mult_mono_thms, inj_thms, lessD, ...} => |
422 {add_mono_thms = add_mono_thms @ |
421 {add_mono_thms = add_mono_thms @ |
423 add_mono_thms_ordered_semiring @ add_mono_thms_ordered_field, |
422 add_mono_thms_ordered_semiring @ add_mono_thms_ordered_field, |
424 mult_mono_thms = mult_mono_thms, |
423 mult_mono_thms = mult_mono_thms, |
425 inj_thms = inj_thms, |
424 inj_thms = inj_thms, |
426 lessD = lessD @ [Suc_leI], |
425 lessD = lessD @ [Suc_leI], |
|
426 neqE = [linorder_neqE_nat], |
427 simpset = HOL_basic_ss addsimps add_rules |
427 simpset = HOL_basic_ss addsimps add_rules |
428 addsimprocs [ab_group_add_cancel.sum_conv, |
428 addsimprocs [ab_group_add_cancel.sum_conv, |
429 ab_group_add_cancel.rel_conv] |
429 ab_group_add_cancel.rel_conv] |
430 (*abel_cancel helps it work in abstract algebraic domains*) |
430 (*abel_cancel helps it work in abstract algebraic domains*) |
431 addsimprocs nat_cancel_sums_add}), |
431 addsimprocs nat_cancel_sums_add}), |