IMP_CANON puts a theorem in ‘canonical’ form by removing quantifiers
and breaking apart conjunctions, as well as disjunctions which form the
antecedent of implications. It applies the following transformation rules:
A |- t1 /\ t2 A |- !x. t A |- (t1 /\ t2) ==> t
------------------- ------------ ------------------------
A |- t1 A |- t2 A |- t A |- t1 ==> (t2 ==> t)
A |- (t1 \/ t2) ==> t A |- (?x. t1) ==> t2
------------------------------- ----------------------
A |- t1 ==> t A |- t2 ==> t A |- t1[x'/x] ==> t2