diff -r 000000000000 -r a5a9c433f639 src/FOL/ex/nat2.thy --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/FOL/ex/nat2.thy Thu Sep 16 12:20:38 1993 +0200 @@ -0,0 +1,39 @@ +(* Title: FOL/ex/nat2.thy + ID: $Id$ + Author: Tobias Nipkow + Copyright 1991 University of Cambridge + +Theory for examples of simplification and induction on the natural numbers +*) + +Nat2 = FOL + + +types nat 0 +arities nat :: term + +consts succ,pred :: "nat => nat" + "0" :: "nat" ("0") + "+" :: "[nat,nat] => nat" (infixr 90) + "<","<=" :: "[nat,nat] => o" (infixr 70) + +rules + pred_0 "pred(0) = 0" + pred_succ "pred(succ(m)) = m" + + plus_0 "0+n = n" + plus_succ "succ(m)+n = succ(m+n)" + + nat_distinct1 "~ 0=succ(n)" + nat_distinct2 "~ succ(m)=0" + succ_inject "succ(m)=succ(n) <-> m=n" + + leq_0 "0 <= n" + leq_succ_succ "succ(m)<=succ(n) <-> m<=n" + leq_succ_0 "~ succ(m) <= 0" + + lt_0_succ "0 < succ(n)" + lt_succ_succ "succ(m) mP(succ(n)) |] ==> All(P)" +end