src/CTT/Bool.thy
author clasohm
Mon Feb 05 14:44:09 1996 +0100 (1996-02-05)
changeset 1474 3f7d67927fe2
parent 0 a5a9c433f639
child 3837 d7f033c74b38
permissions -rw-r--r--
expanded tabs
clasohm@1474
     1
(*  Title:      CTT/bool
clasohm@0
     2
    ID:         $Id$
clasohm@1474
     3
    Author:     Lawrence C Paulson, Cambridge University Computer Laboratory
clasohm@0
     4
    Copyright   1991  University of Cambridge
clasohm@0
     5
clasohm@0
     6
The two-element type (booleans and conditionals)
clasohm@0
     7
*)
clasohm@0
     8
clasohm@0
     9
Bool = CTT +
clasohm@0
    10
clasohm@1474
    11
consts Bool             :: "t"
clasohm@1474
    12
       true,false       :: "i"
clasohm@1474
    13
       cond             :: "[i,i,i]=>i"
clasohm@0
    14
rules
clasohm@1474
    15
  Bool_def      "Bool == T+T"
clasohm@1474
    16
  true_def      "true == inl(tt)"
clasohm@1474
    17
  false_def     "false == inr(tt)"
clasohm@1474
    18
  cond_def      "cond(a,b,c) == when(a, %u.b, %u.c)"
clasohm@0
    19
end