12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 |
- module PreludeBool where
- import AlonzoPrelude
- open AlonzoPrelude
- -- import Logic.Base
- infixr 20 _||_
- infixr 30 _&&_
- data Bool : Set where
- false : Bool
- true : Bool
- {-# BUILTIN BOOL Bool #-}
- {-# BUILTIN TRUE true #-}
- {-# BUILTIN FALSE false #-}
- _&&_ : Bool -> Bool -> Bool
- true && x = x
- false && _ = false
- _||_ : Bool -> Bool -> Bool
- true || _ = true
- false || x = x
- not : Bool -> Bool
- not true = false
- not false = true
- -- open Logic.Base
- IsTrue : Bool -> Set
- IsTrue true = True
- IsTrue false = False
- IsFalse : Bool -> Set
- IsFalse x = IsTrue (not x)
- if_then_else_ : {A : Set} -> Bool -> A -> A -> A
- if true then x else y = x
- if false then x else y = y
- if'_then_else_ : {A : Set} -> (x : Bool) -> (IsTrue x -> A) -> (IsFalse x -> A) -> A
- if' true then f else g = f tt
- if' false then f else g = g tt
|