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