This module defines the data structure and environment extension to remember how to map the function's arguments to the functional induction principle's arguments. Also used for functional cases.
- dropped : FunIndParamKind
- param : FunIndParamKind
- target : FunIndParamKind
Instances For
Equations
Equations
- Lean.Meta.instReprFunIndParamKind = { reprPrec := Lean.Meta.reprFunIndParamKind✝ }
A FunIndInfo
indicates how a function's arguments map to the arguments of the functional induction
(resp. cases) theorem.
The size of params
also indicates the arity of the function.
- funIndName : Name
true
means that the corresponding level parameter of the function is also a level param of the induction principle.- params : Array FunIndParamKind
Instances For
Equations
- Lean.Meta.instInhabitedFunIndInfo = { default := { funIndName := default, levelMask := default, params := default } }
Equations
- Lean.Meta.instReprFunIndInfo = { reprPrec := Lean.Meta.reprFunIndInfo✝ }
Equations
- Lean.Meta.getFunInductName declName = declName ++ `induct
Instances For
Equations
- Lean.Meta.getFunCasesName declName = declName ++ `fun_cases
Instances For
Equations
- Lean.Meta.getMutualInductName declName = declName ++ `mutual_induct
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- Lean.Meta.getFunIndInfoForInduct? inductName = do let __do_lift ← Lean.getEnv pure (Lean.Meta.funIndInfoExt.find? __do_lift inductName)
Instances For
Equations
- One or more equations did not get rendered due to their size.