Step-by-step derivation
S001 · implies
Before
source roles = [flow-capacity-audit]
After
derived = [[source, sink, edge_capacity_flow_rows, capacity_rows, capacity_feasible, first_failed_edge_or_null, certificate]]
Conditions: none
List the source field order without JavaScript.Gradient boundary uses its original mode to choose6,8 or7 fields;no padding or answer-derived mode.
Step identifiers and dependencies
Rule: source_ordered_fields_without_JS · Uses: G001
S002 · implies
Before
source roles = [[s5, a5, t5, u5], [[s5, a5], [a5, s5], [a5, t5], [t5, a5]], [30, 30, 30, 30], [24, 12, 18, 6], s5, t5]
After
derived = [[a5, s5, t5, u5], [[[a5, s5], 30, 12], [[a5, t5], 30, 18], [[s5, a5], 30, 24], [[t5, a5], 30, 6]], 2, Yes]
Conditions: none
Zip edge,capacity and flow by original index before source English canonical-edge sorting;vertices use UTF16.Opposite directions are distinct,zero capacity and isolated vertices are legal,and negative flow is retained for capacity failure rather than rewritten.
Step identifiers and dependencies
Rule: Flow_zip_source_edges_capacities_flows_BEFORE_order · Uses: G001, S001
S003 · implies
Before
source roles = [0, [a5, s5], 12, 30]
After
derived = [Yes, Yes, Yes]
Conditions: none
Every directed edge needs0<=flow<=capacity.A qualified network signature does not imply candidate-flow feasibility.
Step identifiers and dependencies
Rule: Flow_EACH_edge_two_sided_capacity_obligation · Uses: G001, S002
S004 · implies
Before
source roles = [1, [a5, t5], 18, 30]
After
derived = [Yes, Yes, Yes]
Conditions: none
Every directed edge needs0<=flow<=capacity.A qualified network signature does not imply candidate-flow feasibility.
Step identifiers and dependencies
Rule: Flow_EACH_edge_two_sided_capacity_obligation · Uses: G001, S003
S005 · implies
Before
source roles = [2, [s5, a5], 24, 30]
After
derived = [Yes, Yes, Yes]
Conditions: none
Every directed edge needs0<=flow<=capacity.A qualified network signature does not imply candidate-flow feasibility.
Step identifiers and dependencies
Rule: Flow_EACH_edge_two_sided_capacity_obligation · Uses: G001, S004
S006 · implies
Before
source roles = [3, [t5, a5], 6, 30]
After
derived = [Yes, Yes, Yes]
Conditions: none
Every directed edge needs0<=flow<=capacity.A qualified network signature does not imply candidate-flow feasibility.
Step identifiers and dependencies
Rule: Flow_EACH_edge_two_sided_capacity_obligation · Uses: G001, S005
S007 · calculation
Before
Flow ALL incoming at vertex a5 := sum(24, 6)
After
Flow ALL incoming at vertex a5 = 30
Conditions: none
Substitute original roles and established intermediates exactly;check nonzero denominators and do not round.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S006
S008 · calculation
Before
Flow ALL outgoing at vertex a5 := sum(12, 18)
After
Flow ALL outgoing at vertex a5 = 30
Conditions: none
Substitute original roles and established intermediates exactly;check nonzero denominators and do not round.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S007
S009 · implies
Before
source roles = [a5, [2, 3], [0, 1]]
After
derived = [30, 30, Yes, Yes]
Conditions: none
Sum all incoming and outgoing edges separately;an isolated vertex has0=0.Conservation is required only internally,but compute source/sink balances too for net values.
Step identifiers and dependencies
Rule: Flow_EACH_vertex_complete_directional_incidence · Uses: G001, S008
S010 · calculation
Before
Flow ALL incoming at vertex s5 := sum(12)
After
Flow ALL incoming at vertex s5 = 12
Conditions: none
Substitute original roles and established intermediates exactly;check nonzero denominators and do not round.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S009
S011 · calculation
Before
Flow ALL outgoing at vertex s5 := sum(24)
After
Flow ALL outgoing at vertex s5 = 24
Conditions: none
Substitute original roles and established intermediates exactly;check nonzero denominators and do not round.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S010
S012 · implies
Before
source roles = [s5, [0], [2]]
After
derived = [12, 24, No, No]
Conditions: none
Sum all incoming and outgoing edges separately;an isolated vertex has0=0.Conservation is required only internally,but compute source/sink balances too for net values.
Step identifiers and dependencies
Rule: Flow_EACH_vertex_complete_directional_incidence · Uses: G001, S011
S013 · calculation
Before
Flow ALL incoming at vertex t5 := sum(18)
After
Flow ALL incoming at vertex t5 = 18
Conditions: none
Substitute original roles and established intermediates exactly;check nonzero denominators and do not round.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S012
S014 · calculation
Before
Flow ALL outgoing at vertex t5 := sum(6)
After
Flow ALL outgoing at vertex t5 = 6
Conditions: none
Substitute original roles and established intermediates exactly;check nonzero denominators and do not round.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S013
S015 · implies
Before
source roles = [t5, [1], [3]]
After
derived = [18, 6, No, No]
Conditions: none
Sum all incoming and outgoing edges separately;an isolated vertex has0=0.Conservation is required only internally,but compute source/sink balances too for net values.
Step identifiers and dependencies
Rule: Flow_EACH_vertex_complete_directional_incidence · Uses: G001, S014
S016 · calculation
Before
Flow ALL incoming at vertex u5 := sum()
After
Flow ALL incoming at vertex u5 = 0
Conditions: none
Substitute original roles and established intermediates exactly;check nonzero denominators and do not round.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S015
S017 · calculation
Before
Flow ALL outgoing at vertex u5 := sum()
After
Flow ALL outgoing at vertex u5 = 0
Conditions: none
Substitute original roles and established intermediates exactly;check nonzero denominators and do not round.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S016
S018 · implies
Before
source roles = [u5, [], []]
After
derived = [0, 0, Yes, Yes]
Conditions: none
Sum all incoming and outgoing edges separately;an isolated vertex has0=0.Conservation is required only internally,but compute source/sink balances too for net values.
Step identifiers and dependencies
Rule: Flow_EACH_vertex_complete_directional_incidence · Uses: G001, S017
S019 · calculation
Before
Flow source NET outflow not gross outgoing := sub(24, 12)
After
Flow source NET outflow not gross outgoing = 12
Conditions: none
Substitute original roles and established intermediates exactly;check nonzero denominators and do not round.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S018
S020 · calculation
Before
Flow sink NET inflow not gross incoming := sub(18, 6)
After
Flow sink NET inflow not gross incoming = 12
Conditions: none
Substitute original roles and established intermediates exactly;check nonzero denominators and do not round.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S019
S021 · implies
Before
source roles = [s5, t5, [[[a5, s5], 12, 30, Yes], [[a5, t5], 18, 30, Yes], [[s5, a5], 24, 30, Yes], [[t5, a5], 6, 30, Yes]], [[a5, 30, 30, Yes], [u5, 0, 0, Yes]], 12, 12]
After
derived = [Yes, Yes, Yes, Yes, No]
Conditions: none
Every edge cancels in the sum of all vertex balances,so internal conservation implies equal source/sink net values.The converse fails when internal imbalances cancel.Capacity,each balance and net equality remain separate.Feasibility does not certify maximum/min-cut;No does not deny special optimal examples.
Step identifiers and dependencies
Rule: Flow_value_capacity_conservation_and_maximum_separate · Uses: G001, S020
Result
(s5, t5, [[[a5, s5], 30, 12], [[a5, t5], 30, 18], [[s5, a5], 30, 24], [[t5, a5], 30, 6]], [[[a5, s5], 12, 30, Yes], [[a5, t5], 18, 30, Yes], [[s5, a5], 24, 30, Yes], [[t5, a5], 6, 30, Yes]], Yes, null, every_edge_requires_zero_less_equal_flow_less_equal_capacity)
The full substitutions and premise checks give the original answer; source identity,format and status are unchanged.