Step-by-step derivation
S001 · implies
Before
source roles = [wilson-prime-inverse-pairing]
After
derived = [[p, all_inverse_pairs, self_inverse_residues, distinct_cancelling_pairs, self_inverse_scope, factorial_residue, Wilson_congruence]]
Conditions: none
List the complete operation/mode field order without JavaScript or answer-shape inference;Boolean,string,null and an unclaimed result remain distinct.
Step identifiers and dependencies
Rule: source_ordered_fields_without_JS · Uses: G001
S002 · implies
Before
source roles = [37, 1]
After
derived = [1, 1]
Conditions: none
Every nonzero residue at a prime modulus is a unit.For each a find the first source inverse;two inverses coincide by cancellation of a.
Step identifiers and dependencies
Rule: Wilson_EVERY_nonzero_prime_residue_unique_inverse · Uses: G001, S001
S003 · implies
Before
source roles = [37, 2]
After
derived = [19, 1]
Conditions: none
Every nonzero residue at a prime modulus is a unit.For each a find the first source inverse;two inverses coincide by cancellation of a.
Step identifiers and dependencies
Rule: Wilson_EVERY_nonzero_prime_residue_unique_inverse · Uses: G001, S002
S004 · implies
Before
source roles = [37, 3]
After
derived = [25, 1]
Conditions: none
Every nonzero residue at a prime modulus is a unit.For each a find the first source inverse;two inverses coincide by cancellation of a.
Step identifiers and dependencies
Rule: Wilson_EVERY_nonzero_prime_residue_unique_inverse · Uses: G001, S003
S005 · implies
Before
source roles = [37, 4]
After
derived = [28, 1]
Conditions: none
Every nonzero residue at a prime modulus is a unit.For each a find the first source inverse;two inverses coincide by cancellation of a.
Step identifiers and dependencies
Rule: Wilson_EVERY_nonzero_prime_residue_unique_inverse · Uses: G001, S004
S006 · implies
Before
source roles = [37, 5]
After
derived = [15, 1]
Conditions: none
Every nonzero residue at a prime modulus is a unit.For each a find the first source inverse;two inverses coincide by cancellation of a.
Step identifiers and dependencies
Rule: Wilson_EVERY_nonzero_prime_residue_unique_inverse · Uses: G001, S005
S007 · implies
Before
source roles = [37, 6]
After
derived = [31, 1]
Conditions: none
Every nonzero residue at a prime modulus is a unit.For each a find the first source inverse;two inverses coincide by cancellation of a.
Step identifiers and dependencies
Rule: Wilson_EVERY_nonzero_prime_residue_unique_inverse · Uses: G001, S006
S008 · implies
Before
source roles = [37, 7]
After
derived = [16, 1]
Conditions: none
Every nonzero residue at a prime modulus is a unit.For each a find the first source inverse;two inverses coincide by cancellation of a.
Step identifiers and dependencies
Rule: Wilson_EVERY_nonzero_prime_residue_unique_inverse · Uses: G001, S007
S009 · implies
Before
source roles = [37, 8]
After
derived = [14, 1]
Conditions: none
Every nonzero residue at a prime modulus is a unit.For each a find the first source inverse;two inverses coincide by cancellation of a.
Step identifiers and dependencies
Rule: Wilson_EVERY_nonzero_prime_residue_unique_inverse · Uses: G001, S008
S010 · implies
Before
source roles = [37, 9]
After
derived = [33, 1]
Conditions: none
Every nonzero residue at a prime modulus is a unit.For each a find the first source inverse;two inverses coincide by cancellation of a.
Step identifiers and dependencies
Rule: Wilson_EVERY_nonzero_prime_residue_unique_inverse · Uses: G001, S009
S011 · implies
Before
source roles = [37, 10]
After
derived = [26, 1]
Conditions: none
Every nonzero residue at a prime modulus is a unit.For each a find the first source inverse;two inverses coincide by cancellation of a.
Step identifiers and dependencies
Rule: Wilson_EVERY_nonzero_prime_residue_unique_inverse · Uses: G001, S010
S012 · implies
Before
source roles = [37, 11]
After
derived = [27, 1]
Conditions: none
Every nonzero residue at a prime modulus is a unit.For each a find the first source inverse;two inverses coincide by cancellation of a.
Step identifiers and dependencies
Rule: Wilson_EVERY_nonzero_prime_residue_unique_inverse · Uses: G001, S011
S013 · implies
Before
source roles = [37, 12]
After
derived = [34, 1]
Conditions: none
Every nonzero residue at a prime modulus is a unit.For each a find the first source inverse;two inverses coincide by cancellation of a.
Step identifiers and dependencies
Rule: Wilson_EVERY_nonzero_prime_residue_unique_inverse · Uses: G001, S012
S014 · implies
Before
source roles = [37, 13]
After
derived = [20, 1]
Conditions: none
Every nonzero residue at a prime modulus is a unit.For each a find the first source inverse;two inverses coincide by cancellation of a.
Step identifiers and dependencies
Rule: Wilson_EVERY_nonzero_prime_residue_unique_inverse · Uses: G001, S013
S015 · implies
Before
source roles = [37, 14]
After
derived = [8, 1]
Conditions: none
Every nonzero residue at a prime modulus is a unit.For each a find the first source inverse;two inverses coincide by cancellation of a.
Step identifiers and dependencies
Rule: Wilson_EVERY_nonzero_prime_residue_unique_inverse · Uses: G001, S014
S016 · implies
Before
source roles = [37, 15]
After
derived = [5, 1]
Conditions: none
Every nonzero residue at a prime modulus is a unit.For each a find the first source inverse;two inverses coincide by cancellation of a.
Step identifiers and dependencies
Rule: Wilson_EVERY_nonzero_prime_residue_unique_inverse · Uses: G001, S015
S017 · implies
Before
source roles = [37, 16]
After
derived = [7, 1]
Conditions: none
Every nonzero residue at a prime modulus is a unit.For each a find the first source inverse;two inverses coincide by cancellation of a.
Step identifiers and dependencies
Rule: Wilson_EVERY_nonzero_prime_residue_unique_inverse · Uses: G001, S016
S018 · implies
Before
source roles = [37, 17]
After
derived = [24, 1]
Conditions: none
Every nonzero residue at a prime modulus is a unit.For each a find the first source inverse;two inverses coincide by cancellation of a.
Step identifiers and dependencies
Rule: Wilson_EVERY_nonzero_prime_residue_unique_inverse · Uses: G001, S017
S019 · implies
Before
source roles = [37, 18]
After
derived = [35, 1]
Conditions: none
Every nonzero residue at a prime modulus is a unit.For each a find the first source inverse;two inverses coincide by cancellation of a.
Step identifiers and dependencies
Rule: Wilson_EVERY_nonzero_prime_residue_unique_inverse · Uses: G001, S018
S020 · implies
Before
source roles = [37, 19]
After
derived = [2, 1]
Conditions: none
Every nonzero residue at a prime modulus is a unit.For each a find the first source inverse;two inverses coincide by cancellation of a.
Step identifiers and dependencies
Rule: Wilson_EVERY_nonzero_prime_residue_unique_inverse · Uses: G001, S019
S021 · implies
Before
source roles = [37, 20]
After
derived = [13, 1]
Conditions: none
Every nonzero residue at a prime modulus is a unit.For each a find the first source inverse;two inverses coincide by cancellation of a.
Step identifiers and dependencies
Rule: Wilson_EVERY_nonzero_prime_residue_unique_inverse · Uses: G001, S020
S022 · implies
Before
source roles = [37, 21]
After
derived = [30, 1]
Conditions: none
Every nonzero residue at a prime modulus is a unit.For each a find the first source inverse;two inverses coincide by cancellation of a.
Step identifiers and dependencies
Rule: Wilson_EVERY_nonzero_prime_residue_unique_inverse · Uses: G001, S021
S023 · implies
Before
source roles = [37, 22]
After
derived = [32, 1]
Conditions: none
Every nonzero residue at a prime modulus is a unit.For each a find the first source inverse;two inverses coincide by cancellation of a.
Step identifiers and dependencies
Rule: Wilson_EVERY_nonzero_prime_residue_unique_inverse · Uses: G001, S022
S024 · implies
Before
source roles = [37, 23]
After
derived = [29, 1]
Conditions: none
Every nonzero residue at a prime modulus is a unit.For each a find the first source inverse;two inverses coincide by cancellation of a.
Step identifiers and dependencies
Rule: Wilson_EVERY_nonzero_prime_residue_unique_inverse · Uses: G001, S023
S025 · implies
Before
source roles = [37, 24]
After
derived = [17, 1]
Conditions: none
Every nonzero residue at a prime modulus is a unit.For each a find the first source inverse;two inverses coincide by cancellation of a.
Step identifiers and dependencies
Rule: Wilson_EVERY_nonzero_prime_residue_unique_inverse · Uses: G001, S024
S026 · implies
Before
source roles = [37, 25]
After
derived = [3, 1]
Conditions: none
Every nonzero residue at a prime modulus is a unit.For each a find the first source inverse;two inverses coincide by cancellation of a.
Step identifiers and dependencies
Rule: Wilson_EVERY_nonzero_prime_residue_unique_inverse · Uses: G001, S025
S027 · implies
Before
source roles = [37, 26]
After
derived = [10, 1]
Conditions: none
Every nonzero residue at a prime modulus is a unit.For each a find the first source inverse;two inverses coincide by cancellation of a.
Step identifiers and dependencies
Rule: Wilson_EVERY_nonzero_prime_residue_unique_inverse · Uses: G001, S026
S028 · implies
Before
source roles = [37, 27]
After
derived = [11, 1]
Conditions: none
Every nonzero residue at a prime modulus is a unit.For each a find the first source inverse;two inverses coincide by cancellation of a.
Step identifiers and dependencies
Rule: Wilson_EVERY_nonzero_prime_residue_unique_inverse · Uses: G001, S027
S029 · implies
Before
source roles = [37, 28]
After
derived = [4, 1]
Conditions: none
Every nonzero residue at a prime modulus is a unit.For each a find the first source inverse;two inverses coincide by cancellation of a.
Step identifiers and dependencies
Rule: Wilson_EVERY_nonzero_prime_residue_unique_inverse · Uses: G001, S028
S030 · implies
Before
source roles = [37, 29]
After
derived = [23, 1]
Conditions: none
Every nonzero residue at a prime modulus is a unit.For each a find the first source inverse;two inverses coincide by cancellation of a.
Step identifiers and dependencies
Rule: Wilson_EVERY_nonzero_prime_residue_unique_inverse · Uses: G001, S029
S031 · implies
Before
source roles = [37, 30]
After
derived = [21, 1]
Conditions: none
Every nonzero residue at a prime modulus is a unit.For each a find the first source inverse;two inverses coincide by cancellation of a.
Step identifiers and dependencies
Rule: Wilson_EVERY_nonzero_prime_residue_unique_inverse · Uses: G001, S030
S032 · implies
Before
source roles = [37, 31]
After
derived = [6, 1]
Conditions: none
Every nonzero residue at a prime modulus is a unit.For each a find the first source inverse;two inverses coincide by cancellation of a.
Step identifiers and dependencies
Rule: Wilson_EVERY_nonzero_prime_residue_unique_inverse · Uses: G001, S031
S033 · implies
Before
source roles = [37, 32]
After
derived = [22, 1]
Conditions: none
Every nonzero residue at a prime modulus is a unit.For each a find the first source inverse;two inverses coincide by cancellation of a.
Step identifiers and dependencies
Rule: Wilson_EVERY_nonzero_prime_residue_unique_inverse · Uses: G001, S032
S034 · implies
Before
source roles = [37, 33]
After
derived = [9, 1]
Conditions: none
Every nonzero residue at a prime modulus is a unit.For each a find the first source inverse;two inverses coincide by cancellation of a.
Step identifiers and dependencies
Rule: Wilson_EVERY_nonzero_prime_residue_unique_inverse · Uses: G001, S033
S035 · implies
Before
source roles = [37, 34]
After
derived = [12, 1]
Conditions: none
Every nonzero residue at a prime modulus is a unit.For each a find the first source inverse;two inverses coincide by cancellation of a.
Step identifiers and dependencies
Rule: Wilson_EVERY_nonzero_prime_residue_unique_inverse · Uses: G001, S034
S036 · implies
Before
source roles = [37, 35]
After
derived = [18, 1]
Conditions: none
Every nonzero residue at a prime modulus is a unit.For each a find the first source inverse;two inverses coincide by cancellation of a.
Step identifiers and dependencies
Rule: Wilson_EVERY_nonzero_prime_residue_unique_inverse · Uses: G001, S035
S037 · implies
Before
source roles = [37, 36]
After
derived = [36, 1]
Conditions: none
Every nonzero residue at a prime modulus is a unit.For each a find the first source inverse;two inverses coincide by cancellation of a.
Step identifiers and dependencies
Rule: Wilson_EVERY_nonzero_prime_residue_unique_inverse · Uses: G001, S036
S038 · calculation
Before
Wilson ORIGINAL prime factorial ORIGINAL running factorial product1 := mul(1, 1)
After
Wilson ORIGINAL prime factorial ORIGINAL running factorial product1 = 1
Conditions: none
Substitute original roles and established intermediates exactly,not approximations or internally consistent changed operands;extra teaching algebra adds no source-domain gate.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S037
S039 · implies
Before
source roles = [Wilson ORIGINAL prime factorial, 37, 1, 1, 1]
After
derived = [0, 1, Yes, Yes]
Conditions: none
Retain the prior residue and full product at every k,then its unique Euclidean remainder in0..n-1.The invariant is value congruent to k! mod n,not an assumed last table entry.
Step identifiers and dependencies
Rule: Wilson_EACH_running_factorial_exact_Euclidean_remainder · Uses: G001, S038
S040 · calculation
Before
Wilson ORIGINAL prime factorial ORIGINAL running factorial product2 := mul(1, 2)
After
Wilson ORIGINAL prime factorial ORIGINAL running factorial product2 = 2
Conditions: none
Substitute original roles and established intermediates exactly,not approximations or internally consistent changed operands;extra teaching algebra adds no source-domain gate.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S039
S041 · implies
Before
source roles = [Wilson ORIGINAL prime factorial, 37, 2, 1, 2]
After
derived = [0, 2, Yes, Yes]
Conditions: none
Retain the prior residue and full product at every k,then its unique Euclidean remainder in0..n-1.The invariant is value congruent to k! mod n,not an assumed last table entry.
Step identifiers and dependencies
Rule: Wilson_EACH_running_factorial_exact_Euclidean_remainder · Uses: G001, S040
S042 · calculation
Before
Wilson ORIGINAL prime factorial ORIGINAL running factorial product3 := mul(2, 3)
After
Wilson ORIGINAL prime factorial ORIGINAL running factorial product3 = 6
Conditions: none
Substitute original roles and established intermediates exactly,not approximations or internally consistent changed operands;extra teaching algebra adds no source-domain gate.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S041
S043 · implies
Before
source roles = [Wilson ORIGINAL prime factorial, 37, 3, 2, 6]
After
derived = [0, 6, Yes, Yes]
Conditions: none
Retain the prior residue and full product at every k,then its unique Euclidean remainder in0..n-1.The invariant is value congruent to k! mod n,not an assumed last table entry.
Step identifiers and dependencies
Rule: Wilson_EACH_running_factorial_exact_Euclidean_remainder · Uses: G001, S042
S044 · calculation
Before
Wilson ORIGINAL prime factorial ORIGINAL running factorial product4 := mul(6, 4)
After
Wilson ORIGINAL prime factorial ORIGINAL running factorial product4 = 24
Conditions: none
Substitute original roles and established intermediates exactly,not approximations or internally consistent changed operands;extra teaching algebra adds no source-domain gate.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S043
S045 · implies
Before
source roles = [Wilson ORIGINAL prime factorial, 37, 4, 6, 24]
After
derived = [0, 24, Yes, Yes]
Conditions: none
Retain the prior residue and full product at every k,then its unique Euclidean remainder in0..n-1.The invariant is value congruent to k! mod n,not an assumed last table entry.
Step identifiers and dependencies
Rule: Wilson_EACH_running_factorial_exact_Euclidean_remainder · Uses: G001, S044
S046 · calculation
Before
Wilson ORIGINAL prime factorial ORIGINAL running factorial product5 := mul(24, 5)
After
Wilson ORIGINAL prime factorial ORIGINAL running factorial product5 = 120
Conditions: none
Substitute original roles and established intermediates exactly,not approximations or internally consistent changed operands;extra teaching algebra adds no source-domain gate.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S045
S047 · implies
Before
source roles = [Wilson ORIGINAL prime factorial, 37, 5, 24, 120]
After
derived = [3, 9, Yes, Yes]
Conditions: none
Retain the prior residue and full product at every k,then its unique Euclidean remainder in0..n-1.The invariant is value congruent to k! mod n,not an assumed last table entry.
Step identifiers and dependencies
Rule: Wilson_EACH_running_factorial_exact_Euclidean_remainder · Uses: G001, S046
S048 · calculation
Before
Wilson ORIGINAL prime factorial ORIGINAL running factorial product6 := mul(9, 6)
After
Wilson ORIGINAL prime factorial ORIGINAL running factorial product6 = 54
Conditions: none
Substitute original roles and established intermediates exactly,not approximations or internally consistent changed operands;extra teaching algebra adds no source-domain gate.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S047
S049 · implies
Before
source roles = [Wilson ORIGINAL prime factorial, 37, 6, 9, 54]
After
derived = [1, 17, Yes, Yes]
Conditions: none
Retain the prior residue and full product at every k,then its unique Euclidean remainder in0..n-1.The invariant is value congruent to k! mod n,not an assumed last table entry.
Step identifiers and dependencies
Rule: Wilson_EACH_running_factorial_exact_Euclidean_remainder · Uses: G001, S048
S050 · calculation
Before
Wilson ORIGINAL prime factorial ORIGINAL running factorial product7 := mul(17, 7)
After
Wilson ORIGINAL prime factorial ORIGINAL running factorial product7 = 119
Conditions: none
Substitute original roles and established intermediates exactly,not approximations or internally consistent changed operands;extra teaching algebra adds no source-domain gate.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S049
S051 · implies
Before
source roles = [Wilson ORIGINAL prime factorial, 37, 7, 17, 119]
After
derived = [3, 8, Yes, Yes]
Conditions: none
Retain the prior residue and full product at every k,then its unique Euclidean remainder in0..n-1.The invariant is value congruent to k! mod n,not an assumed last table entry.
Step identifiers and dependencies
Rule: Wilson_EACH_running_factorial_exact_Euclidean_remainder · Uses: G001, S050
S052 · calculation
Before
Wilson ORIGINAL prime factorial ORIGINAL running factorial product8 := mul(8, 8)
After
Wilson ORIGINAL prime factorial ORIGINAL running factorial product8 = 64
Conditions: none
Substitute original roles and established intermediates exactly,not approximations or internally consistent changed operands;extra teaching algebra adds no source-domain gate.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S051
S053 · implies
Before
source roles = [Wilson ORIGINAL prime factorial, 37, 8, 8, 64]
After
derived = [1, 27, Yes, Yes]
Conditions: none
Retain the prior residue and full product at every k,then its unique Euclidean remainder in0..n-1.The invariant is value congruent to k! mod n,not an assumed last table entry.
Step identifiers and dependencies
Rule: Wilson_EACH_running_factorial_exact_Euclidean_remainder · Uses: G001, S052
S054 · calculation
Before
Wilson ORIGINAL prime factorial ORIGINAL running factorial product9 := mul(27, 9)
After
Wilson ORIGINAL prime factorial ORIGINAL running factorial product9 = 243
Conditions: none
Substitute original roles and established intermediates exactly,not approximations or internally consistent changed operands;extra teaching algebra adds no source-domain gate.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S053
S055 · implies
Before
source roles = [Wilson ORIGINAL prime factorial, 37, 9, 27, 243]
After
derived = [6, 21, Yes, Yes]
Conditions: none
Retain the prior residue and full product at every k,then its unique Euclidean remainder in0..n-1.The invariant is value congruent to k! mod n,not an assumed last table entry.
Step identifiers and dependencies
Rule: Wilson_EACH_running_factorial_exact_Euclidean_remainder · Uses: G001, S054
S056 · calculation
Before
Wilson ORIGINAL prime factorial ORIGINAL running factorial product10 := mul(21, 10)
After
Wilson ORIGINAL prime factorial ORIGINAL running factorial product10 = 210
Conditions: none
Substitute original roles and established intermediates exactly,not approximations or internally consistent changed operands;extra teaching algebra adds no source-domain gate.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S055
S057 · implies
Before
source roles = [Wilson ORIGINAL prime factorial, 37, 10, 21, 210]
After
derived = [5, 25, Yes, Yes]
Conditions: none
Retain the prior residue and full product at every k,then its unique Euclidean remainder in0..n-1.The invariant is value congruent to k! mod n,not an assumed last table entry.
Step identifiers and dependencies
Rule: Wilson_EACH_running_factorial_exact_Euclidean_remainder · Uses: G001, S056
S058 · calculation
Before
Wilson ORIGINAL prime factorial ORIGINAL running factorial product11 := mul(25, 11)
After
Wilson ORIGINAL prime factorial ORIGINAL running factorial product11 = 275
Conditions: none
Substitute original roles and established intermediates exactly,not approximations or internally consistent changed operands;extra teaching algebra adds no source-domain gate.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S057
S059 · implies
Before
source roles = [Wilson ORIGINAL prime factorial, 37, 11, 25, 275]
After
derived = [7, 16, Yes, Yes]
Conditions: none
Retain the prior residue and full product at every k,then its unique Euclidean remainder in0..n-1.The invariant is value congruent to k! mod n,not an assumed last table entry.
Step identifiers and dependencies
Rule: Wilson_EACH_running_factorial_exact_Euclidean_remainder · Uses: G001, S058
S060 · calculation
Before
Wilson ORIGINAL prime factorial ORIGINAL running factorial product12 := mul(16, 12)
After
Wilson ORIGINAL prime factorial ORIGINAL running factorial product12 = 192
Conditions: none
Substitute original roles and established intermediates exactly,not approximations or internally consistent changed operands;extra teaching algebra adds no source-domain gate.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S059
S061 · implies
Before
source roles = [Wilson ORIGINAL prime factorial, 37, 12, 16, 192]
After
derived = [5, 7, Yes, Yes]
Conditions: none
Retain the prior residue and full product at every k,then its unique Euclidean remainder in0..n-1.The invariant is value congruent to k! mod n,not an assumed last table entry.
Step identifiers and dependencies
Rule: Wilson_EACH_running_factorial_exact_Euclidean_remainder · Uses: G001, S060
S062 · calculation
Before
Wilson ORIGINAL prime factorial ORIGINAL running factorial product13 := mul(7, 13)
After
Wilson ORIGINAL prime factorial ORIGINAL running factorial product13 = 91
Conditions: none
Substitute original roles and established intermediates exactly,not approximations or internally consistent changed operands;extra teaching algebra adds no source-domain gate.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S061
S063 · implies
Before
source roles = [Wilson ORIGINAL prime factorial, 37, 13, 7, 91]
After
derived = [2, 17, Yes, Yes]
Conditions: none
Retain the prior residue and full product at every k,then its unique Euclidean remainder in0..n-1.The invariant is value congruent to k! mod n,not an assumed last table entry.
Step identifiers and dependencies
Rule: Wilson_EACH_running_factorial_exact_Euclidean_remainder · Uses: G001, S062
S064 · calculation
Before
Wilson ORIGINAL prime factorial ORIGINAL running factorial product14 := mul(17, 14)
After
Wilson ORIGINAL prime factorial ORIGINAL running factorial product14 = 238
Conditions: none
Substitute original roles and established intermediates exactly,not approximations or internally consistent changed operands;extra teaching algebra adds no source-domain gate.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S063
S065 · implies
Before
source roles = [Wilson ORIGINAL prime factorial, 37, 14, 17, 238]
After
derived = [6, 16, Yes, Yes]
Conditions: none
Retain the prior residue and full product at every k,then its unique Euclidean remainder in0..n-1.The invariant is value congruent to k! mod n,not an assumed last table entry.
Step identifiers and dependencies
Rule: Wilson_EACH_running_factorial_exact_Euclidean_remainder · Uses: G001, S064
S066 · calculation
Before
Wilson ORIGINAL prime factorial ORIGINAL running factorial product15 := mul(16, 15)
After
Wilson ORIGINAL prime factorial ORIGINAL running factorial product15 = 240
Conditions: none
Substitute original roles and established intermediates exactly,not approximations or internally consistent changed operands;extra teaching algebra adds no source-domain gate.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S065
S067 · implies
Before
source roles = [Wilson ORIGINAL prime factorial, 37, 15, 16, 240]
After
derived = [6, 18, Yes, Yes]
Conditions: none
Retain the prior residue and full product at every k,then its unique Euclidean remainder in0..n-1.The invariant is value congruent to k! mod n,not an assumed last table entry.
Step identifiers and dependencies
Rule: Wilson_EACH_running_factorial_exact_Euclidean_remainder · Uses: G001, S066
S068 · calculation
Before
Wilson ORIGINAL prime factorial ORIGINAL running factorial product16 := mul(18, 16)
After
Wilson ORIGINAL prime factorial ORIGINAL running factorial product16 = 288
Conditions: none
Substitute original roles and established intermediates exactly,not approximations or internally consistent changed operands;extra teaching algebra adds no source-domain gate.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S067
S069 · implies
Before
source roles = [Wilson ORIGINAL prime factorial, 37, 16, 18, 288]
After
derived = [7, 29, Yes, Yes]
Conditions: none
Retain the prior residue and full product at every k,then its unique Euclidean remainder in0..n-1.The invariant is value congruent to k! mod n,not an assumed last table entry.
Step identifiers and dependencies
Rule: Wilson_EACH_running_factorial_exact_Euclidean_remainder · Uses: G001, S068
S070 · calculation
Before
Wilson ORIGINAL prime factorial ORIGINAL running factorial product17 := mul(29, 17)
After
Wilson ORIGINAL prime factorial ORIGINAL running factorial product17 = 493
Conditions: none
Substitute original roles and established intermediates exactly,not approximations or internally consistent changed operands;extra teaching algebra adds no source-domain gate.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S069
S071 · implies
Before
source roles = [Wilson ORIGINAL prime factorial, 37, 17, 29, 493]
After
derived = [13, 12, Yes, Yes]
Conditions: none
Retain the prior residue and full product at every k,then its unique Euclidean remainder in0..n-1.The invariant is value congruent to k! mod n,not an assumed last table entry.
Step identifiers and dependencies
Rule: Wilson_EACH_running_factorial_exact_Euclidean_remainder · Uses: G001, S070
S072 · calculation
Before
Wilson ORIGINAL prime factorial ORIGINAL running factorial product18 := mul(12, 18)
After
Wilson ORIGINAL prime factorial ORIGINAL running factorial product18 = 216
Conditions: none
Substitute original roles and established intermediates exactly,not approximations or internally consistent changed operands;extra teaching algebra adds no source-domain gate.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S071
S073 · implies
Before
source roles = [Wilson ORIGINAL prime factorial, 37, 18, 12, 216]
After
derived = [5, 31, Yes, Yes]
Conditions: none
Retain the prior residue and full product at every k,then its unique Euclidean remainder in0..n-1.The invariant is value congruent to k! mod n,not an assumed last table entry.
Step identifiers and dependencies
Rule: Wilson_EACH_running_factorial_exact_Euclidean_remainder · Uses: G001, S072
S074 · calculation
Before
Wilson ORIGINAL prime factorial ORIGINAL running factorial product19 := mul(31, 19)
After
Wilson ORIGINAL prime factorial ORIGINAL running factorial product19 = 589
Conditions: none
Substitute original roles and established intermediates exactly,not approximations or internally consistent changed operands;extra teaching algebra adds no source-domain gate.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S073
S075 · implies
Before
source roles = [Wilson ORIGINAL prime factorial, 37, 19, 31, 589]
After
derived = [15, 34, Yes, Yes]
Conditions: none
Retain the prior residue and full product at every k,then its unique Euclidean remainder in0..n-1.The invariant is value congruent to k! mod n,not an assumed last table entry.
Step identifiers and dependencies
Rule: Wilson_EACH_running_factorial_exact_Euclidean_remainder · Uses: G001, S074
S076 · calculation
Before
Wilson ORIGINAL prime factorial ORIGINAL running factorial product20 := mul(34, 20)
After
Wilson ORIGINAL prime factorial ORIGINAL running factorial product20 = 680
Conditions: none
Substitute original roles and established intermediates exactly,not approximations or internally consistent changed operands;extra teaching algebra adds no source-domain gate.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S075
S077 · implies
Before
source roles = [Wilson ORIGINAL prime factorial, 37, 20, 34, 680]
After
derived = [18, 14, Yes, Yes]
Conditions: none
Retain the prior residue and full product at every k,then its unique Euclidean remainder in0..n-1.The invariant is value congruent to k! mod n,not an assumed last table entry.
Step identifiers and dependencies
Rule: Wilson_EACH_running_factorial_exact_Euclidean_remainder · Uses: G001, S076
S078 · calculation
Before
Wilson ORIGINAL prime factorial ORIGINAL running factorial product21 := mul(14, 21)
After
Wilson ORIGINAL prime factorial ORIGINAL running factorial product21 = 294
Conditions: none
Substitute original roles and established intermediates exactly,not approximations or internally consistent changed operands;extra teaching algebra adds no source-domain gate.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S077
S079 · implies
Before
source roles = [Wilson ORIGINAL prime factorial, 37, 21, 14, 294]
After
derived = [7, 35, Yes, Yes]
Conditions: none
Retain the prior residue and full product at every k,then its unique Euclidean remainder in0..n-1.The invariant is value congruent to k! mod n,not an assumed last table entry.
Step identifiers and dependencies
Rule: Wilson_EACH_running_factorial_exact_Euclidean_remainder · Uses: G001, S078
S080 · calculation
Before
Wilson ORIGINAL prime factorial ORIGINAL running factorial product22 := mul(35, 22)
After
Wilson ORIGINAL prime factorial ORIGINAL running factorial product22 = 770
Conditions: none
Substitute original roles and established intermediates exactly,not approximations or internally consistent changed operands;extra teaching algebra adds no source-domain gate.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S079
S081 · implies
Before
source roles = [Wilson ORIGINAL prime factorial, 37, 22, 35, 770]
After
derived = [20, 30, Yes, Yes]
Conditions: none
Retain the prior residue and full product at every k,then its unique Euclidean remainder in0..n-1.The invariant is value congruent to k! mod n,not an assumed last table entry.
Step identifiers and dependencies
Rule: Wilson_EACH_running_factorial_exact_Euclidean_remainder · Uses: G001, S080
S082 · calculation
Before
Wilson ORIGINAL prime factorial ORIGINAL running factorial product23 := mul(30, 23)
After
Wilson ORIGINAL prime factorial ORIGINAL running factorial product23 = 690
Conditions: none
Substitute original roles and established intermediates exactly,not approximations or internally consistent changed operands;extra teaching algebra adds no source-domain gate.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S081
S083 · implies
Before
source roles = [Wilson ORIGINAL prime factorial, 37, 23, 30, 690]
After
derived = [18, 24, Yes, Yes]
Conditions: none
Retain the prior residue and full product at every k,then its unique Euclidean remainder in0..n-1.The invariant is value congruent to k! mod n,not an assumed last table entry.
Step identifiers and dependencies
Rule: Wilson_EACH_running_factorial_exact_Euclidean_remainder · Uses: G001, S082
S084 · calculation
Before
Wilson ORIGINAL prime factorial ORIGINAL running factorial product24 := mul(24, 24)
After
Wilson ORIGINAL prime factorial ORIGINAL running factorial product24 = 576
Conditions: none
Substitute original roles and established intermediates exactly,not approximations or internally consistent changed operands;extra teaching algebra adds no source-domain gate.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S083
S085 · implies
Before
source roles = [Wilson ORIGINAL prime factorial, 37, 24, 24, 576]
After
derived = [15, 21, Yes, Yes]
Conditions: none
Retain the prior residue and full product at every k,then its unique Euclidean remainder in0..n-1.The invariant is value congruent to k! mod n,not an assumed last table entry.
Step identifiers and dependencies
Rule: Wilson_EACH_running_factorial_exact_Euclidean_remainder · Uses: G001, S084
S086 · calculation
Before
Wilson ORIGINAL prime factorial ORIGINAL running factorial product25 := mul(21, 25)
After
Wilson ORIGINAL prime factorial ORIGINAL running factorial product25 = 525
Conditions: none
Substitute original roles and established intermediates exactly,not approximations or internally consistent changed operands;extra teaching algebra adds no source-domain gate.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S085
S087 · implies
Before
source roles = [Wilson ORIGINAL prime factorial, 37, 25, 21, 525]
After
derived = [14, 7, Yes, Yes]
Conditions: none
Retain the prior residue and full product at every k,then its unique Euclidean remainder in0..n-1.The invariant is value congruent to k! mod n,not an assumed last table entry.
Step identifiers and dependencies
Rule: Wilson_EACH_running_factorial_exact_Euclidean_remainder · Uses: G001, S086
S088 · calculation
Before
Wilson ORIGINAL prime factorial ORIGINAL running factorial product26 := mul(7, 26)
After
Wilson ORIGINAL prime factorial ORIGINAL running factorial product26 = 182
Conditions: none
Substitute original roles and established intermediates exactly,not approximations or internally consistent changed operands;extra teaching algebra adds no source-domain gate.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S087
S089 · implies
Before
source roles = [Wilson ORIGINAL prime factorial, 37, 26, 7, 182]
After
derived = [4, 34, Yes, Yes]
Conditions: none
Retain the prior residue and full product at every k,then its unique Euclidean remainder in0..n-1.The invariant is value congruent to k! mod n,not an assumed last table entry.
Step identifiers and dependencies
Rule: Wilson_EACH_running_factorial_exact_Euclidean_remainder · Uses: G001, S088
S090 · calculation
Before
Wilson ORIGINAL prime factorial ORIGINAL running factorial product27 := mul(34, 27)
After
Wilson ORIGINAL prime factorial ORIGINAL running factorial product27 = 918
Conditions: none
Substitute original roles and established intermediates exactly,not approximations or internally consistent changed operands;extra teaching algebra adds no source-domain gate.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S089
S091 · implies
Before
source roles = [Wilson ORIGINAL prime factorial, 37, 27, 34, 918]
After
derived = [24, 30, Yes, Yes]
Conditions: none
Retain the prior residue and full product at every k,then its unique Euclidean remainder in0..n-1.The invariant is value congruent to k! mod n,not an assumed last table entry.
Step identifiers and dependencies
Rule: Wilson_EACH_running_factorial_exact_Euclidean_remainder · Uses: G001, S090
S092 · calculation
Before
Wilson ORIGINAL prime factorial ORIGINAL running factorial product28 := mul(30, 28)
After
Wilson ORIGINAL prime factorial ORIGINAL running factorial product28 = 840
Conditions: none
Substitute original roles and established intermediates exactly,not approximations or internally consistent changed operands;extra teaching algebra adds no source-domain gate.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S091
S093 · implies
Before
source roles = [Wilson ORIGINAL prime factorial, 37, 28, 30, 840]
After
derived = [22, 26, Yes, Yes]
Conditions: none
Retain the prior residue and full product at every k,then its unique Euclidean remainder in0..n-1.The invariant is value congruent to k! mod n,not an assumed last table entry.
Step identifiers and dependencies
Rule: Wilson_EACH_running_factorial_exact_Euclidean_remainder · Uses: G001, S092
S094 · calculation
Before
Wilson ORIGINAL prime factorial ORIGINAL running factorial product29 := mul(26, 29)
After
Wilson ORIGINAL prime factorial ORIGINAL running factorial product29 = 754
Conditions: none
Substitute original roles and established intermediates exactly,not approximations or internally consistent changed operands;extra teaching algebra adds no source-domain gate.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S093
S095 · implies
Before
source roles = [Wilson ORIGINAL prime factorial, 37, 29, 26, 754]
After
derived = [20, 14, Yes, Yes]
Conditions: none
Retain the prior residue and full product at every k,then its unique Euclidean remainder in0..n-1.The invariant is value congruent to k! mod n,not an assumed last table entry.
Step identifiers and dependencies
Rule: Wilson_EACH_running_factorial_exact_Euclidean_remainder · Uses: G001, S094
S096 · calculation
Before
Wilson ORIGINAL prime factorial ORIGINAL running factorial product30 := mul(14, 30)
After
Wilson ORIGINAL prime factorial ORIGINAL running factorial product30 = 420
Conditions: none
Substitute original roles and established intermediates exactly,not approximations or internally consistent changed operands;extra teaching algebra adds no source-domain gate.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S095
S097 · implies
Before
source roles = [Wilson ORIGINAL prime factorial, 37, 30, 14, 420]
After
derived = [11, 13, Yes, Yes]
Conditions: none
Retain the prior residue and full product at every k,then its unique Euclidean remainder in0..n-1.The invariant is value congruent to k! mod n,not an assumed last table entry.
Step identifiers and dependencies
Rule: Wilson_EACH_running_factorial_exact_Euclidean_remainder · Uses: G001, S096
S098 · calculation
Before
Wilson ORIGINAL prime factorial ORIGINAL running factorial product31 := mul(13, 31)
After
Wilson ORIGINAL prime factorial ORIGINAL running factorial product31 = 403
Conditions: none
Substitute original roles and established intermediates exactly,not approximations or internally consistent changed operands;extra teaching algebra adds no source-domain gate.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S097
S099 · implies
Before
source roles = [Wilson ORIGINAL prime factorial, 37, 31, 13, 403]
After
derived = [10, 33, Yes, Yes]
Conditions: none
Retain the prior residue and full product at every k,then its unique Euclidean remainder in0..n-1.The invariant is value congruent to k! mod n,not an assumed last table entry.
Step identifiers and dependencies
Rule: Wilson_EACH_running_factorial_exact_Euclidean_remainder · Uses: G001, S098
S100 · calculation
Before
Wilson ORIGINAL prime factorial ORIGINAL running factorial product32 := mul(33, 32)
After
Wilson ORIGINAL prime factorial ORIGINAL running factorial product32 = 1056
Conditions: none
Substitute original roles and established intermediates exactly,not approximations or internally consistent changed operands;extra teaching algebra adds no source-domain gate.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S099
S101 · implies
Before
source roles = [Wilson ORIGINAL prime factorial, 37, 32, 33, 1056]
After
derived = [28, 20, Yes, Yes]
Conditions: none
Retain the prior residue and full product at every k,then its unique Euclidean remainder in0..n-1.The invariant is value congruent to k! mod n,not an assumed last table entry.
Step identifiers and dependencies
Rule: Wilson_EACH_running_factorial_exact_Euclidean_remainder · Uses: G001, S100
S102 · calculation
Before
Wilson ORIGINAL prime factorial ORIGINAL running factorial product33 := mul(20, 33)
After
Wilson ORIGINAL prime factorial ORIGINAL running factorial product33 = 660
Conditions: none
Substitute original roles and established intermediates exactly,not approximations or internally consistent changed operands;extra teaching algebra adds no source-domain gate.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S101
S103 · implies
Before
source roles = [Wilson ORIGINAL prime factorial, 37, 33, 20, 660]
After
derived = [17, 31, Yes, Yes]
Conditions: none
Retain the prior residue and full product at every k,then its unique Euclidean remainder in0..n-1.The invariant is value congruent to k! mod n,not an assumed last table entry.
Step identifiers and dependencies
Rule: Wilson_EACH_running_factorial_exact_Euclidean_remainder · Uses: G001, S102
S104 · calculation
Before
Wilson ORIGINAL prime factorial ORIGINAL running factorial product34 := mul(31, 34)
After
Wilson ORIGINAL prime factorial ORIGINAL running factorial product34 = 1054
Conditions: none
Substitute original roles and established intermediates exactly,not approximations or internally consistent changed operands;extra teaching algebra adds no source-domain gate.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S103
S105 · implies
Before
source roles = [Wilson ORIGINAL prime factorial, 37, 34, 31, 1054]
After
derived = [28, 18, Yes, Yes]
Conditions: none
Retain the prior residue and full product at every k,then its unique Euclidean remainder in0..n-1.The invariant is value congruent to k! mod n,not an assumed last table entry.
Step identifiers and dependencies
Rule: Wilson_EACH_running_factorial_exact_Euclidean_remainder · Uses: G001, S104
S106 · calculation
Before
Wilson ORIGINAL prime factorial ORIGINAL running factorial product35 := mul(18, 35)
After
Wilson ORIGINAL prime factorial ORIGINAL running factorial product35 = 630
Conditions: none
Substitute original roles and established intermediates exactly,not approximations or internally consistent changed operands;extra teaching algebra adds no source-domain gate.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S105
S107 · implies
Before
source roles = [Wilson ORIGINAL prime factorial, 37, 35, 18, 630]
After
derived = [17, 1, Yes, Yes]
Conditions: none
Retain the prior residue and full product at every k,then its unique Euclidean remainder in0..n-1.The invariant is value congruent to k! mod n,not an assumed last table entry.
Step identifiers and dependencies
Rule: Wilson_EACH_running_factorial_exact_Euclidean_remainder · Uses: G001, S106
S108 · calculation
Before
Wilson ORIGINAL prime factorial ORIGINAL running factorial product36 := mul(1, 36)
After
Wilson ORIGINAL prime factorial ORIGINAL running factorial product36 = 36
Conditions: none
Substitute original roles and established intermediates exactly,not approximations or internally consistent changed operands;extra teaching algebra adds no source-domain gate.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S107
S109 · implies
Before
source roles = [Wilson ORIGINAL prime factorial, 37, 36, 1, 36]
After
derived = [0, 36, Yes, Yes]
Conditions: none
Retain the prior residue and full product at every k,then its unique Euclidean remainder in0..n-1.The invariant is value congruent to k! mod n,not an assumed last table entry.
Step identifiers and dependencies
Rule: Wilson_EACH_running_factorial_exact_Euclidean_remainder · Uses: G001, S108
S110 · implies
Before
source roles = [37, [[1, 1], [2, 19], [3, 25], [4, 28], [5, 15], [6, 31], [7, 16], [8, 14], [9, 33], [10, 26], [11, 27], [12, 34], [13, 20], [14, 8], [15, 5], [16, 7], [17, 24], [18, 35], [19, 2], [20, 13], [21, 30], [22, 32], [23, 29], [24, 17], [25, 3], [26, 10], [27, 11], [28, 4], [29, 23], [30, 21], [31, 6], [32, 22], [33, 9], [34, 12], [35, 18], [36, 36]]]
After
derived = [[1, 36], [[2, 19, 1], [3, 25, 1], [4, 28, 1], [5, 15, 1], [6, 31, 1], [7, 16, 1], [8, 14, 1], [9, 33, 1], [10, 26, 1], [11, 27, 1], [12, 34, 1], [13, 20, 1], [17, 24, 1], [18, 35, 1], [21, 30, 1], [22, 32, 1], [23, 29, 1]], 36, Yes]
Conditions: none
Nonself inverse pairs multiply to1.A self-inverse satisfies(r-1)(r+1)=0 modulo a prime,so is±1.For p>2 their product is-1;at p2 only the single1=-1 remains.This general teaching argument does not turn the finite table/program into a Lean proof.
Step identifiers and dependencies
Rule: Wilson_GENERAL_inverse_pairing_and_p2_exception · Uses: G001, S109
Result
(37, [[1, 1], [2, 19], [3, 25], [4, 28], [5, 15], [6, 31], [7, 16], [8, 14], [9, 33], [10, 26], [11, 27], [12, 34], [13, 20], [14, 8], [15, 5], [16, 7], [17, 24], [18, 35], [19, 2], [20, 13], [21, 30], [22, 32], [23, 29], [24, 17], [25, 3], [26, 10], [27, 11], [28, 4], [29, 23], [30, 21], [31, 6], [32, 22], [33, 9], [34, 12], [35, 18], [36, 36]], [1, 36], [[2, 19, 1], [3, 25, 1], [4, 28, 1], [5, 15, 1], [6, 31, 1], [7, 16, 1], [8, 14, 1], [9, 33, 1], [10, 26, 1], [11, 27, 1], [12, 34, 1], [13, 20, 1], [17, 24, 1], [18, 35, 1], [21, 30, 1], [22, 32, 1], [23, 29, 1]], self_inverse_residues_1_and_p_minus_1, 36, Yes)
The full substitutions and premise checks give the original answer; source identity,format and status are unchanged.