Deterministic polynomial-time product flow–cut algorithm
Lax455465.RamProductFlowCut · concepts/Lax455465/RamProductFlowCut.lean · lax-455465
No public endorsements yet.
Loading review…
Sign in with ORCIDNatural Language Statement
Theorem
One deterministic polynomial-time word-RAM algorithm returns a rational concurrent flow and a positive-demand cut for every rational product-demand instance with positive-weight vertices. Their values satisfy
for one universal constant . The input may have directed arcs with asymmetric capacities, or undirected edges with shared capacities.
Concept map
Evidence
Each proof establishes this claim relative to its assumptions.
Lean source view on GitHub
| 1 | import Lax455465.FlowCutCertificate |
| 2 | |
| 3 | /-! |
| 4 | --- |
| 5 | title: Deterministic polynomial-time product flow–cut algorithm |
| 6 | type: theorem |
| 7 | --- |
| 8 | One deterministic polynomial-time word-RAM algorithm returns a rational |
| 9 | concurrent flow and a positive-demand cut for every rational product-demand |
| 10 | instance with positive-weight vertices. Their values satisfy |
| 11 | |
| 12 | for one universal constant . The input may have directed arcs with |
| 13 | asymmetric capacities, or undirected edges with shared capacities. |
| 14 | |
| 15 | # Formalization notes |
| 16 | |
| 17 | This is the constructive form of Theorems 7 and 17 of Leighton and Rao |
| 18 | (1999). Zero-weight transit vertices and arbitrary rational capacities and |
| 19 | weights are allowed. Uniform instances and the two edge models are |
| 20 | specializations of this single statement. The edge model is supplied in the |
| 21 | input encoding; its symmetry hypothesis applies to undirected instances. |
| 22 | |
| 23 | The algorithm returns the exact joint certificate. The registered |
| 24 | `RamPolytime` predicate certifies a single deterministic program, measured |
| 25 | in binary input size, at every sufficiently large word length. Neither the |
| 26 | LP solution nor the rounding step is an assumed computational oracle. |
| 27 | -/ |
| 28 | |
| 29 | namespace Lax455465.RamProductFlowCut |
| 30 | |
| 31 | open Lax455465.ProductNetwork Lax455465.RationalEncoding Lax455465.FlowCutCertificate |
| 32 | open Lax759944.RamPolytime |
| 33 | |
| 34 | /-- A uniform deterministic RAM constructs a logarithmic flow–cut certificate. -/ |
| 35 | axiom exists_polynomial_time_flow_cut : |
| 36 | ∃ (solve : List ℕ → List ℕ) (C : ℝ), RamPolytime solve ∧ 0 < C ∧ |
| 37 | ∀ (kind : EdgeKind) (n : ℕ) (I : RationalInstance n), |
| 38 | (kind = .undirected → I.network.IsUndirected) → |
| 39 | 2 ≤ supportCount I.weights → |
| 40 | ∃ certificate : Certificate n, |
| 41 | solve (encodeInput kind I) = encodeCertificate certificate ∧ |
| 42 | IsValid kind I C certificate |
| 43 | |
| 44 | end Lax455465.RamProductFlowCut |
| 45 |
Formalization notes
This is the constructive form of Theorems 7 and 17 of Leighton and Rao (1999). Zero-weight transit vertices and arbitrary rational capacities and weights are allowed. Uniform instances and the two edge models are specializations of this single statement. The edge model is supplied in the input encoding; its symmetry hypothesis applies to undirected instances.
The algorithm returns the exact joint certificate. The registered predicate certifies a single deterministic program, measured in binary input size, at every sufficiently large word length. Neither the LP solution nor the rounding step is an assumed computational oracle.
Discussion
Ask a question or add context. Endorsements and structured flags are kept in the review panel above.
0 comments