[assert] true [assert] not false [assert] and true true [assert] or true false [assert] xor true false [assert] eq.{1} Prop true true [assert] not (eq.{1} Prop true false) [assert] not (and (and (not (eq.{1} Prop true false)) (not (eq.{1} Prop true true))) (not (eq.{1} Prop false true))) [assert] not (and (and (and (and (and (not (eq.{1} Prop true false)) (not (eq.{1} Prop true true))) (not (eq.{1} Prop true false))) (not (eq.{1} Prop false true))) (not (eq.{1} Prop false false))) (not (eq.{1} Prop true false))) [assert] ite.{1} true (classical.prop_decidable true) Prop true true [declare_sort] X : Type [declare_const] x1 : X [declare_const] x2 : X [declare_const] x3 : X [assert] eq.{1} X (ite.{1} true (classical.prop_decidable true) X x1 x2) (ite.{1} false (classical.prop_decidable false) X x2 x1)