■
data Bool : Set0 where true : Bool false : Bool data BoolHold : Bool -> Set0 where boolHold : (b1 : Bool) -> BoolHold b1 not : Bool -> Bool not b2 with b2 ... | true = false ... | false = true g : (b : Bool) -> BoolHold (not b) g b with b g b | true with not b g b | true | true = boolHold false -- 凄いね!! g b | true | false = boolHold false g b | false with not b g b | false | true = boolHold true g b | false | false = boolHold true -- 凄いね!!
凄いね!!