Step-by-step derivation
S001 · implies
Before
source roles = [mfmc-flow-cut-upper-bound]
After
derived = [[source_value, sink_value, flow_cut_rows, all_cut_bounds_hold, automatic_maximum_claim, certificate]]
Conditions: none
List the full source field order without JavaScript.LP weak uses13 fields,zero/strong15;premises and roles follow the original operation/mode without padding.
Step identifiers and dependencies
Rule: source_ordered_fields_without_JS · Uses: G001
S002 · implies
Before
source roles = [[s, a0, a1, t], [[s, a0], [a0, t], [s, a1], [a1, t], [a0, s]], [26, 26, 27, 27, 31], [25, 25, 26, 26, 0], s, t]
After
derived = [[a0, a1, s, t], [[a0, s], [a0, t], [a1, t], [s, a0], [s, a1]], [31, 26, 27, 26, 27], [0, 25, 26, 25, 26]]
Conditions: none
Use2..12 vertices.Zip directed edges with capacity/flow by original index before sorting;reverse arcs remain distinct.Source and sink differ;reject loops/duplicates but allow zero capacities,no edges and isolated vertices.
Step identifiers and dependencies
Rule: MFMC_complete_directed_network_ZIP_before_source_order · Uses: G001, S001
S003 · calculation
Before
MFMC cut mask0 OUTWARD capacity := sum(26, 27)
After
MFMC cut mask0 OUTWARD capacity = 53
Conditions: none
Substitute original roles and established intermediates exactly,without floats;extra teaching identities do not impose new source numeric restrictions.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S002
S004 · implies
Before
source roles = [0, [a0, a1], [s]]
After
derived = [[3, 4], [0], [[[s, a0], 26], [[s, a1], 27]], 53]
Conditions: none
S contains source and excludes sink.Enumerate every other-vertex subset;sort inside S by UTF16 but retain numeric-mask outer order.Capacity sums OUTWARD edges only,not incoming edges;ties are not re-sorted in English.
Step identifiers and dependencies
Rule: MFMC_EVERY_numeric_mask_cut_OUTWARD_edges_only · Uses: G001, S003
S005 · calculation
Before
MFMC cut mask1 OUTWARD capacity := sum(26, 27)
After
MFMC cut mask1 OUTWARD capacity = 53
Conditions: none
Substitute original roles and established intermediates exactly,without floats;extra teaching identities do not impose new source numeric restrictions.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S004
S006 · implies
Before
source roles = [1, [a0, a1], [a0, s]]
After
derived = [[1, 4], [], [[[a0, t], 26], [[s, a1], 27]], 53]
Conditions: none
S contains source and excludes sink.Enumerate every other-vertex subset;sort inside S by UTF16 but retain numeric-mask outer order.Capacity sums OUTWARD edges only,not incoming edges;ties are not re-sorted in English.
Step identifiers and dependencies
Rule: MFMC_EVERY_numeric_mask_cut_OUTWARD_edges_only · Uses: G001, S005
S007 · calculation
Before
MFMC cut mask2 OUTWARD capacity := sum(27, 26)
After
MFMC cut mask2 OUTWARD capacity = 53
Conditions: none
Substitute original roles and established intermediates exactly,without floats;extra teaching identities do not impose new source numeric restrictions.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S006
S008 · implies
Before
source roles = [2, [a0, a1], [a1, s]]
After
derived = [[2, 3], [0], [[[a1, t], 27], [[s, a0], 26]], 53]
Conditions: none
S contains source and excludes sink.Enumerate every other-vertex subset;sort inside S by UTF16 but retain numeric-mask outer order.Capacity sums OUTWARD edges only,not incoming edges;ties are not re-sorted in English.
Step identifiers and dependencies
Rule: MFMC_EVERY_numeric_mask_cut_OUTWARD_edges_only · Uses: G001, S007
S009 · calculation
Before
MFMC cut mask3 OUTWARD capacity := sum(26, 27)
After
MFMC cut mask3 OUTWARD capacity = 53
Conditions: none
Substitute original roles and established intermediates exactly,without floats;extra teaching identities do not impose new source numeric restrictions.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S008
S010 · implies
Before
source roles = [3, [a0, a1], [a0, a1, s]]
After
derived = [[1, 2], [], [[[a0, t], 26], [[a1, t], 27]], 53]
Conditions: none
S contains source and excludes sink.Enumerate every other-vertex subset;sort inside S by UTF16 but retain numeric-mask outer order.Capacity sums OUTWARD edges only,not incoming edges;ties are not re-sorted in English.
Step identifiers and dependencies
Rule: MFMC_EVERY_numeric_mask_cut_OUTWARD_edges_only · Uses: G001, S009
S011 · implies
Before
source roles = [[a0, a1, s, t], [a0, a1]]
After
derived = [4, 4, 53, [[s], [a0, s], [a1, s], [a0, a1, s]]]
Conditions: none
Every s–t cut uniquely corresponds to a subset of other vertices,so all2^(n−2) cuts are compared.Select the minimum and all minimizers from this same complete family,retaining mask tie order.
Step identifiers and dependencies
Rule: MFMC_ALL_cut_family_complete_minimum_and_ALL_ties · Uses: G001, S010
S012 · calculation
Before
MFMC vertex a0 ALL incoming := sum(25)
After
MFMC vertex a0 ALL incoming = 25
Conditions: none
Substitute original roles and established intermediates exactly,without floats;extra teaching identities do not impose new source numeric restrictions.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S011
S013 · calculation
Before
MFMC vertex a0 ALL outgoing := sum(0, 25)
After
MFMC vertex a0 ALL outgoing = 25
Conditions: none
Substitute original roles and established intermediates exactly,without floats;extra teaching identities do not impose new source numeric restrictions.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S012
S014 · calculation
Before
MFMC vertex a1 ALL incoming := sum(26)
After
MFMC vertex a1 ALL incoming = 26
Conditions: none
Substitute original roles and established intermediates exactly,without floats;extra teaching identities do not impose new source numeric restrictions.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S013
S015 · calculation
Before
MFMC vertex a1 ALL outgoing := sum(26)
After
MFMC vertex a1 ALL outgoing = 26
Conditions: none
Substitute original roles and established intermediates exactly,without floats;extra teaching identities do not impose new source numeric restrictions.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S014
S016 · calculation
Before
MFMC vertex s ALL incoming := sum(0)
After
MFMC vertex s ALL incoming = 0
Conditions: none
Substitute original roles and established intermediates exactly,without floats;extra teaching identities do not impose new source numeric restrictions.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S015
S017 · calculation
Before
MFMC vertex s ALL outgoing := sum(25, 26)
After
MFMC vertex s ALL outgoing = 51
Conditions: none
Substitute original roles and established intermediates exactly,without floats;extra teaching identities do not impose new source numeric restrictions.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S016
S018 · calculation
Before
MFMC vertex t ALL incoming := sum(25, 26)
After
MFMC vertex t ALL incoming = 51
Conditions: none
Substitute original roles and established intermediates exactly,without floats;extra teaching identities do not impose new source numeric restrictions.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S017
S019 · calculation
Before
MFMC vertex t ALL outgoing := sum()
After
MFMC vertex t ALL outgoing = 0
Conditions: none
Substitute original roles and established intermediates exactly,without floats;extra teaching identities do not impose new source numeric restrictions.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S018
S020 · calculation
Before
MFMC SOURCE net out not gross := sub(51, 0)
After
MFMC SOURCE net out not gross = 51
Conditions: none
Substitute original roles and established intermediates exactly,without floats;extra teaching identities do not impose new source numeric restrictions.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S019
S021 · calculation
Before
MFMC SINK net in not gross := sub(51, 0)
After
MFMC SINK net in not gross = 51
Conditions: none
Substitute original roles and established intermediates exactly,without floats;extra teaching identities do not impose new source numeric restrictions.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S020
S022 · implies
Before
source roles = [[[a0, s], [a0, t], [a1, t], [s, a0], [s, a1]], [0, 25, 26, 25, 26], [31, 26, 27, 26, 27], s, t]
After
derived = [[[[a0, s], 0, 31, Yes], [[a0, t], 25, 26, Yes], [[a1, t], 26, 27, Yes], [[s, a0], 25, 26, Yes], [[s, a1], 26, 27, Yes]], [[a0, 25, 25, Yes], [a1, 26, 26, Yes]], Yes, Yes, 51, 51, Yes, Yes]
Conditions: none
Feasibility requires every edge capacity bound,every internal conservation equation and equal source/sink NET values.Do not discard incoming-source or outgoing-sink arcs.A feasible flow may have negative net value;do not add value>=0.
Step identifiers and dependencies
Rule: MFMC_EVERY_capacity_EVERY_internal_balance_source_sink_NET_feasibility · Uses: G001, S021
S023 · calculation
Before
MFMC cut mask0 OUTWARD flow := sum(25, 26)
After
MFMC cut mask0 OUTWARD flow = 51
Conditions: none
Substitute original roles and established intermediates exactly,without floats;extra teaching identities do not impose new source numeric restrictions.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S022
S024 · calculation
Before
MFMC cut mask0 INWARD flow := sum(0)
After
MFMC cut mask0 INWARD flow = 0
Conditions: none
Substitute original roles and established intermediates exactly,without floats;extra teaching identities do not impose new source numeric restrictions.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S023
S025 · calculation
Before
MFMC cut mask0 NET flow := sub(51, 0)
After
MFMC cut mask0 NET flow = 51
Conditions: none
Substitute original roles and established intermediates exactly,without floats;extra teaching identities do not impose new source numeric restrictions.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S024
S026 · implies
Before
source roles = [[s], [3, 4], [0], 51]
After
derived = [[[s], 51, 0, 51, 53, Yes, Yes]]
Conditions: none
Summing net outflows over S cancels internal arcs;internal conservation leaves the source net.Because inward flow is nonnegative and each outward flow is capacity-bounded,value=out−in<=out<=cut capacity,for every cut.
Step identifiers and dependencies
Rule: MFMC_EVERY_cut_conservation_cancellation_and_weak_upper_bound · Uses: G001, S025
S027 · calculation
Before
MFMC cut mask1 OUTWARD flow := sum(25, 26)
After
MFMC cut mask1 OUTWARD flow = 51
Conditions: none
Substitute original roles and established intermediates exactly,without floats;extra teaching identities do not impose new source numeric restrictions.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S026
S028 · calculation
Before
MFMC cut mask1 INWARD flow := sum()
After
MFMC cut mask1 INWARD flow = 0
Conditions: none
Substitute original roles and established intermediates exactly,without floats;extra teaching identities do not impose new source numeric restrictions.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S027
S029 · calculation
Before
MFMC cut mask1 NET flow := sub(51, 0)
After
MFMC cut mask1 NET flow = 51
Conditions: none
Substitute original roles and established intermediates exactly,without floats;extra teaching identities do not impose new source numeric restrictions.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S028
S030 · implies
Before
source roles = [[a0, s], [1, 4], [], 51]
After
derived = [[[a0, s], 51, 0, 51, 53, Yes, Yes]]
Conditions: none
Summing net outflows over S cancels internal arcs;internal conservation leaves the source net.Because inward flow is nonnegative and each outward flow is capacity-bounded,value=out−in<=out<=cut capacity,for every cut.
Step identifiers and dependencies
Rule: MFMC_EVERY_cut_conservation_cancellation_and_weak_upper_bound · Uses: G001, S029
S031 · calculation
Before
MFMC cut mask2 OUTWARD flow := sum(26, 25)
After
MFMC cut mask2 OUTWARD flow = 51
Conditions: none
Substitute original roles and established intermediates exactly,without floats;extra teaching identities do not impose new source numeric restrictions.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S030
S032 · calculation
Before
MFMC cut mask2 INWARD flow := sum(0)
After
MFMC cut mask2 INWARD flow = 0
Conditions: none
Substitute original roles and established intermediates exactly,without floats;extra teaching identities do not impose new source numeric restrictions.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S031
S033 · calculation
Before
MFMC cut mask2 NET flow := sub(51, 0)
After
MFMC cut mask2 NET flow = 51
Conditions: none
Substitute original roles and established intermediates exactly,without floats;extra teaching identities do not impose new source numeric restrictions.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S032
S034 · implies
Before
source roles = [[a1, s], [2, 3], [0], 51]
After
derived = [[[a1, s], 51, 0, 51, 53, Yes, Yes]]
Conditions: none
Summing net outflows over S cancels internal arcs;internal conservation leaves the source net.Because inward flow is nonnegative and each outward flow is capacity-bounded,value=out−in<=out<=cut capacity,for every cut.
Step identifiers and dependencies
Rule: MFMC_EVERY_cut_conservation_cancellation_and_weak_upper_bound · Uses: G001, S033
S035 · calculation
Before
MFMC cut mask3 OUTWARD flow := sum(25, 26)
After
MFMC cut mask3 OUTWARD flow = 51
Conditions: none
Substitute original roles and established intermediates exactly,without floats;extra teaching identities do not impose new source numeric restrictions.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S034
S036 · calculation
Before
MFMC cut mask3 INWARD flow := sum()
After
MFMC cut mask3 INWARD flow = 0
Conditions: none
Substitute original roles and established intermediates exactly,without floats;extra teaching identities do not impose new source numeric restrictions.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S035
S037 · calculation
Before
MFMC cut mask3 NET flow := sub(51, 0)
After
MFMC cut mask3 NET flow = 51
Conditions: none
Substitute original roles and established intermediates exactly,without floats;extra teaching identities do not impose new source numeric restrictions.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S036
S038 · implies
Before
source roles = [[a0, a1, s], [1, 2], [], 51]
After
derived = [[[a0, a1, s], 51, 0, 51, 53, Yes, Yes]]
Conditions: none
Summing net outflows over S cancels internal arcs;internal conservation leaves the source net.Because inward flow is nonnegative and each outward flow is capacity-bounded,value=out−in<=out<=cut capacity,for every cut.
Step identifiers and dependencies
Rule: MFMC_EVERY_cut_conservation_cancellation_and_weak_upper_bound · Uses: G001, S037