Explore related knowledge and questions →

Question 61: Normalize the Inverse Representative, Not the Bezout Coefficients

On this page
  1. Original question and givens
  2. Definition and scope
  3. Step-by-step derivation
  4. Reverse checks
  5. Result
  6. This question review and source binding

Return to catalogue page 1

← Question derivation index · Original question batch

P250-0061 · q-20261014-advance-20261103-r07-modular-inverse-0061

Original question and givens

Use the original signed integer a=2 and modulus n=37≥2. Exact extended Euclid gives nonnegative g=gcd(a,n) and signed coefficients x,y satisfying a*x+n*y=g. An inverse exists exactly when g=1; normalize its representative to 0≤inverse<n. Uniqueness means one residue class modulo n, not a unique integer representative. This family excludes moduli 0 and 1 and does not use approximate division. Require gcd(a,n)=1. Give (a,n,inverse,product_mod_n,valid?,unique_modulo_n).

  • G001 — Use the original signed integer a=2 and modulus n=37≥2. Exact extended Euclid gives nonnegative g=gcd(a,n) and signed coefficients x,y satisfying a*x+n*y=g. An inverse exists exactly when g=1; normalize its representative to 0≤inverse<n. Uniqueness means one residue class modulo n, not a unique integer representative. This family excludes moduli 0 and 1 and does not use approximate division. Require gcd(a,n)=1. Give (a,n,inverse,product_mod_n,valid?,unique_modulo_n).

Definition and scope

Use integer modulus n≥2 with gcd(a,n)=1. Uniqueness concerns the residue class and its representative in the declared interval.

Step-by-step derivation

S001 · implies

Before

a=2, modulus=37

After

n=37≥2; seek u with 2u≡1 (mod 37)

Conditions: none

Fix the modulus and inverse condition; the integer product need not equal 1.

Step identifiers and dependencies

Rule: inverse_definition · Uses: G001

S002 · implies

Before

divide 2 by 37

After

2=0·37+2

Conditions: 0≤2<37

The quotient is 0 and remainder 2; continue with the preceding divisor and remainder.

Step identifiers and dependencies

Rule: euclidean_division · Uses: G001, S001

S003 · implies

Before

divide 37 by 2

After

37=18·2+1

Conditions: 0≤1<2

The quotient is 18 and remainder 1; continue with the preceding divisor and remainder.

Step identifiers and dependencies

Rule: euclidean_division · Uses: G001, S002

S004 · implies

Before

divide 2 by 1

After

2=2·1+0

Conditions: 0≤0<1

The quotient is 2 and remainder 0; continue with the preceding divisor and remainder.

Step identifiers and dependencies

Rule: euclidean_division · Uses: G001, S003

S005 · implies

Before

last nonzero Euclidean remainder

After

gcd(2,37)=1; 2·(-18)+37·(1)=1

Conditions: none

Track integer linear combinations along the division chain to obtain this explicit Bezout identity.

Step identifiers and dependencies

Rule: bezout_identity · Uses: G001, S004

S006 · implies

Before

2·(-18)+37·(1)=1

After

-18 mod 37=19; 0≤19<37

Conditions: none

The coefficient of a represents the inverse class; reduce it to the required representative interval.

Step identifiers and dependencies

Rule: normalize_residue · Uses: G001, S005

S007 · calculation

Before

a·u := mul(2, 19)

After

a·u = 38

Conditions: none

Multiply the original a by the normalized inverse.

Step identifiers and dependencies

Rule: exact_rational_arithmetic · Uses: G001, S006

S008 · implies

Before

a·u=38

After

38=1·37+1 ⇒ a·u mod n=1

Conditions: none

The product minus 1 is an integer multiple of the modulus, verifying the inverse condition.

Step identifiers and dependencies

Rule: congruence_check · Uses: G001, S007

S009 · implies

Before

a·v≡a·u≡1 (mod n), gcd(a,n)=1

After

n divides v−u; if 0≤u,v<n then u=v

Conditions: none

From n|a(v−u), multiply the Bezout identity by v−u to get n|(v−u). Two normalized representatives differ by less than n in absolute value, so their difference is zero.

Step identifiers and dependencies

Rule: inverse_uniqueness · Uses: G001, S008

Reverse checks

  • S009 · premise_and_result_audit — The class and its normalized representative are unique; u+kn gives other integer representatives.
  • S008 · premise_and_result_audit — The quotient is an integer and the remainder really is 1.
  • S007 · premise_and_result_audit — Recompute a·u with exact rational arithmetic, not rounded decimals.
  • S006 · premise_and_result_audit — Normalize the inverse representative, not both Bezout coefficients.
  • S005 · premise_and_result_audit — Multiply out the identity directly rather than trusting a gcd label.
  • S004 · premise_and_result_audit — Check both the division identity and 0≤remainder<divisor.
  • S003 · premise_and_result_audit — Check both the division identity and 0≤remainder<divisor.
  • S002 · premise_and_result_audit — Check both the division identity and 0≤remainder<divisor.
  • S001 · premise_and_result_audit — A modular inverse requires gcd(a,n)=1.

Result

(2, 37, 19, 1, Yes, unique_modulo_n)

The inverse representative is 19, unique modulo 37.

This question review and source binding

Review date: 2026-10-24

Original questions, answers, step expressions, numeric ASTs and historical records are retained. Source candidate labels remain historical and are not overwritten as formal proof.

Source hashes and review receipts
  • input commit: 0f7be61e2c22317a4075561dc822c87d881a50db
  • original question SHA-256: 3040b94d9126ed2c987a3515d972fb32f42f17c5b4e8d1cc9ef800c235c9fdff
  • candidate record SHA-256: f44c191e605e23c30821977eed89fc2394b03d9ef6a8cc11c58eab2d8dfcf7bc
  • semantic review receipt SHA-256: 4727d1bd957a9b7f6cadb7972ddb5ab80a31f5259dc5394c1dff2b71944ed36b
  • question-first witness SHA-256: 51e18649133238ac992229f6e16542a5f3af53ca73b2262ab0524508ea937dee
  • Lean: NOT_RUN · human review: NOT_PERFORMED
Same-source full JSON