表示調整
閉じる
挿絵表示切替ボタン
▼配色
▼行間
▼文字サイズ
▼メニューバー
×閉じる

ブックマークに追加しました

設定
0/400
設定を保存しました
エラーが発生しました
※文字以内
ブックマークを解除しました。

エラーが発生しました。

エラーの原因がわからない場合はヘルプセンターをご確認ください。

ブックマーク機能を使うにはログインしてください。
11/32

Day. 8 三本線の最強アイテム

皆さんは、自分が何曜日に生まれたか、考えたことはありますか?

今回のテーマは、それを知るために必要不可欠な、整数論最強のアイテムの話です。


 6月2日、水曜日。今日も今日とて、数学研究クラブ、通称“マス部”は元気に活動中である。いつもは駄弁ってばかりのわたし達だけど、今日は少し様相が異なる。当座の目標としていたあのイベントの、正確な日程が発表されたので、今後のスケジュールを具体的に詰めることになったのだ。

 そのイベントとは、わたしが発表者として参加予定の、アレである。


「へえ? じゃあ茉莉(まり)の誕生日って、科学研究発表会の二日前ってことになるのか」

「はい! 夏休みの真っ只中ですね」


 先輩たちが去年参加した、科学研究発表会。今年も開催されることが決まって、エントリーの〆切が7月22日、発表会の本番が8月12日と公表された。そしてわたしの誕生日が8月10日……まさかこんなにも近い日付とは思わなかった。

 という話を聞いて、パイプ椅子に腰かけている杏里(あんり)は指折りを始める。ちなみにわたしと蘭子(らんこ)はホワイトボードの前で、今後のスケジュールについて相談している。一応、蘭子がマス部の部長だからね。


「そうか……誕生日を知ってしまった以上は、何かしらお祝いをしたいな」

「蘭子先輩にも誕生日をお祝いするという概念があったんですね」

「私を何だと思っているんだ」

「では、誕生日にお二人を、わたしの家に招待しますよ。ささやかながら誕生パーティをしましょう」

沼倉(ぬまくら)先輩はどうするの」

「どうもしませんよ?」

「…………」


 本日不在の、二留したOGである沼倉のことは、頭の外に追いやることにした。だってあの人をわたしの誕生日会に招待する義理がないもの。

 すると、指折りを終えた杏里が、ぱあっと輝くような笑顔でわたしに言った。


「そっか、茉莉ちゃんは水曜日に生まれたのね!」

「いや、そこまではわたしも知りませんけど……」


 わたしは苦笑交じりに答える。自分の誕生日を把握していても、その曜日まで把握している人って、あまりいない気がする。


「というか、今の短時間でわたしの生まれた曜日を導いたんですか」

「日付を聞くとつい曜日を計算してしまうわよね」

「すまん、私にもそれは分からんわ……」


 変態的に数学が好きな蘭子にまでそう言われるとは……杏里はまあまあ常識人の類いだと思うけど、やはりマス部の部員だけあって、変わった趣味をお持ちである。


「でも、自分の生まれた曜日を計算で求めるって、なかなか複雑そうですね……」


 苦笑しつつそう言ったら、杏里と蘭子はきょとんとした顔を見せた。


「え? 簡単だよ?」

「仕組みが分かれば誰でもできる」

「だから世の中にはその仕組みを理解できない人の方が多いのであってですね……」


 数学に関しては強者である二人に、わたしの切実な苦悩は通じなかった。いつもの事ではあるが。


「ちなみにどうやって求めたんですか」


 聞いたところで理解できる保証なんて全くないけど、とりあえず訊いてみたら、杏里はこんなふうに説明した。


「まずは今日の曜日を起点にして、今年の8月10日の曜日を求めるの。今日は6月2日で水曜日。8月10日までの日数は、28+31+10で69日。7日ごとに曜日は一周するから、70日後なら曜日は同じ水曜日になるので、69日後である8月10日は火曜日になるわけ」

「…………」

