Step-by-step derivation
S001 · implies
Before
source operation=legendre-zero-class;original snapshot and mathematics retained
After
explicit ordered source output fields=[prime, a, normalized_class, Legendre_symbol, nonzero_roots, 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=29;ALL possible trial divisors through square root=[2, 3, 4, 5]
After
ALL [divisor,remainder] rows=[[2, 1], [3, 2], [4, 1], [5, 4]];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..28;exact square=1
After
square=0*29+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..28;exact square=4
After
square=0*29+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..28;exact square=9
After
square=0*29+9;canonical square class=9;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..28;exact square=16
After
square=0*29+16;canonical square class=16;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..28;exact square=25
After
square=0*29+25;canonical square class=25;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..28;exact square=36
After
square=1*29+7;canonical square class=7;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 · calculation
Before
Legendre ORIGINAL nonzero root7 exact square := mul(7, 7)
After
Legendre ORIGINAL nonzero root7 exact square = 49
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, S014
S016 · implies
Before
ORIGINAL root x=7 in1..28;exact square=49
After
square=1*29+20;canonical square class=20;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, S015
S017 · calculation
Before
Legendre ORIGINAL nonzero root8 exact square := mul(8, 8)
After
Legendre ORIGINAL nonzero root8 exact square = 64
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
ORIGINAL root x=8 in1..28;exact square=64
After
square=2*29+6;canonical square class=6;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, S017
S019 · calculation
Before
Legendre ORIGINAL nonzero root9 exact square := mul(9, 9)
After
Legendre ORIGINAL nonzero root9 exact square = 81
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, S018
S020 · implies
Before
ORIGINAL root x=9 in1..28;exact square=81
After
square=2*29+23;canonical square class=23;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, S019
S021 · calculation
Before
Legendre ORIGINAL nonzero root10 exact square := mul(10, 10)
After
Legendre ORIGINAL nonzero root10 exact square = 100
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, S020
S022 · implies
Before
ORIGINAL root x=10 in1..28;exact square=100
After
square=3*29+13;canonical square class=13;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, S021
S023 · calculation
Before
Legendre ORIGINAL nonzero root11 exact square := mul(11, 11)
After
Legendre ORIGINAL nonzero root11 exact square = 121
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, S022
S024 · implies
Before
ORIGINAL root x=11 in1..28;exact square=121
After
square=4*29+5;canonical square class=5;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, S023
S025 · calculation
Before
Legendre ORIGINAL nonzero root12 exact square := mul(12, 12)
After
Legendre ORIGINAL nonzero root12 exact square = 144
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, S024
S026 · implies
Before
ORIGINAL root x=12 in1..28;exact square=144
After
square=4*29+28;canonical square class=28;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, S025
S027 · calculation
Before
Legendre ORIGINAL nonzero root13 exact square := mul(13, 13)
After
Legendre ORIGINAL nonzero root13 exact square = 169
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, S026
S028 · implies
Before
ORIGINAL root x=13 in1..28;exact square=169
After
square=5*29+24;canonical square class=24;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, S027
S029 · calculation
Before
Legendre ORIGINAL nonzero root14 exact square := mul(14, 14)
After
Legendre ORIGINAL nonzero root14 exact square = 196
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, S028
S030 · implies
Before
ORIGINAL root x=14 in1..28;exact square=196
After
square=6*29+22;canonical square class=22;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, S029
S031 · calculation
Before
Legendre ORIGINAL nonzero root15 exact square := mul(15, 15)
After
Legendre ORIGINAL nonzero root15 exact square = 225
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, S030
S032 · implies
Before
ORIGINAL root x=15 in1..28;exact square=225
After
square=7*29+22;canonical square class=22;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, S031
S033 · calculation
Before
Legendre ORIGINAL nonzero root16 exact square := mul(16, 16)
After
Legendre ORIGINAL nonzero root16 exact square = 256
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, S032
S034 · implies
Before
ORIGINAL root x=16 in1..28;exact square=256
After
square=8*29+24;canonical square class=24;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, S033
S035 · calculation
Before
Legendre ORIGINAL nonzero root17 exact square := mul(17, 17)
After
Legendre ORIGINAL nonzero root17 exact square = 289
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, S034
S036 · implies
Before
ORIGINAL root x=17 in1..28;exact square=289
After
square=9*29+28;canonical square class=28;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, S035
S037 · calculation
Before
Legendre ORIGINAL nonzero root18 exact square := mul(18, 18)
After
Legendre ORIGINAL nonzero root18 exact square = 324
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, S036
S038 · implies
Before
ORIGINAL root x=18 in1..28;exact square=324
After
square=11*29+5;canonical square class=5;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, S037
S039 · calculation
Before
Legendre ORIGINAL nonzero root19 exact square := mul(19, 19)
After
Legendre ORIGINAL nonzero root19 exact square = 361
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, S038
S040 · implies
Before
ORIGINAL root x=19 in1..28;exact square=361
After
square=12*29+13;canonical square class=13;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, S039
S041 · calculation
Before
Legendre ORIGINAL nonzero root20 exact square := mul(20, 20)
After
Legendre ORIGINAL nonzero root20 exact square = 400
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, S040
S042 · implies
Before
ORIGINAL root x=20 in1..28;exact square=400
After
square=13*29+23;canonical square class=23;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, S041
S043 · calculation
Before
Legendre ORIGINAL nonzero root21 exact square := mul(21, 21)
After
Legendre ORIGINAL nonzero root21 exact square = 441
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, S042
S044 · implies
Before
ORIGINAL root x=21 in1..28;exact square=441
After
square=15*29+6;canonical square class=6;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, S043
S045 · calculation
Before
Legendre ORIGINAL nonzero root22 exact square := mul(22, 22)
After
Legendre ORIGINAL nonzero root22 exact square = 484
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, S044
S046 · implies
Before
ORIGINAL root x=22 in1..28;exact square=484
After
square=16*29+20;canonical square class=20;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, S045
S047 · calculation
Before
Legendre ORIGINAL nonzero root23 exact square := mul(23, 23)
After
Legendre ORIGINAL nonzero root23 exact square = 529
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, S046
S048 · implies
Before
ORIGINAL root x=23 in1..28;exact square=529
After
square=18*29+7;canonical square class=7;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, S047
S049 · calculation
Before
Legendre ORIGINAL nonzero root24 exact square := mul(24, 24)
After
Legendre ORIGINAL nonzero root24 exact square = 576
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, S048
S050 · implies
Before
ORIGINAL root x=24 in1..28;exact square=576
After
square=19*29+25;canonical square class=25;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, S049
S051 · calculation
Before
Legendre ORIGINAL nonzero root25 exact square := mul(25, 25)
After
Legendre ORIGINAL nonzero root25 exact square = 625
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, S050
S052 · implies
Before
ORIGINAL root x=25 in1..28;exact square=625
After
square=21*29+16;canonical square class=16;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, S051
S053 · calculation
Before
Legendre ORIGINAL nonzero root26 exact square := mul(26, 26)
After
Legendre ORIGINAL nonzero root26 exact square = 676
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, S052
S054 · implies
Before
ORIGINAL root x=26 in1..28;exact square=676
After
square=23*29+9;canonical square class=9;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, S053
S055 · calculation
Before
Legendre ORIGINAL nonzero root27 exact square := mul(27, 27)
After
Legendre ORIGINAL nonzero root27 exact square = 729
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, S054
S056 · implies
Before
ORIGINAL root x=27 in1..28;exact square=729
After
square=25*29+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, S055
S057 · calculation
Before
Legendre ORIGINAL nonzero root28 exact square := mul(28, 28)
After
Legendre ORIGINAL nonzero root28 exact square = 784
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, S056
S058 · implies
Before
ORIGINAL root x=28 in1..28;exact square=784
After
square=27*29+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, S057
S059 · implies
Before
ORIGINAL prime=29;COMPLETE nonzero square table=[[1, 1], [2, 4], [3, 9], [4, 16], [5, 25], [6, 7], [7, 20], [8, 6], [9, 23], [10, 13], [11, 5], [12, 28], [13, 24], [14, 22], [15, 22], [16, 24], [17, 28], [18, 5], [19, 13], [20, 23], [21, 6], [22, 20], [23, 7], [24, 25], [25, 16], [26, 9], [27, 4], [28, 1]];nonzero square classes=[1, 4, 5, 6, 7, 9, 13, 16, 20, 22, 23, 24, 25, 28]
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, S058
S060 · calculation
Before
Legendre ORIGINAL candidate class quotient times modulus := mul(9, 29)
After
Legendre ORIGINAL candidate class quotient times modulus = 261
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, S059
S061 · calculation
Before
Legendre ORIGINAL candidate class ORIGINAL signed value minus multiple := sub(261, 261)
After
Legendre ORIGINAL candidate class ORIGINAL signed value minus multiple = 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, S060
S062 · implies
Before
Legendre ORIGINAL candidate class:ORIGINAL a=261,positive modulus=29;actual quotient=9
After
normalized class=0;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, S061