author | paulson |
Fri, 19 Sep 1997 16:12:21 +0200 | |
changeset 3685 | 5b8c0c8f576e |
parent 3413 | c1f63cc3a768 |
child 5101 | 52e7c75acfe6 |
permissions | -rw-r--r-- |
1475 | 1 |
(* Title: HOL/Finite.thy |
923 | 2 |
ID: $Id$ |
1531 | 3 |
Author: Lawrence C Paulson & Tobias Nipkow |
4 |
Copyright 1995 University of Cambridge & TU Muenchen |
|
923 | 5 |
|
1531 | 6 |
Finite sets and their cardinality |
923 | 7 |
*) |
8 |
||
3389
3150eba724a1
New theorem about the cardinality of the powerset (uses exponentiation)
paulson
parents:
3367
diff
changeset
|
9 |
Finite = Divides + Power + |
1531 | 10 |
|
3413
c1f63cc3a768
Finite.ML Finite.thy: Replaced `finite subset of' by mere `finite'.
nipkow
parents:
3389
diff
changeset
|
11 |
consts Finites :: 'a set set |
923 | 12 |
|
3413
c1f63cc3a768
Finite.ML Finite.thy: Replaced `finite subset of' by mere `finite'.
nipkow
parents:
3389
diff
changeset
|
13 |
inductive "Finites" |
923 | 14 |
intrs |
3413
c1f63cc3a768
Finite.ML Finite.thy: Replaced `finite subset of' by mere `finite'.
nipkow
parents:
3389
diff
changeset
|
15 |
emptyI "{} : Finites" |
c1f63cc3a768
Finite.ML Finite.thy: Replaced `finite subset of' by mere `finite'.
nipkow
parents:
3389
diff
changeset
|
16 |
insertI "A : Finites ==> insert a A : Finites" |
c1f63cc3a768
Finite.ML Finite.thy: Replaced `finite subset of' by mere `finite'.
nipkow
parents:
3389
diff
changeset
|
17 |
|
c1f63cc3a768
Finite.ML Finite.thy: Replaced `finite subset of' by mere `finite'.
nipkow
parents:
3389
diff
changeset
|
18 |
syntax finite :: 'a set => bool |
c1f63cc3a768
Finite.ML Finite.thy: Replaced `finite subset of' by mere `finite'.
nipkow
parents:
3389
diff
changeset
|
19 |
translations "finite A" == "A : Finites" |
923 | 20 |
|
1556 | 21 |
constdefs |
22 |
card :: 'a set => nat |
|
23 |
"card A == LEAST n. ? f. A = {f i |i. i<n}" |
|
1531 | 24 |
|
923 | 25 |
end |