Step-by-step derivation
S001 · implies
Before
source roles = [qf-simple-graph-handshaking, [E, V, operation]]
After
derived = [handshaking, no-invented-domain]
Conditions: none
Keep EACH bank’s keys/operation/domain distinct:LDL/PULSE/function legacy table underscores,TREE full tree_* with its declared domain,and permissive BASE signed without invented op/domain.All arithmetic respects the binary-primitive contract.
Step identifiers and dependencies
Rule: R69_SOURCE_specific_keys_operation_domain_AND_binary_contract · Uses: G001
S002 · implies
Before
source roles = [LDL graph vertices ORIGINAL, 100, [10, 11, 12, 13, 14]]
After
derived = [[10, 11, 12, 13, 14]]
Conditions: none
Type EVERY RAW SAFE label,distinctness and THIS bank’s cardinality bound;empty is allowed.Sort ONLY the derived representation,not original JSON.Do not exchange TREE and LDL limits.
Step identifiers and dependencies
Rule: Finite_RAW_ALL_SAFE_distinct_labels_then_derived_sort · Uses: G001, S001
S003 · implies
Before
source roles = [LDL raw edges ORIGINAL, 0, [10, 11]]
After
derived = [[10, 11]]
Conditions: none
BEFORE deduplication,type EACH RAW pair as EXACTLY TWO SAFE components.Identical rows may be representation duplicates,but no unvalidated cell may be silently discarded.
Step identifiers and dependencies
Rule: Pairs_EVERY_RAW_two_SAFE_cells_BEFORE_any_dedup · Uses: G001, S002
S004 · implies
Before
source roles = [LDL raw edges ORIGINAL, 1, [12, 13]]
After
derived = [[12, 13]]
Conditions: none
BEFORE deduplication,type EACH RAW pair as EXACTLY TWO SAFE components.Identical rows may be representation duplicates,but no unvalidated cell may be silently discarded.
Step identifiers and dependencies
Rule: Pairs_EVERY_RAW_two_SAFE_cells_BEFORE_any_dedup · Uses: G001, S003
S005 · implies
Before
source roles = [[10, 11, 12, 13, 14], [[10, 11], [12, 13]], No]
After
derived = [[[10, 11], [12, 13]], [[10, [11]], [11, [10]], [12, [13]], [13, [12]], [14, []]]]
Conditions: none
Type the WHOLE raw edge list,then normalize undirected endpoints/deduplicate;reversed duplicates are allowed.INPUT edges have no loops/outside endpoints,while isolated vertices stay in V.TREE raw E does NOT acquire LDL’s200-entry limit.
Step identifiers and dependencies
Rule: Graph_WHOLE_simple_undirected_edges_normalized_NO_loops_or_outside · Uses: G001, S004
S006 · implies
Before
source roles = [10, [11]]
After
derived = [1]
Conditions: none
For EVERY V vertex,count distinct neighbors;isolated degree is0.Include vertices absent from the edge list.
Step identifiers and dependencies
Rule: Graph_DEGREE_EACH_vertex_including_isolated · Uses: G001, S005
S007 · implies
Before
source roles = [11, [10]]
After
derived = [1]
Conditions: none
For EVERY V vertex,count distinct neighbors;isolated degree is0.Include vertices absent from the edge list.
Step identifiers and dependencies
Rule: Graph_DEGREE_EACH_vertex_including_isolated · Uses: G001, S006
S008 · implies
Before
source roles = [12, [13]]
After
derived = [1]
Conditions: none
For EVERY V vertex,count distinct neighbors;isolated degree is0.Include vertices absent from the edge list.
Step identifiers and dependencies
Rule: Graph_DEGREE_EACH_vertex_including_isolated · Uses: G001, S007
S009 · implies
Before
source roles = [13, [12]]
After
derived = [1]
Conditions: none
For EVERY V vertex,count distinct neighbors;isolated degree is0.Include vertices absent from the edge list.
Step identifiers and dependencies
Rule: Graph_DEGREE_EACH_vertex_including_isolated · Uses: G001, S008
S010 · implies
Before
source roles = [14, []]
After
derived = [0]
Conditions: none
For EVERY V vertex,count distinct neighbors;isolated degree is0.Include vertices absent from the edge list.
Step identifiers and dependencies
Rule: Graph_DEGREE_EACH_vertex_including_isolated · Uses: G001, S009
S011 · calculation
Before
Graph ORIGINAL all vertex degrees sum := sum(1, 1, 1, 1, 0)
After
Graph ORIGINAL all vertex degrees sum = 4
Conditions: none
Use ORIGINAL operands exactly;mul/sub/div have EXPLICITLY TWO operands so the old binary primitive cannot ignore a third.Keep RAW SAFE bounds separate from unbounded derived BigInts;do not approximate to force answers.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S010
S012 · calculation
Before
Graph ORIGINAL two endpoints per normalized edge := mul(2, 2)
After
Graph ORIGINAL two endpoints per normalized edge = 4
Conditions: none
Use ORIGINAL operands exactly;mul/sub/div have EXPLICITLY TWO operands so the old binary primitive cannot ignore a third.Keep RAW SAFE bounds separate from unbounded derived BigInts;do not approximate to force answers.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S011
S013 · implies
Before
source roles = [[10, 11, 12, 13, 14], [[10, 11], [12, 13]], [1, 1, 1, 1, 0]]
After
derived = [4, 4]
Conditions: none
Every undirected edge contributes TWO endpoint incidences,so the COMPLETE degree sum is2|E|.For the empty graph both sides are0.This is finite full recomputation/double counting,not a sketch inference.
Step identifiers and dependencies
Rule: Graph_HANDSHAKE_complete_incidence_double_count · Uses: G001, S012