Skip to content
Rainbow docs menu

Reference · Lemmas behind operations-research checks

rainbow.math.lemmas.mmck-unique

Lemmas behind operations-research checkssrc/rainbow/math/lemmas/mmck_unique.clj0 definitions, 5 theorems

General lemmas: mmck unique. The mathematical facts the corresponding checks rest on, each checked by the kernel.

Depends onmath.sums.value-appendmath.nat.infinitemath.rational.nnrat.identitiesmath.nat.at-most-cancellationmath.rational.nnrat.order-equivalencemath.rational.nnrat.archimedeanmath.rational.nnrat.add-monotonemath.rational.nnrat.add-cancellationmath.rational.nnrat.additive-reassociationmath.rational.signed.order-transitivitymath.rational.signed.convergencemath.rational.signed.order-respectsmath.rational.signed.limit-uniquenessmath.rational.signed.strict-ordermath.rational.signed.multiplymath.rational.nnrat.multiply-commutemath.rational.nnrat.product-reassociationmath.rational.nnrat.distribute-rightmath.rational.nnrat.ringmath.rational.nnrat.multiply-monotonemath.rational.nnrat.order-differencemath.rational.signed.multiply-ordermath.rational.signed.equivalence-lawsmath.rational.nnrat.minmaxmath.rational.nnrat.farkas-elim-listmath.rational.signed.no-zero-divisorsmath.rational.signed.decide-ordermath.rational.signed.decide-reflexivemath.logic.boolean-andmath.rational.signed.decide-equivalencemath.rational.signed.decide-completenessmath.rational.signed.unit-lawsmath.nat.strict-below-splitmath.nat.strict-below-moremath.checksmath.nat.at-most-addmath.rational.nnrat.harmonic-convergencemath.nat.divmodmath.rational.signed.minmaxmath.rational.signed.minmax-algebramath.rational.signed.clampmath.rational.signed.deviation-rowsmath.rational.signed.absolutemath.rational.signed.absolute-algebramath.rational.signed.distancemath.nat.linear-ordermath.rational.signed.add-associativemath.nat.semiringmath.nat.multiply-zero-splitmath.rational.nnrat.multiply-zero-splitmath.nat.monusmath.rational.nnrat.monusmath.rational.nnrat.add-zero-splitmath.rational.nnrat.add-cancel-zeromath.finite.rational-argmaxmath.rational.nnrat.order-totalmath.rational.nnrat.multiply-difference-zeromath.linear.vector.norm-nonnegativemath.linear.vector.norm-zero-reflectionalgorithms.proofs.counterfactual-distance-separationalgorithms.proofs.counterfactual-distance-lawsmath.finite.matrixmath.linear.matrix.equivalencemath.linear.matrix.transposemath.linear.matrix.transpose-equivalencemath.linear.matrix.multiplymath.linear.matrix.multiply-shapemath.linear.matrix.composablemath.linear.matrix.composable-multiplymath.linear.vector.additive-unitsmath.linear.vector.shape-cancellationmath.linear.vector.shape-mapmath.linear.vector.shape-addmath.linear.vector.dot-additivemath.linear.vector.dot-bilinearmath.linear.vector.dot-negatemath.linear.vector.dot-subtractmath.linear.vector.dot-scalemath.linear.matrix.action-scalemath.rational.signed.multiply-nonzeromath.rational.signed.order-monotonemath.rational.signed.list-summath.rational.signed.multiply-monotonemath.rational.signed.map-sum-algebramath.rational.signed.negate-additivemath.rational.signed.lp-objective-negatemath.nat.pair-index-inversemath.sums.flow-cutmath.rational.signed.multiply-positivemath.rational.signed.multiply-associativemath.rational.signed.multiply-ringmath.rational.signed.distributive

signed/multiply-cancel-or-zero

TheoremFor all inputsNo axiomsSource

signed/multiply-cancel-or-zero :
  (a b d : ℚ)
  (h : a · d = b · d)
  → proposition/disjunction (a = b) (d = 0)

0 = signed/zero= = signed/equivalent: equality of rational values· = signed/multiplyℚ = signed/SignedRational

signed/multiply-cancel-positive-right

TheoremFor all inputsNo axiomsSource

signed/multiply-cancel-positive-right :
  (a b d : ℚ)
  (hd : 0 < d)
  (h : a · d = b · d)
  → a = b

0 = signed/zero< = signed/less-than= = signed/equivalent: equality of rational values· = signed/multiplyℚ = signed/SignedRational

signed/of-nat-successor-positive

TheoremFor all inputsNo axiomsSource

signed/of-nat-successor-positive :
  (m : ℕ)
  → 0 < signed/from-nnrat (nnrat/make (data/succ m) 0)

0 = signed/zero< = signed/less-thanℕ = data/Nat

signed/birth-death-proportional

TheoremFor all inputsNo axiomsSource

signed/birth-death-proportional :
  (p q d e : ℕ → ℚ) (l m : ℚ) (K : ℕ)
  (hd : ∀ (idx : ℕ), ∀ (bound : nat/strict-below idx K), 0 < d idx)
  (hp : ∀ (idx : ℕ), ∀ (bound : nat/strict-below idx K), p idx · l = p (data/succ idx) · d idx)
  (hq : ∀ (idx : ℕ), ∀ (bound : nat/strict-below idx K), q idx · m = q (data/succ idx) · e idx)
  (hl : l = m)
  (he : ∀ (idx : ℕ), ∀ (bound : nat/strict-below idx K), e idx = d idx)
  (k : ℕ)
  (hk : k ≤ K)
  → p k · q 0 = q k · p 0

0 = signed/zero< = signed/less-than= = signed/equivalent: equality of rational values· = signed/multiplyℕ = data/Natℚ = signed/SignedRational≤ = nat/at-most

signed/birth-death-zero-propagates

TheoremFor all inputsNo axiomsSource

signed/birth-death-zero-propagates :
  (p d : ℕ → ℚ) (l : ℚ) (K : ℕ)
  (hd : ∀ (idx : ℕ), ∀ (bound : nat/strict-below idx K), 0 < d idx)
  (hp : ∀ (idx : ℕ), ∀ (bound : nat/strict-below idx K), p idx · l = p (data/succ idx) · d idx)
  (h0 : p 0 = 0)
  (k : ℕ)
  (hk : k ≤ K)
  → p k = 0

0 = signed/zero< = signed/less-than= = signed/equivalent: equality of rational values· = signed/multiplyℕ = data/Natℚ = signed/SignedRational≤ = nat/at-most