To define the product of two predicates, we extend the language with one binary function symbol [ x, y ] . Then the product of two unary predicates is defined by the following predicate A × B
intro.Product added as introduction rule (abbrev: i
, options: -i -c
)
elim.Product added as elimination rule (abbrev: r
, options: -i
)
injective_left.Product added as elimination rule (abbrev: Product
, options: -i -n
)