Support for collecting function calls that could be used for fun_induction or fun_cases.
Used by fun_induction foo, and the Calls structure is also used by try?.
Equations
Equations
the full calls
- seen : Std.HashSet (Name × Array Expr)
only function name and relevant arguments
Instances For
Equations
- Lean.Meta.FunInd.instEmptyCollectionSeenCalls = { emptyCollection := { calls := #[], seen := ∅ } }
Which functions have exactly one candidate application. Used by try? to determine whether
we can use fun_induction foo or need fun_induction foo x y z.
Equations
- One or more equations did not get rendered due to their size.
Instances For
@[reducible, inline]
Equations
Instances For
Equations
- Lean.Meta.FunInd.Collector.saveFunInd e declName args = do let __do_lift ← get let __do_lift ← liftM (Lean.Meta.FunInd.SeenCalls.push e declName args __do_lift) set __do_lift
Instances For
Equations
- Lean.Meta.FunInd.Collector.visitApp e declName args = Lean.Meta.FunInd.Collector.saveFunInd e declName args
Instances For
@[reducible, inline]
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- Lean.Meta.FunInd.collect needle mvarId = Lean.Meta.FunInd.collect.unsafe_impl_1 needle mvarId