src/ZF/Ordinal.thy
changeset 1478 2b8c2a7547ab
parent 1401 0c439768f45c
child 2469 b50b8c0eec01
equal deleted inserted replaced
1477:4c51ab632cda 1478:2b8c2a7547ab
     1 (*  Title: 	ZF/Ordinal.thy
     1 (*  Title:      ZF/Ordinal.thy
     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   1994  University of Cambridge
     4     Copyright   1994  University of Cambridge
     5 
     5 
     6 Ordinals in Zermelo-Fraenkel Set Theory 
     6 Ordinals in Zermelo-Fraenkel Set Theory 
     7 *)
     7 *)
     8 
     8 
     9 Ordinal = WF + Bool + "simpdata" + "equalities" +
     9 Ordinal = WF + Bool + "simpdata" + "equalities" +
    10 consts
    10 consts
    11   Memrel      	:: i=>i
    11   Memrel        :: i=>i
    12   Transset,Ord  :: i=>o
    12   Transset,Ord  :: i=>o
    13   "<"           :: [i,i] => o  (infixl 50) (*less than on ordinals*)
    13   "<"           :: [i,i] => o  (infixl 50) (*less than on ordinals*)
    14   "le"          :: [i,i] => o  (infixl 50) (*less than or equals*)
    14   "le"          :: [i,i] => o  (infixl 50) (*less than or equals*)
    15   Limit         :: i=>o
    15   Limit         :: i=>o
    16 
    16 
    17 translations
    17 translations
    18   "x le y"      == "x < succ(y)"
    18   "x le y"      == "x < succ(y)"
    19 
    19 
    20 defs
    20 defs
    21   Memrel_def  	"Memrel(A)   == {z: A*A . EX x y. z=<x,y> & x:y }"
    21   Memrel_def    "Memrel(A)   == {z: A*A . EX x y. z=<x,y> & x:y }"
    22   Transset_def	"Transset(i) == ALL x:i. x<=i"
    22   Transset_def  "Transset(i) == ALL x:i. x<=i"
    23   Ord_def     	"Ord(i)      == Transset(i) & (ALL x:i. Transset(x))"
    23   Ord_def       "Ord(i)      == Transset(i) & (ALL x:i. Transset(x))"
    24   lt_def        "i<j         == i:j & Ord(j)"
    24   lt_def        "i<j         == i:j & Ord(j)"
    25   Limit_def     "Limit(i)    == Ord(i) & 0<i & (ALL y. y<i --> succ(y)<i)"
    25   Limit_def     "Limit(i)    == Ord(i) & 0<i & (ALL y. y<i --> succ(y)<i)"
    26 
    26 
    27 end
    27 end