Implementation of repeat' and repeat1'.
repeat'Core f runs f on all of the goals to produce a new list of goals,
then runs f again on all of those goals, and repeats until f fails on all remaining goals,
or until maxIters total calls to f have occurred.
Returns a boolean indicating whether f succeeded at least once, and
all the remaining goals (i.e. those on which f failed).
Equations
- One or more equations did not get rendered due to their size.
Instances For
repeat' f runs f on all of the goals to produce a new list of goals,
then runs f again on all of those goals, and repeats until f fails on all remaining goals,
or until maxIters total calls to f have occurred.
Always succeeds (returning the original goals if f fails on all of them).
Equations
- Lean.Meta.repeat' f goals maxIters = Lean.Meta.repeat'Core f goals maxIters <&> fun (x : Bool × List Lean.MVarId) => x.snd
Instances For
repeat1' f runs f on all of the goals to produce a new list of goals,
then runs f again on all of those goals, and repeats until f fails on all remaining goals,
or until maxIters total calls to f have occurred.
Fails if f does not succeed at least once.
Equations
- One or more equations did not get rendered due to their size.