Equations
- Lean.Meta.Linear.instInhabitedVar = { default := { id := default } }
Equations
- Lean.Meta.Linear.instOrdVar = { compare := Lean.Meta.Linear.ordVar✝ }
Equations
- Lean.Meta.Linear.instReprVar = { reprPrec := Lean.Meta.Linear.reprVar✝ }
Equations
- Lean.Meta.Linear.instLTVar = { lt := fun (a b : Lean.Meta.Linear.Var) => a.id < b.id }
Equations
- Lean.Meta.Linear.instDecidableLtVar a b = inferInstanceAs (Decidable (a.id < b.id))
Equations
- Lean.Meta.Linear.instInhabitedAssignment = { default := { val := default } }
@[reducible, inline]
Instances For
Equations
- Lean.Meta.Linear.instInhabitedPoly = { default := { val := default } }
Equations
- Lean.Meta.Linear.instReprPoly = { reprPrec := Lean.Meta.Linear.reprPoly✝ }
Equations
- Lean.Meta.Linear.Poly.scale d e = { val := Array.map (fun (x : Int × Lean.Meta.Linear.Var) => match x with | (c, x) => (c * d, x)) e.val }
Instances For
Equations
- e₁.add e₂ = Lean.Meta.Linear.Poly.add.go e₁ e₂ 0 0 #[]
Instances For
Equations
- Lean.Meta.Linear.Poly.combine d₁ e₁ d₂ e₂ = Lean.Meta.Linear.Poly.combine.go d₁ e₁ d₂ e₂ 0 0 #[]
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- Lean.Meta.Linear.instInhabitedAssumptionId = { default := { id := default } }
Equations
- Lean.Meta.Linear.instReprAssumptionId = { reprPrec := Lean.Meta.Linear.reprAssumptionId✝ }
- combine (c₁ : Int) (j₁ : Justification) (c₂ : Int) (j₂ : Justification) : Justification
- assumption (id : AssumptionId) : Justification
Instances For
Equations
Equations
Equations
Equations
- Lean.Meta.Linear.instDecidableEqCnstrKind x✝ y✝ = if h : x✝.toCtorIdx = y✝.toCtorIdx then isTrue ⋯ else isFalse ⋯
Equations
Equations
- Lean.Meta.Linear.instReprCnstrKind = { reprPrec := Lean.Meta.Linear.reprCnstrKind✝ }
- kind : CnstrKind
- lhs : Poly
- rhs : Int
- jst : Justification
Instances For
Equations
Equations
- Lean.Meta.Linear.instReprCnstr = { reprPrec := Lean.Meta.Linear.reprCnstr✝ }
@[reducible, inline]
Equations
- c.isStrict = match c.kind with | Lean.Meta.Linear.CnstrKind.lt => true | x => false
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
- One or more equations did not get rendered due to their size.
Instances For
- unsat (j : Justification) : Result
- unsupported : Result
- timeout : Result
- sat (a : Assignment) : Result
Instances For
@[reducible, inline]
Equations
- s.getBestLowerBound? = Lean.Meta.Linear.getBestBound? s.lowers[s.currVar]! s.assignment true s.int[s.currVar]!
Instances For
@[reducible, inline]
Equations
- s.getBestUpperBound? = Lean.Meta.Linear.getBestBound? s.uppers[s.currVar]! s.assignment false s.int[s.currVar]!
Instances For
@[reducible, inline]
Equations
- s.assignCurr v = { lowers := s.lowers, uppers := s.uppers, int := s.int, assignment := s.assignment.push v }
Instances For
def
Lean.Meta.Linear.pickAssignment?
(lower : Std.Internal.Rat)
(lowerIsStrict : Bool)
(upper : Std.Internal.Rat)
(upperIsStrict : Bool)
:
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.
- Lean.Meta.Linear.solve 0 s = Lean.Meta.Linear.Result.timeout