「一年は365日で、7で割ると1余るから、一年後の同じ日付だと曜日は1つ進むでしょ。逆にいえば、一年前の同じ日付なら曜日は1つ戻ることになる。4年に一度の閏年も考慮すると、4年さかのぼるごとに曜日は5つ戻る。茉莉ちゃんは今年で16歳だから、求めるのは16年前の8月10日の曜日。4年ごとに曜日が5つ戻るから、16年さかのぼると曜日は20日戻ることになる。21日戻せば同じ曜日になるから、20日戻すときは曜日を1つ進めればいい。今年の8月10日が火曜日だから、16年前の8月10日は水曜日だと分かるわけ」


「めっちゃ複雑じゃないですか!」

「いやいや、こんなの複雑なうちに入らないよ」


 蘭子は嫌みたらしく口角を上げて言う。


「バカ正直に16年前の8月10日までの日数を計算して曜日を求めることに比べたら、要所要所で効率化していて、かなり計算しやすくなっているよ」

「その効率化の内容がテクニカルすぎて複雑に見えるんですけどね!」

「だが、曜日計算のテクニックは一貫して、7で割った余りに注目している。杏里が行なった効率化も、常に7の倍数を意識しているからできることだ」

「それはつまり、杏里先輩が言っていた、7日ごとに曜日が一周するという性質を使っていると?」

「そうだ。このことを視覚的に理解できるように作ったものが、確かこの辺りに……」


 蘭子は壁際の段ボール箱の一つを、ゴソゴソと漁り始めた。この部室、何かと変なものがたくさんあって、その大部分は段ボール箱に()()されて、こうして壁際やロッカーの上に放置されている。

 ようやく目的のものを見つけた蘭子は、得意げにそれをわたしに見せつけた。


「これだ! 日付を7日周期の螺旋状に並べた、その名も『スパイラルカレンダー』だ!」


 小学生の工作みたいな代物に不釣り合いなほど、派手なネーミングだ。たぶん名付けたのは蘭子だ。

 それは、黒い筒の側面に円筒状に丸めた紙を被せているだけの、手作り感に満ちたカレンダーだった。しかしよく見ると、日付のマスは全て平行四辺形になっていて、1日から右に辿っていくと、途切れることなく螺旋状に日付が並んでいて、同じ曜日の日付が縦一列に並ぶように配置している。

 しかも数字の部分だけが綺麗に切り取られていて、この下の筒の色が数字の形に見えるようになっている。よく見たら下の筒は黒一色じゃなく、一部だけ青と赤が描かれていて、どちらも幅が筒の円周の七分の一くらいの、縦長の長方形になっている。青エリアの上の所に“土”、赤エリアの上の所に“日”、それ以外の黒エリアには“月”から“金”まで書かれている。どうやら囲っている紙を回すことで、曜日を自在に変えられるらしい。

 ……というか、蘭子がそういうものだと説明しているのだが。ものすごく生き生きと。


「これはここの紙を回すことで、曜日を自在に設定できるんだよ。なかなか便利だろう?」

「はあ、そうですね……」

「これを見れば、“7で割った余り”と曜日が綺麗に対応していることが、一目瞭然に分かる。通常のカレンダーだと土日で分断されてしまうが、これなら日にちの変化と曜日の変化を同時に調べられる。カレンダーを数学的な視点で見るには絶好のアイテムだ」

「得意げな説明に水を差すようですが……」と、前置きして尋ねるわたし。「そのカレンダー、どの年のどの月でも使えるはずなのに、なんで段ボール箱に仕舞われてるんですか」

「……曜日以外の情報が何もないから。祝日とか節気とかイベントとか」


 キラキラな雰囲気が一瞬で消え失せ、蘭子は目を逸らしながら言った。まあそうだろうなぁ。そもそも月ごとに紙を回して曜日を設定するのが面倒だし、しかもこれ、31日まで書いてあるから、30日以下しかない月は不正確なカレンダーになる。実用に不向きな工作だから、箱に仕舞われたのだろうなぁ。


「まあいいや。杏里がやった効率化は、目的の日付に近い所まで縦に移動して、その後に横のズレを勘定するというものだ。横のズレ、つまり曜日の違いだけなら、前後で3日分までしかないからな」

「当たり前すぎて意識していませんでしたけど、一定の周期で元の位置に戻るって性質が、実は結構重要なんですね」

