Documentation

Lean.Meta.Tactic.Grind.Split

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
        Instances For
          Instances For

            Returns case-split candidates. Case-splits that are tagged as .resolved or .notReady are skipped. Applies additional filter if provided.

            Equations
            • One or more equations did not get rendered due to their size.
            Instances For
              def Lean.Meta.Grind.Action.splitCore (c : SplitInfo) (numCases : Nat) (isRec stopAtFirstFailure compress : Bool) :

              Performs a case-split using c. Remark: numCases and isRec are computed using checkSplitStatus.

              Equations
              • One or more equations did not get rendered due to their size.
              Instances For
                def Lean.Meta.Grind.Action.splitNext (stopAtFirstFailure compress : Bool := true) :

                Selects a case-split from the list of candidates, performs the split and applies continuation to all subgoals. If a subgoal is solved without using new hypotheses, closes the original goal using this proof. That is, it performs non-chronological backtracking.

                If stopsAtFirstFailure = true, it stops the search as soon as the given continuation cannot solve a subgoal.

                If compress = true, then it uses <;> to generate the resulting tactic sequence if all subgoal sequences are identical. For example, suppose that the following sequence is generated with compress = false

                cases #50fc
                next => lia
                next => lia
                

                Then with compress = true it generates cases #50fc <;> lia

                Equations
                • One or more equations did not get rendered due to their size.
                Instances For

                  ------------------------------------------ ------------------------------------------ TODO Delete rest of the file ------------------------------------------ ------------------------------------------

                  Selects a case-split from the list of candidates, and adds new choice point (aka backtracking point). Returns true if successful.

                  Equations
                  • One or more equations did not get rendered due to their size.
                  Instances For

                    Tries to perform a case-split using c. Returns none if c has already been resolved or is not ready.

                    Equations
                    • One or more equations did not get rendered due to their size.
                    Instances For