Step-by-step derivation
S001 · implies
Before
source operation=quadratic-membership-witness;original snapshot and mathematics retained
After
explicit ordered source output fields=[p, a, normalized_class, nonzero_roots, nonzero_residue, certificate]
Conditions: none
Retain the historical interface marker while listing source fields without JavaScript.Tags and No retain their claim scope;source-protocol ordering is not a mathematical proof.
Step identifiers and dependencies
Rule: source_ordered_interface_explicit_without_javascript · Uses: G001
S002 · implies
Before
Quadratic ORIGINAL modulus:ORIGINAL integer=5;complete possible trial divisors=[2]
After
ALL [divisor,remainder] rows=[[2, 1]];prime=Yes;a composite>1 has a factor at most its square root
Conditions: none
Check the entire square-root divisor range.The empty range qualifies prime2,but not0 or1.Samples,square tables or an Euler criterion do not replace primality qualification.
Step identifiers and dependencies
Rule: finite_prime_ALL_trial_divisors_through_square_root · Uses: G001, S001
S003 · calculation
Before
Quadratic ORIGINAL nonzero root1 square := mul(1, 1)
After
Quadratic ORIGINAL nonzero root1 square = 1
Conditions: none
Substitute this question's original roles,order and established intermediates exactly,not floats or another question's data.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S002
S004 · implies
Before
ORIGINAL nonzero root x=1 in1..4;actual square=1
After
Euclidean square=0*5+1;nonzero square class=1;complete root-index order retained
Conditions: none
Enumerate every nonzero root with its exact square and modular decomposition.A nonzero x cannot square to0 modulo a prime.This is neither a residue sample nor an Euler/Legendre shortcut.
Step identifiers and dependencies
Rule: quadratic_ALL_nonzero_square_rows_not_sample · Uses: G001, S003
S005 · calculation
Before
Quadratic ORIGINAL nonzero root2 square := mul(2, 2)
After
Quadratic ORIGINAL nonzero root2 square = 4
Conditions: none
Substitute this question's original roles,order and established intermediates exactly,not floats or another question's data.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S004
S006 · implies
Before
ORIGINAL nonzero root x=2 in1..4;actual square=4
After
Euclidean square=0*5+4;nonzero square class=4;complete root-index order retained
Conditions: none
Enumerate every nonzero root with its exact square and modular decomposition.A nonzero x cannot square to0 modulo a prime.This is neither a residue sample nor an Euler/Legendre shortcut.
Step identifiers and dependencies
Rule: quadratic_ALL_nonzero_square_rows_not_sample · Uses: G001, S005
S007 · calculation
Before
Quadratic ORIGINAL nonzero root3 square := mul(3, 3)
After
Quadratic ORIGINAL nonzero root3 square = 9
Conditions: none
Substitute this question's original roles,order and established intermediates exactly,not floats or another question's data.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S006
S008 · implies
Before
ORIGINAL nonzero root x=3 in1..4;actual square=9
After
Euclidean square=1*5+4;nonzero square class=4;complete root-index order retained
Conditions: none
Enumerate every nonzero root with its exact square and modular decomposition.A nonzero x cannot square to0 modulo a prime.This is neither a residue sample nor an Euler/Legendre shortcut.
Step identifiers and dependencies
Rule: quadratic_ALL_nonzero_square_rows_not_sample · Uses: G001, S007
S009 · calculation
Before
Quadratic ORIGINAL nonzero root4 square := mul(4, 4)
After
Quadratic ORIGINAL nonzero root4 square = 16
Conditions: none
Substitute this question's original roles,order and established intermediates exactly,not floats or another question's data.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S008
S010 · implies
Before
ORIGINAL nonzero root x=4 in1..4;actual square=16
After
Euclidean square=3*5+1;nonzero square class=1;complete root-index order retained
Conditions: none
Enumerate every nonzero root with its exact square and modular decomposition.A nonzero x cannot square to0 modulo a prime.This is neither a residue sample nor an Euler/Legendre shortcut.
Step identifiers and dependencies
Rule: quadratic_ALL_nonzero_square_rows_not_sample · Uses: G001, S009
S011 · calculation
Before
Quadratic distinct nonzero residue count := sum(1, 1)
After
Quadratic distinct nonzero residue count = 2
Conditions: none
Substitute this question's original roles,order and established intermediates exactly,not floats or another question's data.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S010
S012 · calculation
Before
Quadratic ORIGINAL modulus minus1 := sub(5, 1)
After
Quadratic ORIGINAL modulus minus1 = 4
Conditions: none
Substitute this question's original roles,order and established intermediates exactly,not floats or another question's data.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S011
S013 · calculation
Before
Quadratic half of all nonzero roots := div(4, 2)
After
Quadratic half of all nonzero roots = 2
Conditions: none
Substitute this question's original roles,order and established intermediates exactly,not floats or another question's data.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S012
S014 · implies
Before
ORIGINAL ODD PRIME p=5;complete nonzero square table=[[1, 1], [2, 4], [3, 4], [4, 1]];distinct classes=[1, 4]
After
x^2=y^2 implies p divides(x-y)(x+y),so x=y or x=-y modp;odd p and nonzero x make opposite roots DISTINCT;each image has2 roots,so residue count=2=(5-1)/2=2
Conditions: none
The prime-field no-zero-divisor property gives x=±y;oddness makes2x nonzero.The opposite pairs partition all p−1 nonzero roots.This proves both counting and two-root statements,not their extension to zero,2 or composite moduli.
Step identifiers and dependencies
Rule: quadratic_prime_field_opposite_root_pairs_exactly_two · Uses: G001, S013
S015 · calculation
Before
Quadratic ORIGINAL candidate class Euclidean quotient times modulus := mul(0, 5)
After
Quadratic ORIGINAL candidate class Euclidean quotient times modulus = 0
Conditions: none
Substitute this question's original roles,order and established intermediates exactly,not floats or another question's data.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S014
S016 · calculation
Before
Quadratic ORIGINAL candidate class ORIGINAL signed value minus multiple := sub(2, 0)
After
Quadratic ORIGINAL candidate class ORIGINAL signed value minus multiple = 2
Conditions: none
Substitute this question's original roles,order and established intermediates exactly,not floats or another question's data.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S015
S017 · implies
Before
Quadratic ORIGINAL candidate class:ORIGINAL signed value=2;positive modulus=5;actual quotient=0
After
canonical residue=2;value=quotient*modulus+residue and0<=residue<modulus
Conditions: none
Retain the original signed value and congruence class via Euclidean division;do not mistake a language-specific negative remainder for the canonical class.
Step identifiers and dependencies
Rule: signed_mod_ORIGINAL_class_normalized_not_changed · Uses: G001, S016