Doubled-anchor rows for an explicit-potential certificate #
Two executable rows that a marked leaf needs and an unmarked one does not:
dominatesMarkCheck— the certificate's core divisor carries at leastchipschips at a distinguished vertex, and nothing negative anywhere. This isW7read at a mark.multResidualCheck— theW5residual table read with multiplicitymultat an anchor rather than with multiplicity one.multTargetCoefficientis the single arithmetic definition it needs, and it istargetCoefficienton the nose atmult = 1.
Both are allFin/decide Booleans over Fin n, so an emitter discharges them
on concrete data and the kernel replays them. Each comes with the Prop it
characterizes and an iff, so a consumer may use either form.
These lived in MarkedGraphs/Certificate/DegenerateDoubledAnchor.lean until
2026-08-31. Nothing about them is specific to a genus, a row, or a
marked-graph existence statement, and the generic row-proof checker under
Utilities/Subdivision/ClosedRowProof/ needs them to state its marked leaf
checkers, so they belong on this side of the boundary. The soundness
theorems that consume them — effective_degenerateDivisor_sub_smul_one_chip,
class_mult_balance_nonnegative,
winnable_sub_smul_one_chip_degenerateCoreVertex — stay private, where their
only consumers are.
W7 at a mark: the divisor dominates, point-independently #
The checker's W7 domination row. The core divisor carries at least
chips chips at mark and nothing negative anywhere else. Written as a
single uniform inequality so that the Boolean form below is one allFin.
Equations
Instances For
Executable form of DominatesMark, for an emitter to discharge by
decide on concrete data.
Equations
Instances For
W5 at multiplicity mult #
The target coefficient at a core vertex after removing mult chips at the
anchor. At mult = 1 this is targetCoefficient, syntactically.
Equations
Instances For
The checker's W5 with mult in place of 1. This is the whole
semantic content of the (comp x …) plan: everything else — the slack
discipline, the potential, the endpoint bookkeeping — is shared verbatim with
the n rank anchors.
Equations
- certificate.MultResidual mult anchor = ∀ (vertex : Fin n), 0 ≤ certificate.multTargetCoefficient mult anchor vertex + certificate.lowerEndpointContribution anchor vertex
Instances For
Executable form of MultResidual.
Equations
- One or more equations did not get rendered due to their size.