MCPで接続 →

計算を入力してください

公式

広告

結果

モジュラ逆数
4
(a·x) mod m = 1 を満たす x
逆元の存在 あり
gcd(a, m) 1

モジュラ逆数とは?

整数 am を法とするモジュラ乗法逆元とは、\((a \cdot x) \bmod m = 1\) を満たす整数 x のことです。これはモジュラ演算における「割り算」に相当し、整数論や RSA 暗号、さらには符号理論の多くのアルゴリズムで中心的な役割を果たします。本計算機は拡張ユークリッドの互除法を用いて x を求めます。

$$\text{a} \cdot x \equiv 1 \pmod{\text{m}} \quad\Longrightarrow\quad x = \text{a}^{-1} \bmod \text{m}$$
時計のような円形の法リングを一巡する数直線で、a×x が 1 に着地する様子
モジュラ逆数 x は、掛けると a を 1 に戻し、法 m を一巡します。

この計算機の使い方

a と法 m(\(m \ge 2\))を入力してください。ツールは \(0 \le x < m\) の範囲で最小の非負の逆元 x を返し、逆元が存在するかどうかを判定し、\(\gcd(a, m)\) も表示します。\(\gcd(a, m) \ne 1\) の場合は逆元が存在せず、結果は「なし」と表示されます。

計算式の解説

逆元が存在するのは \(\gcd(a, m) = 1\) のとき、すなわち a と m が互いに素であるときに限られます。拡張ユークリッドの互除法は、\(a \cdot x + m \cdot y = \gcd(a, m)\) を満たす整数 x と y を求めます。gcd が 1 のとき、x を m で割った余りが逆元になります。結果が負の場合は m を加えて正の値に正規化します。

広告
拡張ユークリッドの互除法の手順を示すフラットなフローチャートで、gcd と係数を生成
拡張ユークリッドの互除法は、gcd(a, m) = 1 のとき逆数を与える係数を導きます。

具体例で確認

11 を法とする 3 の逆元を求めてみましょう。\(3x \equiv 1 \pmod{11}\) を満たす x が必要です。試しに計算すると、\(3 \times 4 = 12 = 11 + 1\) なので、\(12 \bmod 11 = 1\) となります。したがって x = 4 です。拡張ユークリッドの互除法でも同じ値が得られ、\(\gcd(3, 11) = 1\) であることから逆元が存在することが確認できます。

よくある質問

逆元が存在しないのはどんなとき? a と m が 1 より大きい公約数を持つときです。たとえば 6 を法とする 4(\(\gcd = 2\))には逆元がありません。

m は素数でなければなりませんか? いいえ。m は 2 以上の任意の整数で構いません。重要なのは a と m が互いに素であることだけです。

答えはどの範囲で得られますか? 逆元は最小の非負の剰余として、\(0\) から \(m - 1\) の範囲で与えられます。

最終更新: