Step-by-step derivation
S001 · implies
Before
source roles = [qf-density12-length-midpoint-equidistance, density12_length_midpoint_equidistance, integer_euclidean_plane]
After
derived = [[midpoint_x, midpoint_y, SQUARED_PM, SQUARED_MQ]]
Conditions: none
Retain the ORIGINAL bank full operation prefix,domain and ordered answer roles.Use orthogonal_equal_unit only where a frame is declared,and degrees where an angle unit is declared.Integer fractions retain/1.Do not invent parameters or alter original bilingual sources.
Step identifiers and dependencies
Rule: R59_EXACT_family_domain_FULLprefix_operation_and_answer_roles · Uses: G001
S002 · calculation
Before
Length original PQ ORIGINAL Q minus P coordinate0 := sub(7, -6)
After
Length original PQ ORIGINAL Q minus P coordinate0 = 13
Conditions: none
Substitute exact ORIGINAL roles,without floating approximation.SAFE bounds raw inputs only;derived integers/rationals are unbounded and do not inherit another bank component cap.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S001
S003 · calculation
Before
Length original PQ ORIGINAL Q minus P coordinate1 := sub(8, 1)
After
Length original PQ ORIGINAL Q minus P coordinate1 = 7
Conditions: none
Substitute exact ORIGINAL roles,without floating approximation.SAFE bounds raw inputs only;derived integers/rationals are unbounded and do not inherit another bank component cap.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S002
S004 · calculation
Before
Length original PQ ORIGINAL square coordinate0 := mul(13, 13)
After
Length original PQ ORIGINAL square coordinate0 = 169
Conditions: none
Substitute exact ORIGINAL roles,without floating approximation.SAFE bounds raw inputs only;derived integers/rationals are unbounded and do not inherit another bank component cap.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S003
S005 · calculation
Before
Length original PQ ORIGINAL square coordinate1 := mul(7, 7)
After
Length original PQ ORIGINAL square coordinate1 = 49
Conditions: none
Substitute exact ORIGINAL roles,without floating approximation.SAFE bounds raw inputs only;derived integers/rationals are unbounded and do not inherit another bank component cap.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S004
S006 · calculation
Before
Length original PQ ORIGINAL squared norm sum := sum(169, 49)
After
Length original PQ ORIGINAL squared norm sum = 218
Conditions: none
Substitute exact ORIGINAL roles,without floating approximation.SAFE bounds raw inputs only;derived integers/rationals are unbounded and do not inherit another bank component cap.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S005
S007 · implies
Before
source roles = [Length original PQ, [-6, 1], [7, 8]]
After
derived = [[13, 7], 218]
Conditions: none
In the SAME equal-unit orthogonal L2 frame,the directed displacement is Q-P with signs retained.The sum of coordinate squares is the nonnegative SQUARED length.Derived coordinates may exceed SAFE without being revalidated as raw inputs.
Step identifiers and dependencies
Rule: Euclidean_DIRECTED_displacement_then_SQUARED_nonnegative_norm · Uses: G001, S006
S008 · calculation
Before
Midpoint ORIGINAL endpoint sum coordinate0 := sum(-6, 7)
After
Midpoint ORIGINAL endpoint sum coordinate0 = 1
Conditions: none
Substitute exact ORIGINAL roles,without floating approximation.SAFE bounds raw inputs only;derived integers/rationals are unbounded and do not inherit another bank component cap.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S007
S009 · calculation
Before
Midpoint ORIGINAL average coordinate0 := div(1, 2)
After
Midpoint ORIGINAL average coordinate0 = 1/2
Conditions: none
Substitute exact ORIGINAL roles,without floating approximation.SAFE bounds raw inputs only;derived integers/rationals are unbounded and do not inherit another bank component cap.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S008
S010 · calculation
Before
Midpoint ORIGINAL endpoint sum coordinate1 := sum(1, 8)
After
Midpoint ORIGINAL endpoint sum coordinate1 = 9
Conditions: none
Substitute exact ORIGINAL roles,without floating approximation.SAFE bounds raw inputs only;derived integers/rationals are unbounded and do not inherit another bank component cap.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S009
S011 · calculation
Before
Midpoint ORIGINAL average coordinate1 := div(9, 2)
After
Midpoint ORIGINAL average coordinate1 = 9/2
Conditions: none
Substitute exact ORIGINAL roles,without floating approximation.SAFE bounds raw inputs only;derived integers/rationals are unbounded and do not inherit another bank component cap.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S010
S012 · calculation
Before
Midpoint ORIGINAL full squared length over four := div(218, 4)
After
Midpoint ORIGINAL full squared length over four = 109/2
Conditions: none
Substitute exact ORIGINAL roles,without floating approximation.SAFE bounds raw inputs only;derived integers/rationals are unbounded and do not inherit another bank component cap.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S011
S013 · calculation
Before
Midpoint reverse PM displacement coordinate0 := sub(1/2, -6)
After
Midpoint reverse PM displacement coordinate0 = 13/2
Conditions: none
Substitute exact ORIGINAL roles,without floating approximation.SAFE bounds raw inputs only;derived integers/rationals are unbounded and do not inherit another bank component cap.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S012
S014 · calculation
Before
Midpoint reverse PM displacement coordinate1 := sub(9/2, 1)
After
Midpoint reverse PM displacement coordinate1 = 7/2
Conditions: none
Substitute exact ORIGINAL roles,without floating approximation.SAFE bounds raw inputs only;derived integers/rationals are unbounded and do not inherit another bank component cap.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S013
S015 · calculation
Before
Midpoint reverse PM coordinate0 square := mul(13/2, 13/2)
After
Midpoint reverse PM coordinate0 square = 169/4
Conditions: none
Substitute exact ORIGINAL roles,without floating approximation.SAFE bounds raw inputs only;derived integers/rationals are unbounded and do not inherit another bank component cap.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S014
S016 · calculation
Before
Midpoint reverse PM coordinate1 square := mul(7/2, 7/2)
After
Midpoint reverse PM coordinate1 square = 49/4
Conditions: none
Substitute exact ORIGINAL roles,without floating approximation.SAFE bounds raw inputs only;derived integers/rationals are unbounded and do not inherit another bank component cap.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S015
S017 · calculation
Before
Midpoint reverse PM squared sum := sum(169/4, 49/4)
After
Midpoint reverse PM squared sum = 109/2
Conditions: none
Substitute exact ORIGINAL roles,without floating approximation.SAFE bounds raw inputs only;derived integers/rationals are unbounded and do not inherit another bank component cap.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S016
S018 · calculation
Before
Midpoint reverse MQ displacement coordinate0 := sub(7, 1/2)
After
Midpoint reverse MQ displacement coordinate0 = 13/2
Conditions: none
Substitute exact ORIGINAL roles,without floating approximation.SAFE bounds raw inputs only;derived integers/rationals are unbounded and do not inherit another bank component cap.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S017
S019 · calculation
Before
Midpoint reverse MQ displacement coordinate1 := sub(8, 9/2)
After
Midpoint reverse MQ displacement coordinate1 = 7/2
Conditions: none
Substitute exact ORIGINAL roles,without floating approximation.SAFE bounds raw inputs only;derived integers/rationals are unbounded and do not inherit another bank component cap.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S018
S020 · calculation
Before
Midpoint reverse MQ coordinate0 square := mul(13/2, 13/2)
After
Midpoint reverse MQ coordinate0 square = 169/4
Conditions: none
Substitute exact ORIGINAL roles,without floating approximation.SAFE bounds raw inputs only;derived integers/rationals are unbounded and do not inherit another bank component cap.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S019
S021 · calculation
Before
Midpoint reverse MQ coordinate1 square := mul(7/2, 7/2)
After
Midpoint reverse MQ coordinate1 square = 49/4
Conditions: none
Substitute exact ORIGINAL roles,without floating approximation.SAFE bounds raw inputs only;derived integers/rationals are unbounded and do not inherit another bank component cap.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S020
S022 · calculation
Before
Midpoint reverse MQ squared sum := sum(169/4, 49/4)
After
Midpoint reverse MQ squared sum = 109/2
Conditions: none
Substitute exact ORIGINAL roles,without floating approximation.SAFE bounds raw inputs only;derived integers/rationals are unbounded and do not inherit another bank component cap.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S021
S023 · implies
Before
source roles = [[-6, 1], [7, 8], [1/2, 9/2], 218]
After
derived = [109/2, 109/2, 109/2]
Conditions: none
Average EACH coordinate to obtain M,possibly half-integral.Both M-P and Q-M are half the original displacement,so EACH squared length is N/4,also recomputed separately.These are SQUARES,not square roots;P=Q is legal.
Step identifiers and dependencies
Rule: Length_midpoint_TWO_HALFsegment_SQUARES_not_distances · Uses: G001, S022