Is it possible to implement the Bool
type, including its constructors and dependent eliminator:
Bool : Set
true : Bool
false : Bool
bool-elim : ∀ (P : Bool -> Set) -> P true -> P false -> (b : Bool) -> P b
Using only Sigma and dependent functions? I.e., without using native datatypes?