「曜日が同じであることは、その間の日数が7の倍数になることであり、また、7で割った余りが等しいことと同義だといえる。このことを表現する数式があるのだが、それは……」


 それは、の後を蘭子は言わなかった。代わりに杏里の方を見て、目配せするようにウィンクする。

 蘭子からのバトンを受け取った杏里は、窓に背を向けて寄りかかり、外の光を背中から浴びながら、慈愛の笑みを浮かべる。


「それは、フェルマーとオイラーがその価値を高め、ガウスが記号を導入したことで発展した……合同式よ」


 右手の三本指を横向きにピンと立てて、自分の顔の前に掲げながら、杏里はさように(のたま)った。その姿はまるで……。


「女神様……」

「なあ、言わせてほしそうだから言わせたけど、このくだりは前にも見たぞ」


 両手を合わせて拝みひれ伏すわたしに、呆れた視線を向ける蘭子。

 そうです。いつだったか暴風雨で部室に足止めされていた時にも、杏里はこんなふうに女神や聖母のような慈悲深い笑みを浮かべながら、合同式という名前を教えてくれた。指の形までそっくりと。


「だって、あの時は説明しようとした矢先に茉莉ちゃんが帰っちゃったから、消化不良だったんだもん」

「だからってポーズまでわざわざ再現するか……」


 杏里が珍しく見せるこだわりの強さに、蘭子は肩を竦めているが、似たようなパフォーマンスは蘭子もよくやっているから、あまり人のことは言えないとわたしは思う。まあ、口を尖らせる杏里がかわいいから、わたしは広い心で許すけどね!

 コホン、と咳払いする杏里。


「ではここからは、私が中心になって説明するね。改めて……合同式とは、特定の数で割った余りが等しい整数同士を繋げる式です。例えば、10と24は、7で割った余りがどちらも3なので……」


 10≡24(mod7)

 読み方… 7を法として10と24は合同


「……と書きます」

「この三本線の≡って、図形の合同でも見たことがあります」

「幾何学で合同といえば、反転あるいは回転することでぴったり重なる図形を指すけど……整数論で合同といえば、特定の数で割った余りが、ぴったり重なる整数を指すのよ」


 そう言って杏里は、また右手の三本指を横向きにピンと立てた。たぶん合同の記号≡を模したものだろうけど……気に入っているのかな。

 次に杏里は、例のスパイラルカレンダー(手作り)を手に取って、説明を続ける。


「すると、曜日が同じ日付は、7を法として合同である、と言うことができるわけ。さっきの合同式でいえば、どの月でも、10日と24日は必ず同じ曜日になることが分かるわね」

「なるほどー……ところで杏里先輩、ひとつよろしいでしょうか」

「どうしたの? 改まって」


「この合同式の読み方……7を法として10と24は合同である、って、長くて面倒くさくないですか!?」

「あー……」苦笑する杏里。「気持ちは分かるかも」

「はい」


 蘭子がわざわざ挙手してから口を挟んできた。ご丁寧なことである。


「私はこういうとき、『モッド7で10は24と合同』と読むことにしている」

「う~ん……少しはマシですかね」

「大体、数式って口頭で読むことを前提に作られていないからね。数式は世界共通だが、読むときは母国語に依存するからな」

「お喋りに向かない言語ですねぇ、数式って」


 ちなみに、=を英語でequalと読むのに対し、合同は英語でcongruentと読みます。……面倒くさいですねぇ。

 杏里はホワイトボードに数式を書いていく。


「じゃあ次は……合同式の基本的な性質について。合同式はその定義から、等式に置き換えることができます。これは合同式に関する色んな性質を証明するのに役立つから、覚えておいてね」


 a≡b (mod n)

 ⇔ a-b = kn(※kは整数)


「ああ、蘭子先輩が言ってた、曜日が同じなら間の日数が7の倍数になる、ってやつですね」

「そしてもうひとつ、合同式には重要な性質があります。それが、“同値性”というものです」

「同値性?」

「二つの値の関係を表す式が、反射律、対称律、推移律の、三つの条件を満たすとき、その関係は同値性がある……“同値関係”と呼ばれるものになるの」


 a ~ bという関係について、

 ①a ~ a(反射律)

 ②a ~ b ⇒ b ~ a(対称律)

 ③a ~ b かつ b ~ c ⇒ a ~ c(推移律)


