PAT_CONV : term -> conv -> conv
> PAT_CONV ``\x. x + a + x`` numLib.REDUCE_CONV
``(1 + 2) + (3 + 4) + (5 + 6)``;
val it : thm = |- 1 + 2 + (3 + 4) + (5 + 6) = 3 + (3 + 4) + 11
> PAT_CONV ``\x. !x1 x2 x3 x4 x5. x`` SWAP_FORALL_CONV
``!a b c d e f g h. something``
<<HOL message: inventing new type variable names: ...>>
val it =
|- (!a b c d e f g h. something) <=>
!a b c d e g f h. something: thm