- ベストアンサー
法(mod)の四則演算について
とても困ってます。 情報セキュリティの課題で ・整数は素数を法とする演算では、四則演算が実行できる。その例を示せ。 ・整数は合成数を法とする演算では、四則演算の一部で、解が一意に定まる場合と定まらない場合がある。その例を示せ。 この2つの問題が分かりません。 答えを教えていただけませんか?お願いします。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
以下、剰余算の計算式を「13 mod 7 = 6」(13÷7の余りが6という意味)のように表します。suryaさんの読みやすいように適宜読み替えて下さい。 ・法が素数の場合 2つの整数(5, 13)を7で割ったときの剰余の四則演算の例を以下に示します。 1. 加算 13 mod 7 = 6, 5 mod 7 = 5なので、(13 mod 7) + (5 mod 7) = 11 mod 7 = 4 … (1) また、(13 + 5) mod 7 = 18 mod 7 = 4 … (2) (1)と(2)は同じ値になるので、(13 mod 7) + (5 mod 7) = (13 + 5) mod 7 2. 減算 13 mod 7 = 6, 5 mod 7 = 5なので、(13 mod 7) - (5 mod 7) = 1 mod 7 = 1 … (1) また、(13 - 5) mod 7 = 8 mod 7 = 1 … (2) (1)と(2)は同じ値になるので、(13 mod 7) - (5 mod 7) = (13 - 5) mod 7 3. 乗算 13 mod 7 = 6, 5 mod 7 = 5なので、(13 mod 7) × (5 mod 7) = 30 mod 7 = 2 … (1) また、(13 × 5) mod 7 = 65 mod 7 = 2 … (2) (1)と(2)は同じ値になるので、(13 mod 7) × (5 mod 7) = (13 × 5) mod 7 4. 除算 剰余の除算は整数や実数といった一般的な数値の除算と異なるので注意して下さい。 剰余での除算は「逆数を掛ける」ことで定義されます。「aをbで割る」はa×b^-1で表されます。 (3 mod 7) × (5 mod 7) = 1なので、(5 mod 7)^-1 = (3 mod 7) また、3.乗算の結果から、(13 × 5^-1) mod 7 = (13 mod 7) × (5 mod 7)^-1が言える。これを計算すると、 (13 × 5^-1) mod 7 = (13 mod 7) × (5 mod 7)^-1 = (13 mod 7) × (3 mod 7) = 4 ・法が合成数の場合 良い例かどうかは分かりませんが…。 法が8のときの除算を例に挙げてみます。 例えば、(5 mod 8) × (3 mod 8)^-1は(3 mod 8) × (3 mod 8) = 1だから、 (5 mod 8) × (3 mod 8)^-1 = (5 mod 8) × (3 mod 8) = 7のように計算できます。 しかし、(5 mod 8) × (4 mod 8)^-1は、4 mod 8の逆数を求めることができないため計算できません。