Rename the variables in a telescope using the names from a given pattern
|:: [NamedArg Pattern]|
The user patterns.
The type the user patterns eliminate.
|-> TCM Problem|
The initial problem constructed from the user patterns.
Construct an initial
Problem from user patterns.
Try to move patterns from the problem rest into the problem. Possible if type of problem rest has been updated to a function type.