src/CTT/Bool.thy
author urbanc
Tue, 13 Dec 2005 18:11:21 +0100
changeset 18396 b3e7da94b51f
parent 17441 5b5feca0344a
child 19761 5cd82054c2c6
permissions -rw-r--r--
added a fresh_left lemma that contains all instantiation for the various atom-types.

(*  Title:      CTT/bool
    ID:         $Id$
    Author:     Lawrence C Paulson, Cambridge University Computer Laboratory
    Copyright   1991  University of Cambridge
*)

header {* The two-element type (booleans and conditionals) *}

theory Bool
imports CTT
uses "~~/src/Provers/typedsimp.ML" "rew.ML"
begin

consts
  Bool        :: "t"
  true        :: "i"
  false       :: "i"
  cond        :: "[i,i,i]=>i"
defs
  Bool_def:   "Bool == T+T"
  true_def:   "true == inl(tt)"
  false_def:  "false == inr(tt)"
  cond_def:   "cond(a,b,c) == when(a, %u. b, %u. c)"

ML {* use_legacy_bindings (the_context ()) *}

end