「要するに、①同じ値を結べる、②左右を逆にしても結べる、③一つの値と結べるもの同士も結べる、ということですね」

「まんま数式で書いているとおりだな」


 蘭子が身も蓋もないことを呟いたが、わたしは聞こえないフリをした。


「でもこれ、普通の等式だったら何にも違和感ないですね」

「ええ。実際これは、等式が満たしてほしい最低限の性質をまとめたものだから」

「合同式は、この三つを全部満たすんですか?」

「さっき教えた、等式に置き換える方法を使って、茉莉ちゃんが示してみて」

「えっと……」


 わたしはホワイトボードに式を書き込んでいく。


 ①a-a = 0 = 0×n

  よって a≡a (mod n)

 ②a≡b (mod n) ⇒ a-b = kn

  b-a = -kn だから b≡a (mod n)

 ③a≡b (mod n) ⇒ a-b = kn

  b≡c (mod n) ⇒ b-c = ln

  a-c = (a-b)+(b-c) = kn+ln = (k+l)n

  よって a≡c (mod n)


「おお、割とあっさり証明できました」

「少し前までこの程度でも苦労していた茉莉が、あっさりできたと言うようになるとは……成長したなぁ」


 親目線か。感動して腕を組みうんうんとしきりに頷く蘭子に、心の中で突っ込むわたし。褒めているように見えるけど、さらっと昔のわたしをディスっているから、どうも複雑な気分だ。


「これで合同式は、等式と同じように扱えるってことでいいんですか?」

「全部同じではないけど、この三つの条件だけを使った変形なら、問題なくできるわね。等式変形ならぬ合同式変形ね」

「三つだけって……それじゃできることが少なすぎませんか」

「だから、基本の四則演算を使った変形もできるかどうか、確かめる必要があるのよ」

「四則演算ですか……あっ、でも足し算と引き算は上手くいきそうですね」

「あら、もう気づいたのね」

「だってほら、この螺旋のカレンダーでいえば……」


 わたしは例のスパイラルカレンダー(手作り)を手に取って、思いついたことを杏里に説明する。なんだかんだ役に立っているな、これ。


「曜日が同じ、つまり縦に並んでいる日付から、同じ日数だけ前後に移動するってことですから、どんな数を足したり引いたりしても、曜日は同じであり続けるはずです」

「うん、まさにそういうイメージね」

「いや待て」蘭子が険しい表情で口を挟む。「イメージは大切だが、数学なら数式できちんと示す必要がある」

「はいはい。まあこれだとmod7の場合しか示せていませんからね。これも合同式の基本に返って……」


 蘭子がうるさいので、わたしは自分のイメージを数式できちんと書いてみた。


 a≡b (mod n) ⇒ a-b = kn

 (a+c)-(b+c) = a-b = kn

 よって、a+c≡b+c (mod n)

 ※a-c≡b-c (mod n)も同様に示せる。


「こんな感じですか」

「うむ、よかろう」

「老紳士みたいな言い方ですね……ただ、かけ算と割り算はどうなんでしょう。揃って前後に移動するわけじゃありませんし、成り立つ気がしないのですが……」

「大丈夫! かけ算に関しては、推移律を使えば解決できるから!」


 同値関係の条件のひとつ……ここで使うか。それにしても今日の杏里は、一段とテンションが高い。普段はおっとりしているのに、親指を立ててウィンクして、口調も弾んでいる。そんなに合同式のことを教えたかったのか。


「まずは、連立方程式でよく使った、左辺同士、右辺同士を足し合わせる変形が、合同式でもできることを示すわね。推移律を使うと……」


 a≡b, c≡d (mod n)として、

 a+c≡b+c, b+c≡b+d (mod n)を導けるので、

 推移律から、a+c≡b+d (mod n)

 ※合同式を等式に置き換えて、(a+c)-(b+d)がnの倍数になることを示してもよい。


「ここで、同じ式をc個用意して、左辺同士、右辺同士を足し合わせると……」


 a≡b (mod n)をc個用意して、

  a≡b (mod n)

   :

   :

  a≡b (mod n)

 ⇒a+…+a≡b+…+b (mod n)

  a×c≡b×c (mod n)


