Skip to content
Rainbow docs menu

Reference

Finite sums

37 modules in src/rainbow/math/sums/. All folders

ModuleWhat it provesTheorems
math.sums.admissions-blockA blocking indicator vanishes exactly when the student does not improve, or the college has neither vacancy nor rank improvement.2
math.sums.binary-capacityFor binary entries, x+y<=1 means selecting x excludes y.3
math.sums.binary-conflictsReusable bridges from binary entries and nonpositive nonnegative sums to exclusions.3
math.sums.binary-mutualityMutual selected-edge implications identify binary entries.1
math.sums.boolean-predicateThe converse of the existing zero/one polynomial lemma, for predicate adapters.1
math.sums.bpath-cutCut/exit proof support for bottleneck paths.4
math.sums.bpath-walkFinite one-hot walks crossing a binary cut.8
math.sums.budgeted-protectionWeak duality for a budgeted box: 0<=w<=1, sum w<=Gamma and d_j<=z+p_j, z,p>=0 imply sum w_j*d_j<=Gamma*z+sum p_j.2
math.sums.earliest-scheduleThe earliest-start recurrence preserves feasibility whenever any window schedule exists.6
math.sums.equality-lp-boundWeak duality for equality rows and unrestricted dual prices.1
math.sums.flow-cutGeneral lemmas: flow cut.9
math.sums.indicator-zeroA zero sum of strict-violation indicators means every weak inequality holds.4
math.sums.lp-boundsFinite covering duality and certificate-gap arithmetic, reusing the existing list-backed LP theorem.4
math.sums.lp-mixed-boundA free-price equality block, nonnegative-price upper rows and unit upper bounds.4
math.sums.lp-two-blocksWeak duality with two separate constraint blocks, by two applications of the existing LP theorem.1
math.sums.nonblockingAn encoded maximum is nonnegative exactly when at least one preference gap is.4
math.sums.nonneg-zeroNonnegative terms that sum to zero are each zero, over signed/expr-sum-value: if 0 <= F i for every i < k and sum F k ~ 0 then F i ~ 0 for every i < k.3
math.sums.of-natThe bridge between a natural-number count written as the signed literal of-nat n = n/1 (the form the checkers use, e.g.3
math.sums.one-hot-factorReusable selection factorization for arbitrary signed values.2
math.sums.one-hot-indexEvery selected index reads every one-hot weighted sum; every distinct index is zero.3
math.sums.one-hot-pairTwo independent one-hot rows select exactly the corresponding matrix entry.2
math.sums.one-hot-valuePointwise values of a selected index, their weighted equality, and explicit attainment.3
math.sums.pareto-maskThe Pareto penalty mask is equivalent to absence of strict gain under componentwise dominance.4
math.sums.period-usageMultiplying two Boolean indicators by a weight equals filtering that weight by both tests.1
math.sums.permutation-invariantNonlinear two-coordinate sums are invariant under a binary permutation matrix.3
math.sums.predicate-bridgesReusable bridges from checker indicators and squared norms to mathematical predicates.3
math.sums.selected-minimumA one-hot selected minimum among non-excluded entries.2
math.sums.single-supportSingle supported terms and tight finite unit-capacity sums.6
math.sums.strict-indicatorA strict comparison indicator is one exactly when the reverse weak inequality is false.3
math.sums.triangularTriangular decomposition for the existing finite sums; prefix completion costs.4
math.sums.two-termsOne term, and two DISTINCT terms, are bounded by a nonnegative expr-sum-value.2
math.sums.value-algebraFinite-sum algebra for the existing signed/expr-sum-value.11
math.sums.value-appendSplit the existing expr-sum-value at any Nat offset a: sum F (b+a) ~ sum F a + sum (fn i.1
math.sums.wspt-orderWSPT order prerequisites.5
math.sums.wspt-pair-boundPairwise lower bound for a prefix completion objective, exact for sorted pairs.4
math.sums.wspt-permutationWSPT optimality over all permutation matrices, with positive processing times.4
math.sums.zero-violationsZero positive-part penalties mean no violated inequality; a minimum encodes disjunction.8