equal
deleted
inserted
replaced
144 val dest_sum = dest_sum |
144 val dest_sum = dest_sum |
145 val mk_coeff = mk_coeff |
145 val mk_coeff = mk_coeff |
146 val dest_coeff = dest_coeff |
146 val dest_coeff = dest_coeff |
147 val find_first_coeff = find_first_coeff [] |
147 val find_first_coeff = find_first_coeff [] |
148 val norm_tac_ss1 = ZF_ss addsimps add_0s@add_succs@mult_1s@add_ac |
148 val norm_tac_ss1 = ZF_ss addsimps add_0s@add_succs@mult_1s@add_ac |
149 val norm_tac_ss2 = ZF_ss addsimps add_ac@mult_ac@tc_rules@natifys |
149 val norm_tac_ss2 = ZF_ss addsimps add_0s@mult_1s@ |
|
150 add_ac@mult_ac@tc_rules@natifys |
150 val norm_tac = ALLGOALS (asm_simp_tac norm_tac_ss1) |
151 val norm_tac = ALLGOALS (asm_simp_tac norm_tac_ss1) |
151 THEN ALLGOALS (asm_simp_tac norm_tac_ss2) |
152 THEN ALLGOALS (asm_simp_tac norm_tac_ss2) |
152 val numeral_simp_tac_ss = ZF_ss addsimps add_0s@tc_rules@natifys |
153 val numeral_simp_tac_ss = ZF_ss addsimps add_0s@tc_rules@natifys |
153 val numeral_simp_tac = ALLGOALS (asm_simp_tac numeral_simp_tac_ss) |
154 val numeral_simp_tac = ALLGOALS (asm_simp_tac numeral_simp_tac_ss) |
154 val simplify_meta_eq = simplify_meta_eq final_rules |
155 val simplify_meta_eq = simplify_meta_eq final_rules |
252 (*use of typing information*) |
253 (*use of typing information*) |
253 test "x : nat ==> x #+ y = x"; |
254 test "x : nat ==> x #+ y = x"; |
254 test "x : nat --> x #+ y = x"; |
255 test "x : nat --> x #+ y = x"; |
255 test "x : nat ==> x #+ y < x"; |
256 test "x : nat ==> x #+ y < x"; |
256 test "x : nat ==> x < y#+x"; |
257 test "x : nat ==> x < y#+x"; |
|
258 test "x : nat ==> x le succ(x)"; |
257 |
259 |
258 (*fails: no typing information isn't visible*) |
260 (*fails: no typing information isn't visible*) |
259 test "x #+ y = x"; |
261 test "x #+ y = x"; |
260 |
262 |
261 test "x #+ y < x #+ z"; |
263 test "x #+ y < x #+ z"; |