「こんな感じで、左右に同じ数をかけても、合同式はなりたつのよ」

「そっか……螺旋のイメージだけだとピンとこないけど、数式にすれば一目で分かりますね」

「今後はイメージだけじゃなく数式にも頼るようにしような」と、蘭子。「ただ、この証明だと、負の数をかけた場合に成り立つかは分からない」

「あっ、本当だ!」

「だから厳密には、-1をかけても合同式が成り立つことも、きちんと示さないといけない」


 a≡b (mod n)のとき、-a≡-b (mod n)を示す。

 両辺からbを引いて、a-b≡0 (mod n)

 両辺からaを引いて、-b≡-a (mod n)

 対称律から、-a≡-b (mod n)


「後は正の整数を続けてかければ、負の整数をかけても成立することがいえる。さらに、両辺の符号を反転させても成立するなら、左辺同士、右辺同士で引き算をしても成立することがいえる」

「そういえば、引き算はマイナスを足す計算と同じでしたね」


 a-b = a+(-b)


「じゃあ、次は割り算ですね。この場合は……」

「はいストップ」杏里がわたしの発言を遮る。「割り算の前にもう一つ、確かめておきたい式変形があるのよ」

「確かめておきたい式変形……?」

「累乗よ。かけ算も足し算と同様に、左辺同士、右辺同士をかけ合わせることができるから……」


 a≡b (mod n)をc個用意して、

  a≡b (mod n)

   :

   :

  a≡b (mod n)

 ⇒a×…×a≡b×…×b (mod n)

  a^c≡b^c (mod n)

 ※左辺同士、右辺同士をかけ合わせても成立することも、推移律から示せる。


「なるほど、同じ個数だけかけ合わせても成り立つから、指数が同じなら累乗でも成り立つんですね」


 ここで注意です。合同式で累乗を扱うとき、底の部分(a^bでいえばa)を合同な整数に置き換えることはできますが、指数(a^bでいえばb)を置き換えることはできません。また、合同式は整数のみを扱うので、指数が負の数になる場合は考えません(指数がマイナスだと結果が分数になるため)。


「さて、続いては割り算ができるかどうかを確かめてみましょう」

「ようやくここまで来ましたねぇ」

「結論から言うと、割り算だけはいつもできるとは限りません」

「何ですって?」


 わたしは眉間にしわが寄るのを感じた。ここまで等式と同じことが合同式でもできる、という流れだったのに、最後の割り算でその流れが途切れるなんて思わないじゃないか。


「簡単な例を出すと、例えばこれは割り算が成り立つ場合」


 36≡6 (mod10) ⇒ 12≡2 (mod10) ※3で両辺を割った


「ふむふむ、確かに成り立っていますね」

「ところが同じ式を、今度は2で割ろうとすると……」


 36≡6 (mod10) ⇒ 18≡3 (mod10) (!) ※2で両辺を割った


「あっ! 今度は成り立たなくなりました! どこからこんな違いが生まれるんでしょうか……」

「それは、定石どおりに合同式を等式で表現すると見えてくるよ。mod nで、両辺がどちらもaの倍数であるとき、」


 ab≡ac (mod n) ⇒ ab-ac = kn(※kは整数)

  ⇒ a(b-c) = kn


「この時、aがもしnと互いに素であれば、b-cがnで割り切れないといけないので、」


 b-c = k'n ⇒ b≡c (mod n)(※k'は整数)


「という具合に、両辺をaで割ることができる。つまり、mod nのnと互いに素な数であれば、必ず割り算ができるってことよ」

「なるほど。さっきの例でも、3は10と互いに素だから、割り算が成り立ったんですね。そして2は10と互いに素じゃないから、割り算が成り立たなかったと……あれ?」


 先輩たちの反応が怪しい。二人とも無言で、蘭子は呆れたように肩をすくめ、杏里は何やら言いにくそうに苦笑している。


「茉莉よ……これはどう説明する?」


 そう言って蘭子はホワイトボードに書き込んだ。

 24≡4 (mod10) ⇒ 12≡2 (mod10) ※2で両辺を割った


