Original question and givens
Use a complete simple undirected graph on Fin(4)={0,…,3} with raw edges=[[0, 1], [1, 2], [2, 3]]. Endpoints are typed and loops are prohibited. Reversed or repeated edges count once; normalize endpoints and edge order. Do not infer adjacency from a drawing. Give (n, normalized edges, Boolean adjacency matrix, degree list, degree sum, twice the edge count).
G001 — Use a complete simple undirected graph on Fin(4)={0,…,3} with raw edges=[[0, 1], [1, 2], [2, 3]]. Endpoints are typed and loops are prohibited. Reversed or repeated edges count once; normalize endpoints and edge order. Do not infer adjacency from a drawing. Give (n, normalized edges, Boolean adjacency matrix, degree list, degree sum, twice the edge count).
Step-by-step derivation
S001 · implies
Before
n=4;raw edges=[[0, 1], [1, 2], [2, 3]]
After
canonical edges=[[0, 1], [1, 2], [2, 3]]
Conditions: none
Validate every simple undirected edge for typed distinct endpoints.Sort endpoints and count reversed or repeated edges once;do not infer adjacency from a drawing.
Step identifiers and dependencies
Rule: simple_graph_edge_normalization · Uses: G001
S002 · implies
Before
phase=original;vertex=0;all edges=[[0, 1], [1, 2], [2, 3]]
After
neighbors=[1];degree=1
Conditions: none
Scan all canonical edges.An incident edge contributes its other endpoint as a distinct neighbor.Keep original vertex labels.
Step identifiers and dependencies
Rule: complete_graph_neighbor_inventory · Uses: G001, S001
S003 · implies
Before
phase=original;vertex=1;all edges=[[0, 1], [1, 2], [2, 3]]
After
neighbors=[0, 2];degree=2
Conditions: none
Scan all canonical edges.An incident edge contributes its other endpoint as a distinct neighbor.Keep original vertex labels.
Step identifiers and dependencies
Rule: complete_graph_neighbor_inventory · Uses: G001, S002
S004 · implies
Before
phase=original;vertex=2;all edges=[[0, 1], [1, 2], [2, 3]]
After
neighbors=[1, 3];degree=2
Conditions: none
Scan all canonical edges.An incident edge contributes its other endpoint as a distinct neighbor.Keep original vertex labels.
Step identifiers and dependencies
Rule: complete_graph_neighbor_inventory · Uses: G001, S003
S005 · implies
Before
phase=original;vertex=3;all edges=[[0, 1], [1, 2], [2, 3]]
After
neighbors=[2];degree=1
Conditions: none
Scan all canonical edges.An incident edge contributes its other endpoint as a distinct neighbor.Keep original vertex labels.
Step identifiers and dependencies
Rule: complete_graph_neighbor_inventory · Uses: G001, S004
S006 · implies
Before
vertex=0;ordered targets=[0, 1, 2, 3];neighbors=[1]
After
adjacency row=[No, Yes, No, No]
Conditions: none
Each Boolean entry records edge adjacency.The diagonal is false and the matrix is symmetric;this is not a reachability matrix.
Step identifiers and dependencies
Rule: complete_boolean_adjacency_row · Uses: G001, S005
S007 · implies
Before
vertex=1;ordered targets=[0, 1, 2, 3];neighbors=[0, 2]
After
adjacency row=[Yes, No, Yes, No]
Conditions: none
Each Boolean entry records edge adjacency.The diagonal is false and the matrix is symmetric;this is not a reachability matrix.
Step identifiers and dependencies
Rule: complete_boolean_adjacency_row · Uses: G001, S006
S008 · implies
Before
vertex=2;ordered targets=[0, 1, 2, 3];neighbors=[1, 3]
After
adjacency row=[No, Yes, No, Yes]
Conditions: none
Each Boolean entry records edge adjacency.The diagonal is false and the matrix is symmetric;this is not a reachability matrix.
Step identifiers and dependencies
Rule: complete_boolean_adjacency_row · Uses: G001, S007
S009 · implies
Before
vertex=3;ordered targets=[0, 1, 2, 3];neighbors=[2]
After
adjacency row=[No, No, Yes, No]
Conditions: none
Each Boolean entry records edge adjacency.The diagonal is false and the matrix is symmetric;this is not a reachability matrix.
Step identifiers and dependencies
Rule: complete_boolean_adjacency_row · Uses: G001, S008
S010 · calculation
Before
degree sum := sum(1, 2, 2, 1)
After
degree sum = 6
Conditions: none
Substitute the source data exactly in the stated operand order;division requires a nonzero denominator.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S009
S011 · calculation
Before
twice distinct edge count := mul(2, 3)
After
twice distinct edge count = 6
Conditions: none
Substitute the source data exactly in the stated operand order;division requires a nonzero denominator.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S010
S012 · implies
Before
degrees=[1, 2, 2, 1];edge count=3
After
sum=6;2|E|=6
Conditions: none
Each undirected nonloop edge contributes1 at each endpoint,so the degree sum is twice the canonical edge count.This does not test connectedness or treehood.
Step identifiers and dependencies
Rule: handshake_each_edge_two_ends · Uses: G001, S011
Result
(4, [[0, 1], [1, 2], [2, 3]], [[No, Yes, No, No], [Yes, No, Yes, No], [No, Yes, No, Yes], [No, No, Yes, No]], [1, 2, 2, 1], 6, 6)
The full substitutions and premise checks give the original answer; source identity,format and status are unchanged.