Step-by-step derivation
S001 · implies
Before
source operation=legendre-residue-nonresidue-witness;original snapshot and mathematics retained
After
explicit ordered source output fields=[prime, a, normalized_class, nonzero_roots, Legendre_symbol, certificate]
Conditions: none
Keep the source snapshot while listing ordered fields without JavaScript.Radius uses its original mode to select6 or11 fields without padding;distinguish nonclaims from actual negations.
Step identifiers and dependencies
Rule: source_ordered_interface_explicit_without_javascript · Uses: G001
S002 · implies
Before
Legendre ORIGINAL odd prime:ORIGINAL modulus=7;ALL possible trial divisors through square root=[2]
After
ALL [divisor,remainder] rows=[[2, 1]];prime=Yes
Conditions: none
Qualify primality over the full trial range,not by guessing from Legendre/Euler classification.This is a modulus premise,not the square status of a.
Step identifiers and dependencies
Rule: legendre_complete_prime_trial_not_Euler_classification · Uses: G001, S001
S003 · calculation
Before
Legendre ORIGINAL nonzero root1 exact square := mul(1, 1)
After
Legendre ORIGINAL nonzero root1 exact square = 1
Conditions: none
Substitute original roles and established intermediates exactly,without floats or treating finite tests as universal limits.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S002
S004 · implies
Before
ORIGINAL root x=1 in1..6;exact square=1
After
square=0*7+1;canonical square class=1;ALL root indices retained
Conditions: none
Include every nonzero root.A few squares do not prove another class rootless;no Euler criterion is pre-used.
Step identifiers and dependencies
Rule: legendre_ALL_nonzero_square_rows_before_symbol_definition · Uses: G001, S003
S005 · calculation
Before
Legendre ORIGINAL nonzero root2 exact square := mul(2, 2)
After
Legendre ORIGINAL nonzero root2 exact square = 4
Conditions: none
Substitute original roles and established intermediates exactly,without floats or treating finite tests as universal limits.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S004
S006 · implies
Before
ORIGINAL root x=2 in1..6;exact square=4
After
square=0*7+4;canonical square class=4;ALL root indices retained
Conditions: none
Include every nonzero root.A few squares do not prove another class rootless;no Euler criterion is pre-used.
Step identifiers and dependencies
Rule: legendre_ALL_nonzero_square_rows_before_symbol_definition · Uses: G001, S005
S007 · calculation
Before
Legendre ORIGINAL nonzero root3 exact square := mul(3, 3)
After
Legendre ORIGINAL nonzero root3 exact square = 9
Conditions: none
Substitute original roles and established intermediates exactly,without floats or treating finite tests as universal limits.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S006
S008 · implies
Before
ORIGINAL root x=3 in1..6;exact square=9
After
square=1*7+2;canonical square class=2;ALL root indices retained
Conditions: none
Include every nonzero root.A few squares do not prove another class rootless;no Euler criterion is pre-used.
Step identifiers and dependencies
Rule: legendre_ALL_nonzero_square_rows_before_symbol_definition · Uses: G001, S007
S009 · calculation
Before
Legendre ORIGINAL nonzero root4 exact square := mul(4, 4)
After
Legendre ORIGINAL nonzero root4 exact square = 16
Conditions: none
Substitute original roles and established intermediates exactly,without floats or treating finite tests as universal limits.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S008
S010 · implies
Before
ORIGINAL root x=4 in1..6;exact square=16
After
square=2*7+2;canonical square class=2;ALL root indices retained
Conditions: none
Include every nonzero root.A few squares do not prove another class rootless;no Euler criterion is pre-used.
Step identifiers and dependencies
Rule: legendre_ALL_nonzero_square_rows_before_symbol_definition · Uses: G001, S009
S011 · calculation
Before
Legendre ORIGINAL nonzero root5 exact square := mul(5, 5)
After
Legendre ORIGINAL nonzero root5 exact square = 25
Conditions: none
Substitute original roles and established intermediates exactly,without floats or treating finite tests as universal limits.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S010
S012 · implies
Before
ORIGINAL root x=5 in1..6;exact square=25
After
square=3*7+4;canonical square class=4;ALL root indices retained
Conditions: none
Include every nonzero root.A few squares do not prove another class rootless;no Euler criterion is pre-used.
Step identifiers and dependencies
Rule: legendre_ALL_nonzero_square_rows_before_symbol_definition · Uses: G001, S011
S013 · calculation
Before
Legendre ORIGINAL nonzero root6 exact square := mul(6, 6)
After
Legendre ORIGINAL nonzero root6 exact square = 36
Conditions: none
Substitute original roles and established intermediates exactly,without floats or treating finite tests as universal limits.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S012
S014 · implies
Before
ORIGINAL root x=6 in1..6;exact square=36
After
square=5*7+1;canonical square class=1;ALL root indices retained
Conditions: none
Include every nonzero root.A few squares do not prove another class rootless;no Euler criterion is pre-used.
Step identifiers and dependencies
Rule: legendre_ALL_nonzero_square_rows_before_symbol_definition · Uses: G001, S013
S015 · implies
Before
ORIGINAL prime=7;COMPLETE nonzero square table=[[1, 1], [2, 4], [3, 2], [4, 2], [5, 4], [6, 1]];nonzero square classes=[1, 2, 4]
After
for EACH normalized class r,first r0 ->symbol0;else square-table member ->symbol1;otherwise ->symbol-1;these cases partition ALL0..p-1
Conditions: none
Separate zero first;the fact that0 is a square does not give symbol+1.Nonzero classes are classified by the complete square table.This is definition plus exhaustive evidence,not a later multiplicativity or Euler formula.
Step identifiers and dependencies
Rule: legendre_ZERO_then_residue_nonresidue_three_way_definition · Uses: G001, S014
S016 · calculation
Before
Legendre ORIGINAL candidate class quotient times modulus := mul(0, 7)
After
Legendre ORIGINAL candidate class quotient times modulus = 0
Conditions: none
Substitute original roles and established intermediates exactly,without floats or treating finite tests as universal limits.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S015
S017 · calculation
Before
Legendre ORIGINAL candidate class ORIGINAL signed value minus multiple := sub(3, 0)
After
Legendre ORIGINAL candidate class ORIGINAL signed value minus multiple = 3
Conditions: none
Substitute original roles and established intermediates exactly,without floats or treating finite tests as universal limits.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S016
S018 · implies
Before
Legendre ORIGINAL candidate class:ORIGINAL a=3,positive modulus=7;actual quotient=0
After
normalized class=3;a=quotient*modulus+class;ORIGINAL a retained in output where declared
Conditions: none
Retain the same class for negative a and normalize into0..p−1,rather than using a negative language-specific remainder.
Step identifiers and dependencies
Rule: legendre_ORIGINAL_signed_class_Euclidean_normalization · Uses: G001, S017