Documentation

Lean.Meta.Tactic.Grind.Arith.Cutsat.ReorderVars

Collect variable information

  • maxLowerCoeff : Nat
  • maxUpperCoeff : Nat
  • maxDvdCoeff : Nat
Instances For

    We order variables in decreasing order of "cost". We use the lexicographical order of two different costs. The first one is the max (min lowerCoeff upperCoeff) dvdCoeff. Recall that we use cooper-left if the coefficient of the lower bound is smaller, and cooper-right otherwise. This is way we use the min lowerCoeff upperCoeff. The coefficient of the divisibility constraint also impacts the size of the search space. Then, we break ties using the max of all of them, and then the variable original order.

    Equations
      Instances For
        Equations
          Instances For
            def Int.Linear.Poly.reorder (p : Poly) (old2new : Array Var) :
            Equations
              Instances For
                Equations
                  Instances For
                    Equations
                      Instances For
                        def Lean.Meta.Grind.Arith.Cutsat.reorderVarMap {α : Type u_1} [Inhabited α] (m : PArray α) (new2old : Array Var) :
                        Equations
                          Instances For