Ffamilytype family (&&) (a :: Bool) (b :: Bool) :: Bool wherePeek#Type-level "and"Equations(&&) 'False a = 'False(&&) 'True a = a(&&) a 'False = 'False(&&) a 'True = a(&&) a a = a
Ffamilytype family (||) (a :: Bool) (b :: Bool) :: Bool wherePeek#Type-level "or"Equations(||) 'False a = a(||) 'True a = 'True(||) a 'False = a(||) a 'True = 'True(||) a a = a
Ffamilytype family If (cond :: Bool) (tru :: k) (fls :: k) :: k wherePeek#Type-level If. If True a b ==> a; If False a b ==> bEquationsIf 'True tru fls = truIf 'False tru fls = fls
Ffamilytype family Not (a :: Bool) :: Bool wherePeek#Type-level "not". An injective type family since 4.10.0.0.EquationsNot 'False = 'TrueNot 'True = 'False