------------------------------------------------------------------------------ -- The FOTC Booleans type ------------------------------------------------------------------------------ {-# OPTIONS --exact-split #-} {-# OPTIONS --no-sized-types #-} {-# OPTIONS --no-universe-polymorphism #-} {-# OPTIONS --without-K #-} -- N.B. This module is re-exported by FOTC.Data.Bool. module FOTC.Data.Bool.Type where open import FOTC.Base ------------------------------------------------------------------------------ -- The FOTC Booleans type (inductive predicate for total Booleans). data Bool : D → Set where btrue : Bool true bfalse : Bool false {-# ATP axioms btrue bfalse #-} -- The rule of proof by case analysis. Bool-ind : (A : D → Set) → A true → A false → ∀ {b} → Bool b → A b Bool-ind A At Af btrue = At Bool-ind A At Af bfalse = Af