Abstracts free variables xs[start...*] in expression e, converting them to de Bruijn indices.
Assumptions:
The local context of the metavariables occurring in
edo not include the free variables being abstracted. This invariant holds when abstracting over binders during pattern matching/unification: metavariables in the pattern were created before entering the binder, so their contexts exclude the bound variable's corresponding fvar.If
xs[start...*]is not empty, then the minimal variable isxs[start].Subterms whose
maxFVaris belowminFVarIdare skipped entirely. This function does not assume themaxFVarcache contains information for every subterm ine.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Abstracts free variables xs in expression e, converting them to de Bruijn indices.
It is an abbreviation for abstractFVarsRange e 0 xs.
Equations
Instances For
Similar to mkLambdaFVars, but uses the more efficient abstractFVars and abstractFVarsRange,
and makes the same assumption made by these functions.
Equations
- One or more equations did not get rendered due to their size.