equal
deleted
inserted
replaced
1 (* Title: ZF/nat.ML |
1 (* Title: ZF/nat.ML |
2 ID: $Id$ |
2 ID: $Id$ |
3 Author: Lawrence C Paulson, Cambridge University Computer Laboratory |
3 Author: Lawrence C Paulson, Cambridge University Computer Laboratory |
4 Copyright 1992 University of Cambridge |
4 Copyright 1992 University of Cambridge |
5 |
5 |
6 For nat.thy. Natural numbers in Zermelo-Fraenkel Set Theory |
6 Natural numbers in Zermelo-Fraenkel Set Theory |
7 *) |
7 *) |
8 |
8 |
9 open Nat; |
9 open Nat; |
10 |
10 |
11 Goal "bnd_mono(Inf, %X. {0} Un {succ(i). i:X})"; |
11 Goal "bnd_mono(Inf, %X. {0} Un {succ(i). i:X})"; |
191 qed "succ_lt_induct"; |
191 qed "succ_lt_induct"; |
192 |
192 |
193 (** nat_case **) |
193 (** nat_case **) |
194 |
194 |
195 Goalw [nat_case_def] "nat_case(a,b,0) = a"; |
195 Goalw [nat_case_def] "nat_case(a,b,0) = a"; |
196 by (blast_tac (claset() addIs [the_equality]) 1); |
196 by (Blast_tac 1); |
197 qed "nat_case_0"; |
197 qed "nat_case_0"; |
198 |
198 |
199 Goalw [nat_case_def] "nat_case(a,b,succ(m)) = b(m)"; |
199 Goalw [nat_case_def] "nat_case(a,b,succ(m)) = b(m)"; |
200 by (blast_tac (claset() addIs [the_equality]) 1); |
200 by (Blast_tac 1); |
201 qed "nat_case_succ"; |
201 qed "nat_case_succ"; |
202 |
202 |
203 Addsimps [nat_case_0, nat_case_succ]; |
203 Addsimps [nat_case_0, nat_case_succ]; |
204 |
204 |
205 val major::prems = goal Nat.thy |
205 val major::prems = goal Nat.thy |