有理数のmodを駆使して数オリの有名整数問題を解く
こんばんは、simulo_yuiです。
simulo_yui (@simulo_yui) | Twitter
今回は、有理数のmodに関する記事です。合同式の基本的な知識を前提にします。 合同式をご存じでない方は下の記事をご覧ください。
問題
数列をで定義する。このとき、の全ての項と互いに素となるような自然数を全て求めよ。(IMO 2005 problem 4)
一般的な解答
をと以外の素数とする。以下、法は明記されない限りとする。
ここで、を示す。
(i)のとき
Fermatの小定理より、 である。を解き、である。
同様に、
であり、
が確かに成立する。
(ii)のとき
(i)と同様に、
はを除く素数であるので、(i),(ii)の場合で尽くされている。よって、がを除くすべての素数で成り立ち、より、全ての素数について、それと互いに素でない項が存在する。つまり、以上の全ての整数についても同様にそれと互いに素でない項が存在する。
また、については、全ての整数と互いに素なので、要件を満たす。よって、求める自然数は、のみである。
解説
まず、多くの素数についてそれと互いに素でないの項が存在するならば、それらを素因数に持つ全ての整数もその項と互いに素ではない上、素数は扱いやすい様々ないい性質を持つので、素数のみについて考えようと思うのは自然でしょう。つまり、素数と互いに素でない項の存在を具体的な構成をするなりして示せばいいのです。すると、整数の乗と素数に関する問題に変わるので、似た形である、Fermatの小定理を使いたくなるのは自然でしょう。でもなぜ、乗でなく、乗を考えるのでしょうか。
ある人は、様々な素数で試していった結果乗でうまくいくことに気づくのだ、というのかもしれません。実際、試験でこの問題が出てきたのならば、それが一番現実的でしょう。しかし、何か理由を考えたくなるのが、数学が好きな人の定めではないでしょうか。考えていきましょう。
Fermatの小定理について
ご存じの方はこの項を読み飛ばしていただいて結構です。
Fermatの小定理とは以下のようなものです。
Fermatの小定理
を素数、をと互いに素な数とすると、
が成立する。
簡単な証明をします。
一般に、を自然数とするとき、なので、の場合を考える。
について、
なので、 であり、これを繰り返し用いて、であり、とは互いに素なので、最左辺と最右辺をで割るとが得られる。証明終。
有理数のmodについて
合同式の概念は整数の世界で導入され、整数の合同式をご存じの方は多いと思います。実は、合同式は有理数の世界にも拡張できるのです。具体的には、
を整数として、有理数が、とを満たすを用いて表されるとき、をみたすを以て、と定義されます。
つまり、既約分数の形で表したとき、分母がと互いに素になる有理数について、合同式が定義されました。このようなが合同な数を除いて一意に存在することは簡単に示せます。
このように定義された有理数のmodにおいても、整数の世界で成り立つ合同室の性質、つまり、法を、を定義に出てきた条件を満たす有理数として、
をと互いに素な整数とするとき、
を整数、または分母がnと互いに素な係数をもつ多項式とするとき、
などといった性質がなりたちます。これは簡単に証明できます。
また、参考として、分母がと互いに素でない有理数に拡張してしまうと次のような問題が生じることも書いておきます。 その問題というのは、上の定義で、がと互いに素でないとき、となるようなが一般には存在しないことです。などとすると、分かると思います。とが互いに素でないとき、の世界でははの要素(=の素因数)を含んでいるから、こんな不都合が生じる、という感覚的な説明もできます。
問題への適用
先程の問題に有理数のmodを適用してみましょう。
フェルマーの小定理より、より、が成立します。 すると、となります。この式を見ると、なぜ乗を考えるのか、なんとなくわかった気になりませんか?つまり、の式にを代入すると、になることに気づくので、の世界でも逆元(=かけてになるもの。ここではに対する)である、乗を考えよう、というモチベーションがあったのです。
こうやって書くと、何だか数オリの問題が可愛く見えますね。とても可愛い。綺麗でかわいいなんて最高ですね。
終わりに
誤りなどありましたら教えてください。
こうやって記事を書き終わってみると、この問題の作問者はきっと、小学生でも知っているという等式をどれだけドラマチックなものに昇華できるかを考えていたんじゃないかな、と思います。最後に、改悪した問題を貼って記事を終わりにします。
冒頭の問題のをと定義して、の全ての項と互いに素となるような自然数を全て求めよ。
Hint(なのか?):6も28も嬉しい性質が成り立っているので、この問題はうまくいきます。