Explore related knowledge and questions →

Question 395: A Nonunit Has No Modular Inverse

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 2

← Question derivation index · Original question batch

P1000-0395 · q-20261014-advance-20261103-r07-modular-inverse-0095

Original question and givens

Use the original signed integer a=21 and modulus n=42≥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,gcd,inverse,exists?,nonunit_has_no_modular_inverse), with inverse=null.

  • G001 — Use the original signed integer a=21 and modulus n=42≥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,gcd,inverse,exists?,nonunit_has_no_modular_inverse), with inverse=null.

Definition and scope

When gcd(a,n)>1 the common divisor divides au+nv, so it cannot equal 1 and no inverse exists; null means absent.

Step-by-step derivation

S001 · implies

Before

a=21; n=42≥2

After

compute gcd and a Bezout certificate before inversion

Conditions: none

Invertibility requires coprimality, after qualifying the modulus.

Step identifiers and dependencies

Rule: modular_domain · Uses: G001

S002 · implies

Before

divide 21 by 42

After

21=0·42+21

Conditions: none

Continue with divisor and remainder; nonzero remainders decrease strictly.

Step identifiers and dependencies

Rule: euclidean_division · Uses: G001, S001

S003 · implies

Before

divide 42 by 21

After

42=2·21+0

Conditions: none

Continue with divisor and remainder; nonzero remainders decrease strictly.

Step identifiers and dependencies

Rule: euclidean_division · Uses: G001, S002

S004 · calculation

Before

a·x := mul(21, 1)

After

a·x = 21

Conditions: none

Multiply by the original signed a.

Step identifiers and dependencies

Rule: exact_rational_arithmetic · Uses: G001, S003

S005 · calculation

Before

n·y := mul(42, 0)

After

n·y = 0

Conditions: none

Retain the modulus coefficient as well.

Step identifiers and dependencies

Rule: exact_rational_arithmetic · Uses: G001, S004

S006 · calculation

Before

Bezout value := sum(21, 0)

After

Bezout value = 21

Conditions: none

The two terms must sum to the final nonzero remainder, the gcd.

Step identifiers and dependencies

Rule: exact_rational_arithmetic · Uses: G001, S005

S007 · implies

Before

gcd(21,42)=21>1

After

no u can satisfy a·u≡1 (mod n)

Conditions: none

An inverse would give au+nv=1, impossible because the common divisor g divides the left side but not1.

Step identifiers and dependencies

Rule: nonunit_obstruction · Uses: G001, S006

S008 · implies

Before

inverse does not exist

After

inverse field=null; exists=false

Conditions: none

null denotes an absent inverse, not a fabricated inverse representative0.

Step identifiers and dependencies

Rule: undefined_inverse · Uses: G001, S007

Reverse checks

  • S008 · premise_and_result_audit — Check integer identities, remainder bounds and gcd conditions; congruence is not integer equality.
  • S007 · premise_and_result_audit — Check integer identities, remainder bounds and gcd conditions; congruence is not integer equality.
  • S006 · premise_and_result_audit — Recompute Bezout value with exact rational arithmetic, not rounded decimals.
  • S005 · premise_and_result_audit — Recompute n·y with exact rational arithmetic, not rounded decimals.
  • S004 · premise_and_result_audit — Recompute a·x with exact rational arithmetic, not rounded decimals.
  • S003 · premise_and_result_audit — Check integer identities, remainder bounds and gcd conditions; congruence is not integer equality.
  • S002 · premise_and_result_audit — Check integer identities, remainder bounds and gcd conditions; congruence is not integer equality.
  • S001 · premise_and_result_audit — Check integer identities, remainder bounds and gcd conditions; congruence is not integer equality.

Result

(21, 42, 21, null, No, nonunit_has_no_modular_inverse)

The full substitutions and premise audits recover the original answer, retaining its field order and verdict meanings.

This question review and source binding

Review date: 2026-10-26

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: e137e511ad859297543588e2a7fc74e60df3e3e0ccfc5bf1a4bc84478a9b6165
  • candidate record SHA-256: 51568d2697db91728012a41deadb2f3cb01508aec60232033fd76eb72c97d397
  • semantic review receipt SHA-256: 6c2c6d46aded7582a11ac41a8c0b3bdde2669a53bdb6e796eea2039994a02772
  • question-first witness SHA-256: 77e43898df9efdbf8094ad81fe4ab91cf4b4bd82f481eb9b4699b73cb4da612b
  • Lean: NOT_RUN · human review: NOT_PERFORMED
Same-source full JSON