「あれっ? 今度は成り立ってる……」

「modの値と互いに素な整数なら、必ず割り算は成立する。だが、互いに素でない整数で割るときは、()()()()()()()()()()()というだけだ。つまり成り立つ場合もある」

「そうなんですね……」

「ちなみに、modの値と互いに素でない整数でも、必ず割り算を成立させる方法がある」

「成立……させる?」

「これを見てごらん」


 36≡6 (mod10) ⇒ 18≡3 (mod5) ※2で両辺とmodの値を割った

 24≡4 (mod10) ⇒ 12≡2 (mod5) ※2で両辺とmodの値を割った


「modの中身まで変えられちゃってますけど!?」

「でも合同式は成立しているだろう? もちろん、modの中身を変えられない問題では使えないが、これはこれで有用だ」

「はあ……というか、色々等式と似ているところは見てきましたけど、合同式って曜日の計算以外で何か役に立つんですか?」

「茉莉、それはいけない。合同式が大好きな杏里が、このとおり不機嫌になっているからな」


 蘭子の言うとおり、杏里は眉間にしわを寄せて口を尖らせ、ぷくーと頬を膨らませながらわたしを睨んでいる。杏里がこんな表情をするのが珍しく、不謹慎にもわたしは彼女をかわいいと思ってしまった。

 やがて杏里はため息をつきながら、わたしに尋ねた。


「茉莉ちゃん、ディオファントス方程式って知ってる?」

「ディオファントス……って確か、蘭子先輩が強力にプッシュする数学界の神7の一角ですよね」

「そうとも! 古代ローマ帝国時代を代表する、整数論の礎を築いた素晴らしき数学者だ!」


 神7の話題になると、ものすごく目を輝かせてテンションが昂ぶる蘭子である。こうなると蘭子の数学トークは留まるところを知らないので、無視して次へ進めるのが得策だと、わたしと杏里は心得ている。


「で、そのディオファントスが本に書いたことで名付けられたのが、ディオファントス方程式ね。ひと言で言えば、“整数の解だけを求める”不定方程式のこと。中でも有名なのは、ピタゴラスの定理ね」

「三平方の定理……のことですよね」

「中高生にはたぶん、直角三角形の三辺の長さに関する定理、という印象だと思うけど……整数論ではもっぱら、定理の式を満たす、自然数a,b,cの組み合わせを求める問題として知られているかな」


 a^2 + b^2 = c^2 を満たす自然数a,b,cの例…

 (a,b,c) = (3,4,5)

 (a,b,c) = (5,12,13)

 (a,b,c) = (7,24,25)

 (a,b,c) = (9,40,41) etc.

 ※この組み合わせは次の式で表され、無数に存在する。

 (a,b,c) = (m^2-n^2, 2mn, m^2+n^2)

 ただし、m>n,mとnは偶奇が異なり互いに素

(偶奇が異なるとは、片方が偶数でもう片方が奇数という意味)


「へえ、こういう方程式もアリなんですね」

「ピタゴラスとその弟子たちが発見したと俗に言われているが、たぶんピタゴラスは図形的な問題じゃなく整数の問題として見ていたと思う。やたら神秘主義だし、整数大好きだし」←(注)あくまで蘭子の私見です。


「まあとにかく、こういう整数の解だけを考える問題は、合同式を使うことで上手く整理できることが多いのよ。まさに整数論の最強アイテム」

「ゲームで例えるの好きですね、お二人とも」

「それに、茉莉ちゃんだってもうすでに、合同式の考え方を使って問題を解いているじゃない」

「へっ? 一体いつ……」

「ほら、偶数の完全数の末尾が必ず6か8になることを示せ、って問題だよ。茉莉ちゃんはその時、一の位だけに注目することで解いたでしょ?」


 この問題については、after Day.4をチェック。


「そっか、一の位だけを見るってことは、10で割った余り……つまりmod10で考えていたってことですね」

「その結果、mod10の世界では、2の累乗は2→4→8→6でループすることに気づいたのよね。そして余りに着目すれば、同じことが他の整数、他のmod nでも起きることが分かるのよ。だって、nで割った余りは、0~n-1のn種類しかないから」

