Step-by-step derivation
S001 · implies
Before
source roles = [qf-surjective-first-preimage, [A, B, operation, pairs, t]]
After
derived = [first_preimage, 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 = [function ORIGINAL A, 100, [-3, -2, -1, 0]]
After
derived = [[-3, -2, -1, 0]]
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 = [function ORIGINAL B, 100, [0, 1, 2, 3]]
After
derived = [[0, 1, 2, 3]]
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, S002
S004 · implies
Before
source roles = [function ORIGINAL table, 0, [-3, 1]]
After
derived = [[-3, 1]]
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 = [function ORIGINAL table, 1, [-2, 2]]
After
derived = [[-2, 2]]
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, S004
S006 · implies
Before
source roles = [function ORIGINAL table, 2, [-1, 3]]
After
derived = [[-1, 3]]
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, S005
S007 · implies
Before
source roles = [function ORIGINAL table, 3, [0, 0]]
After
derived = [[0, 0]]
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, S006
S008 · implies
Before
source roles = [[-3, -2, -1, 0], [0, 1, 2, 3], [[-3, 1], [-2, 2], [-1, 3], [0, 0]]]
After
derived = [Yes]
Conditions: none
FIRST qualify the WHOLE total function A→B:EXACTLY one output for EVERY A and all pairs in A×B.Identical repeated rows normalize in THIS legacy bank,unlike a different PULSE table rule.Qualify ORIGINAL B even for later codomain changes.
Step identifiers and dependencies
Rule: Function_WHOLE_qualified_total_AtoB_before_SURJECTIVE_claim · Uses: G001, S007
S009 · implies
Before
source roles = [ORIGINAL B, -3, 1, 0]
After
derived = [No]
Conditions: none
Compare EVERY permitted input’s output with THIS target.List EACH fiber completely;do not confuse target/input or infer surjectivity from cardinalities alone.
Step identifiers and dependencies
Rule: Surjective_EVERY_source_target_fiber_comparison · Uses: G001, S008
S010 · implies
Before
source roles = [ORIGINAL B, -2, 2, 0]
After
derived = [No]
Conditions: none
Compare EVERY permitted input’s output with THIS target.List EACH fiber completely;do not confuse target/input or infer surjectivity from cardinalities alone.
Step identifiers and dependencies
Rule: Surjective_EVERY_source_target_fiber_comparison · Uses: G001, S009
S011 · implies
Before
source roles = [ORIGINAL B, -1, 3, 0]
After
derived = [No]
Conditions: none
Compare EVERY permitted input’s output with THIS target.List EACH fiber completely;do not confuse target/input or infer surjectivity from cardinalities alone.
Step identifiers and dependencies
Rule: Surjective_EVERY_source_target_fiber_comparison · Uses: G001, S010
S012 · implies
Before
source roles = [ORIGINAL B, 0, 0, 0]
After
derived = [Yes]
Conditions: none
Compare EVERY permitted input’s output with THIS target.List EACH fiber completely;do not confuse target/input or infer surjectivity from cardinalities alone.
Step identifiers and dependencies
Rule: Surjective_EVERY_source_target_fiber_comparison · Uses: G001, S011
S013 · implies
Before
source roles = [ORIGINAL B, -3, 1, 1]
After
derived = [Yes]
Conditions: none
Compare EVERY permitted input’s output with THIS target.List EACH fiber completely;do not confuse target/input or infer surjectivity from cardinalities alone.
Step identifiers and dependencies
Rule: Surjective_EVERY_source_target_fiber_comparison · Uses: G001, S012
S014 · implies
Before
source roles = [ORIGINAL B, -2, 2, 1]
After
derived = [No]
Conditions: none
Compare EVERY permitted input’s output with THIS target.List EACH fiber completely;do not confuse target/input or infer surjectivity from cardinalities alone.
Step identifiers and dependencies
Rule: Surjective_EVERY_source_target_fiber_comparison · Uses: G001, S013
S015 · implies
Before
source roles = [ORIGINAL B, -1, 3, 1]
After
derived = [No]
Conditions: none
Compare EVERY permitted input’s output with THIS target.List EACH fiber completely;do not confuse target/input or infer surjectivity from cardinalities alone.
Step identifiers and dependencies
Rule: Surjective_EVERY_source_target_fiber_comparison · Uses: G001, S014
S016 · implies
Before
source roles = [ORIGINAL B, 0, 0, 1]
After
derived = [No]
Conditions: none
Compare EVERY permitted input’s output with THIS target.List EACH fiber completely;do not confuse target/input or infer surjectivity from cardinalities alone.
Step identifiers and dependencies
Rule: Surjective_EVERY_source_target_fiber_comparison · Uses: G001, S015
S017 · implies
Before
source roles = [ORIGINAL B, -3, 1, 2]
After
derived = [No]
Conditions: none
Compare EVERY permitted input’s output with THIS target.List EACH fiber completely;do not confuse target/input or infer surjectivity from cardinalities alone.
Step identifiers and dependencies
Rule: Surjective_EVERY_source_target_fiber_comparison · Uses: G001, S016
S018 · implies
Before
source roles = [ORIGINAL B, -2, 2, 2]
After
derived = [Yes]
Conditions: none
Compare EVERY permitted input’s output with THIS target.List EACH fiber completely;do not confuse target/input or infer surjectivity from cardinalities alone.
Step identifiers and dependencies
Rule: Surjective_EVERY_source_target_fiber_comparison · Uses: G001, S017
S019 · implies
Before
source roles = [ORIGINAL B, -1, 3, 2]
After
derived = [No]
Conditions: none
Compare EVERY permitted input’s output with THIS target.List EACH fiber completely;do not confuse target/input or infer surjectivity from cardinalities alone.
Step identifiers and dependencies
Rule: Surjective_EVERY_source_target_fiber_comparison · Uses: G001, S018
S020 · implies
Before
source roles = [ORIGINAL B, 0, 0, 2]
After
derived = [No]
Conditions: none
Compare EVERY permitted input’s output with THIS target.List EACH fiber completely;do not confuse target/input or infer surjectivity from cardinalities alone.
Step identifiers and dependencies
Rule: Surjective_EVERY_source_target_fiber_comparison · Uses: G001, S019
S021 · implies
Before
source roles = [ORIGINAL B, -3, 1, 3]
After
derived = [No]
Conditions: none
Compare EVERY permitted input’s output with THIS target.List EACH fiber completely;do not confuse target/input or infer surjectivity from cardinalities alone.
Step identifiers and dependencies
Rule: Surjective_EVERY_source_target_fiber_comparison · Uses: G001, S020
S022 · implies
Before
source roles = [ORIGINAL B, -2, 2, 3]
After
derived = [No]
Conditions: none
Compare EVERY permitted input’s output with THIS target.List EACH fiber completely;do not confuse target/input or infer surjectivity from cardinalities alone.
Step identifiers and dependencies
Rule: Surjective_EVERY_source_target_fiber_comparison · Uses: G001, S021
S023 · implies
Before
source roles = [ORIGINAL B, -1, 3, 3]
After
derived = [Yes]
Conditions: none
Compare EVERY permitted input’s output with THIS target.List EACH fiber completely;do not confuse target/input or infer surjectivity from cardinalities alone.
Step identifiers and dependencies
Rule: Surjective_EVERY_source_target_fiber_comparison · Uses: G001, S022
S024 · implies
Before
source roles = [ORIGINAL B, 0, 0, 3]
After
derived = [No]
Conditions: none
Compare EVERY permitted input’s output with THIS target.List EACH fiber completely;do not confuse target/input or infer surjectivity from cardinalities alone.
Step identifiers and dependencies
Rule: Surjective_EVERY_source_target_fiber_comparison · Uses: G001, S023
S025 · implies
Before
source roles = [1, [[0, [0]], [1, [-3]], [2, [-2]], [3, [-1]]]]
After
derived = [[-3], -3]
Conditions: none
FIRST require t∈declared B.Then choose the NUMERICALLY LEAST input in its COMPLETE fiber,not the first raw-list position.Empty fiber gives none;existence does not imply uniqueness.
Step identifiers and dependencies
Rule: Surjective_FIRST_preimage_NUMERIC_least_or_none_NOT_unique · Uses: G001, S024