src/ZF/CardinalArith.thy
author lcp
Thu, 23 Jun 1994 17:38:12 +0200
changeset 437 435875e4b21d
child 467 92868dab2939
permissions -rw-r--r--
modifications for cardinal arithmetic
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
437
435875e4b21d modifications for cardinal arithmetic
lcp
parents:
diff changeset
     1
(*  Title: 	ZF/CardinalArith.thy
435875e4b21d modifications for cardinal arithmetic
lcp
parents:
diff changeset
     2
    ID:         $Id$
435875e4b21d modifications for cardinal arithmetic
lcp
parents:
diff changeset
     3
    Author: 	Lawrence C Paulson, Cambridge University Computer Laboratory
435875e4b21d modifications for cardinal arithmetic
lcp
parents:
diff changeset
     4
    Copyright   1994  University of Cambridge
435875e4b21d modifications for cardinal arithmetic
lcp
parents:
diff changeset
     5
435875e4b21d modifications for cardinal arithmetic
lcp
parents:
diff changeset
     6
Cardinal Arithmetic
435875e4b21d modifications for cardinal arithmetic
lcp
parents:
diff changeset
     7
*)
435875e4b21d modifications for cardinal arithmetic
lcp
parents:
diff changeset
     8
435875e4b21d modifications for cardinal arithmetic
lcp
parents:
diff changeset
     9
CardinalArith = Cardinal + OrderArith + Arith + 
435875e4b21d modifications for cardinal arithmetic
lcp
parents:
diff changeset
    10
consts
435875e4b21d modifications for cardinal arithmetic
lcp
parents:
diff changeset
    11
  InfCard     :: "i=>o"
435875e4b21d modifications for cardinal arithmetic
lcp
parents:
diff changeset
    12
  "|*|"       :: "[i,i]=>i"       (infixl 70)
435875e4b21d modifications for cardinal arithmetic
lcp
parents:
diff changeset
    13
  "|+|"       :: "[i,i]=>i"       (infixl 65)
435875e4b21d modifications for cardinal arithmetic
lcp
parents:
diff changeset
    14
  csquare_rel :: "i=>i"
435875e4b21d modifications for cardinal arithmetic
lcp
parents:
diff changeset
    15
435875e4b21d modifications for cardinal arithmetic
lcp
parents:
diff changeset
    16
rules
435875e4b21d modifications for cardinal arithmetic
lcp
parents:
diff changeset
    17
435875e4b21d modifications for cardinal arithmetic
lcp
parents:
diff changeset
    18
  InfCard_def  "InfCard(i) == Card(i) & nat le i"
435875e4b21d modifications for cardinal arithmetic
lcp
parents:
diff changeset
    19
435875e4b21d modifications for cardinal arithmetic
lcp
parents:
diff changeset
    20
  cadd_def     "i |+| j == | i+j |"
435875e4b21d modifications for cardinal arithmetic
lcp
parents:
diff changeset
    21
435875e4b21d modifications for cardinal arithmetic
lcp
parents:
diff changeset
    22
  cmult_def    "i |*| j == | i*j |"
435875e4b21d modifications for cardinal arithmetic
lcp
parents:
diff changeset
    23
435875e4b21d modifications for cardinal arithmetic
lcp
parents:
diff changeset
    24
  csquare_rel_def
435875e4b21d modifications for cardinal arithmetic
lcp
parents:
diff changeset
    25
  "csquare_rel(k) == rvimage(k*k, lam z:k*k. split(%x y. <x Un y, <x,y>>, z), \
435875e4b21d modifications for cardinal arithmetic
lcp
parents:
diff changeset
    26
\                            rmult(k,Memrel(k), k*k, 	\
435875e4b21d modifications for cardinal arithmetic
lcp
parents:
diff changeset
    27
\                                  rmult(k,Memrel(k), k,Memrel(k))))"
435875e4b21d modifications for cardinal arithmetic
lcp
parents:
diff changeset
    28
435875e4b21d modifications for cardinal arithmetic
lcp
parents:
diff changeset
    29
end