false: bool true: bool sumor_beq: forall (A : Type) (B : Prop), (A -> A -> bool) -> (B -> B -> bool) -> A + {B} -> A + {B} -> bool sumbool_beq: forall A B : Prop, (A -> A -> bool) -> (B -> B -> bool) -> {A} + {B} -> {A} + {B} -> bool xorb: bool -> bool -> bool sum_beq: forall A B : Type, (A -> A -> bool) -> (B -> B -> bool) -> A + B -> A + B -> bool prod_beq: forall A B : Type, (A -> A -> bool) -> (B -> B -> bool) -> A * B -> A * B -> bool orb: bool -> bool -> bool option_beq: forall A : Type, (A -> A -> bool) -> option A -> option A -> bool negb: bool -> bool nat_beq: nat -> nat -> bool list_beq: forall A : Type, (A -> A -> bool) -> list A -> list A -> bool implb: bool -> bool -> bool comparison_beq: comparison -> comparison -> bool bool_beq: bool -> bool -> bool andb: bool -> bool -> bool Empty_set_beq: Empty_set -> Empty_set -> bool S: nat -> nat O: nat pred: nat -> nat plus: nat -> nat -> nat mult: nat -> nat -> nat minus: nat -> nat -> nat length: forall A : Type, list A -> nat S: nat -> nat pred: nat -> nat plus: nat -> nat -> nat mult: nat -> nat -> nat minus: nat -> nat -> nat mult_n_Sm: forall n m : nat, n * m + n = n * S m le_n: forall n : nat, n <= n eq_refl: forall (A : Type) (x : A), x = x identity_refl: forall (A : Type) (a : A), identity a a iff_refl: forall A : Prop, A <-> A conj: forall A B : Prop, A -> B -> A /\ B pair: forall A B : Type, A -> B -> A * B