equal
deleted
inserted
replaced
341 |
341 |
342 goal Nat.thy "!!i. i<j ==> j<k --> Suc i < k"; |
342 goal Nat.thy "!!i. i<j ==> j<k --> Suc i < k"; |
343 by(nat_ind_tac "k" 1); |
343 by(nat_ind_tac "k" 1); |
344 by(ALLGOALS (asm_simp_tac (!simpset addsimps [less_Suc_eq]))); |
344 by(ALLGOALS (asm_simp_tac (!simpset addsimps [less_Suc_eq]))); |
345 by(fast_tac (HOL_cs addDs [Suc_lessD]) 1); |
345 by(fast_tac (HOL_cs addDs [Suc_lessD]) 1); |
346 bind_thm("less_trans_Suc",result() RS mp); |
346 qed_spec_mp "less_trans_Suc"; |
347 |
347 |
348 (*"Less than" is a linear ordering*) |
348 (*"Less than" is a linear ordering*) |
349 goal Nat.thy "m<n | m=n | n<(m::nat)"; |
349 goal Nat.thy "m<n | m=n | n<(m::nat)"; |
350 by (nat_ind_tac "m" 1); |
350 by (nat_ind_tac "m" 1); |
351 by (nat_ind_tac "n" 1); |
351 by (nat_ind_tac "n" 1); |