「あ、なるほど。n+1乗までの間に、少なくとも一度は同じ余りが出現するから、その時にループの最初に戻るってことですね」


 この考え方は、『鳩の巣原理』と呼ばれるものです。詳しい解説や応用例は、またいつか。


「つまりわたしは、50個近くある完全数を、mod10で考えることで上手く分類していたんですね……」

「合同式は“余り”を使って、無数にある整数を有限個にパッキングできるから、色んな整数問題で重宝されるのよ」

「そのパッキングこそが、以前に話した『同値類別』の考え方そのものなんだよ」と、蘭子。

「それって確か、自然数から整数や有理数を作るときに使うって言ってた……」

「ああ。合同式とは違うが、自然数のペアに対して、同値関係を定義して、“同値”なペアたちをパッキングすることで、整数を作ることができる。まあ詳しいことはまた今度話すよ。長くなりそうだし」

「そう、ですね……」


 これ以上話をされても、情報量の多さで脳がパンクしてしまいそうだ。つーか、脳の回路がショートしてプスプスと音と煙を立ててしまいそうだ。

 それにしても……わたしはスパイラルカレンダー(手作り)を手に取って、思いを巡らせる。カレンダーの性質、7日周期を利用した曜日の計算から始まって、合同式の世界を体感し、気がついたら過去に解いた問題にまでリンクしていた。合同式って、想像以上に使い道の幅が広いのだな。

 とはいえ、今日も時間が押しているし、発表会に向けたスケジュールの確認もしたいから、続きはまた今度かな……。


「よし、せっかくだから茉莉に、合同式を使った宿題を出そう」

「ちょっと」


 続きはまた今度かな、と思った端から蘭子はそんなことを言い出す。そう簡単に数学の話を終わらせる気はないみたいだが、直近の参加するイベントのことも少しは考慮してほしい。

 怒気を込めた口調で、遠回しに嫌だと伝えても、基本的にこの先輩は聞く耳を持たない。


「研究発表会の話はいいんですか」

「あー、それか……大概のスケジュール管理やエントリーの段取りなんかは、顧問の先生がやってくれるし、茉莉は期日までに資料をまとめて先生に提出すればいい。以上!」

「適当すぎでしょ、部長!」


 面倒な手続きを実質的に顧問へ丸投げして、さっさとこの話を終わらせて数学の話に戻そうとしているのが丸わかりだ。本当にこの先輩、部のまとめ役としての仕事を全うする気がまるでないな……大丈夫なのか、この部活。

 すると、杏里が手を挙げて蘭子に提案してきた。


「蘭子ちゃん。せっかくだから、茉莉ちゃんへの宿題、私が出してもいいかな?」

「ああ……いいんじゃないか?」

「えっ、杏里先輩が、わたしに宿題を?」

「うん。嫌かな」


 杏里先輩なら、わたしに気を遣って、少しは易しい問題を出してくれると期待して、わたしは舌を出してウィンクしながら、親指を立てた。バッチグーである。


「お前、私が出したら嫌そうな顔をするくせに……」


 不満そうな表情を見せる蘭子をよそに、杏里はホワイトボードに数式を書いていく。さて、いったいどんな問題を出してくれるのか、わくわくしながら待つ。


「茉莉ちゃんに解いてもらうのは、大学入試レベルのディオファントス方程式の問題よ」

「…………はい?」


 a^2 + b^2 = 1908


「この式を成立させる、自然数aとbの値を求めてね。ただしaの方がbより小さいとします」

「簡単なようでちょっと想像つかないですね……でもこれ、いくつも答えがありそうじゃないですか。まさか全部求めるなんてことは……」

「そのまさかだ」なぜか蘭子が答える。「杏里が最後に大小の条件を付けたことで、この式を満たす自然数の組み合わせはひとつだけになった。茉莉はその唯一の答えを見つければいい」

「さらに見つけるのが難しくなってません?」


 いくつかある答えの一つを見つけるだけなら、手当たり次第に探そうとも思える。しかし、一つしかない答えがかなり大きい数だとしたら、とても手作業で見つけられる気がしない。


「パーソナルコンピュータ様に頼るとかは……」

「なくてもできる。だから使うな」

「うへぇ」

「じゃあ茉莉ちゃんのためにヒント。1908は4の倍数で、かつ3の倍数でもあるよ」

「それがヒントですか……?」

「大丈夫。完全数の問題が解けた茉莉ちゃんなら、この問題もきっと解けるよ」

「うー……」


 わたしは口を真一文字に結んで唸った。正直、ヒントを聞いても全くいい方法が思いつかないのだが、杏里がここまでわたしを信用してくれるなら、それに全力で応えたい気持ちはある。

 まあ、課題を出してもOKと言った手前(実際はOKの仕草をしただけだが)、難しいから跳ね返すというわけにはいかない。問題が出された以上はちゃんと取り組むのが礼儀というものだ。たぶん杏里は、できなくてもわたしを責めたりはしないだろうし。


「分かりました……頑張って考えます……」

「うんうん♡」


 退路を断たれて項垂れるわたしの返事に、杏里は嬉しそうな顔を見せた。


  * * *


 下校時刻を迎えて、私は蘭子と一緒に帰路についた。家が近所の幼馴染みなので、都合が合わない時を除いて、いつも一緒に帰っている。本当は学校に行くときも一緒がいいけれど、蘭子の方に、そうもいかない事情があって……。

 まあそれはともかく、私たちは並んで歩きながら、今日のマス部のことを話していた。


「茉莉ちゃん、ちゃんと解けるかな。自分から出題しておいてアレだけど……」

「大丈夫じゃないか? 茉莉もだんだん、数学の作法に慣れてきた頃だろうし」

「そういえば蘭子ちゃん、今年は科学研究発表会に出ないの?」

「あー……今年はいいや。去年の三年生が引退してから、そういうの意識して活動してなかったし」

「茉莉ちゃんに教えることが多くて、あまり自分たちの研究には力を入れてなかったもんね」

「それに、今年の主役は茉莉でいくと決めたからな。私は先輩として、あの子のひのき舞台を裏で支えてやりたいんだ」


 蘭子はそう言って、いつになく柔らかな表情を浮かべた。入部当初は素人そのものだった後輩の、初めての晴れ舞台が見られることを、心から嬉しく思っているのが滲んで見える。

 こういう顔を、あの子の前では見せようとしないのだから、蘭子もなかなか不器用な性格なのだ。それがなんだか微笑ましくて、私も思わず顔が綻ぶ。


「だったらまずは、部長および経験者として、茉莉ちゃんの準備をしっかり監督してあげてね」

「うっ……善処します」


 発表会にエントリーしないのをいいことに、楽をしようと目論んでいた蘭子に、私はやんわりと釘を刺しておいた。可愛い後輩のため、だものね。


科学研究発表会という、物語的にもひとつの目標となるイベントが、いよいよ現実味を帯びてきました。きっとこの日までに、この三人に何かが起きます。何か起こすつもりで書いています。

作中で杏里は、数の特徴をその都度うまく捉えながら、地道に計算していましたが、曜日計算が得意なひとの中には、doomsdayというものを活用する人がいます。詳細は他のサイトに任せますが、簡単に言えば、必ず曜日が一致するような、特徴ある日付のことです。例えば、4月4日、6月6日、8月8日、10月10日、12月12日は全て同じ曜日です。合同式を使えば、これらが全て同じ曜日であることを確かめられるはずです。

さて、最後に出された問題ですが、次のafter Day.8で、茉莉がしっかりと答えを出します。合同式の威力、とくとご覧あれ。

評価をするにはログインしてください。
ブックマークに追加
ブックマーク機能を使うにはログインしてください。
― 新着の感想 ―
このエピソードに感想はまだ書かれていません。
感想一覧
+注意+

特に記載なき場合、掲載されている作品はすべてフィクションであり実在の人物・団体等とは一切関係ありません。
特に記載なき場合、掲載されている作品の著作権は作者にあります(一部作品除く)。
作者以外の方による作品の引用を超える無断転載は禁止しており、行った場合、著作権法の違反となります。

この作品はリンクフリーです。ご自由にリンク(紹介)してください。
この作品はスマートフォン対応です。スマートフォンかパソコンかを自動で判別し、適切なページを表示します。

↑ページトップへ