見出し画像

Chat GPTが中学生のMathを何度も間違える

最近、Chat GPT(無料版)を算数の宿題の答え合わせに使っています。

息子が、「一緒にMathの問題やろう~」と珍しく誘ってきたので、お付き合いすることに。でも「確率」の問題で苦手分野だったのと、英語の算数(数学)の文章題は見慣れていないので意味もよくわからず。

まずはDeepLに聞いてみることにしました。

問題文はコチラ。

A box contains 88 balls, with the numbers 1 to 88 written on them, one number per ball. How many balls must you remove from the box to be certain that among the numbers removed, there are at least two whose difference is divisible by 8?

意訳すると、

1つの箱に、1~88までの数が書いてある88個のボールが入っています。
最低●個のボールを取り出すと、最低でも1組、書いてある数の差が「8の倍数」である2つのボールが取り出せます。
さて、●に入る数字は何でしょう?

という感じ。

つまり、「1と9」とか「15と31」とか「40と88」などのように、「2つの数字の差が8の倍数」になる組み合わせのボールを必ず引くには、最低何個のボールをひかないといけないでしょう?
っていう確率の問題ですね。

確率とか統計とかはすっかり忘却の彼方。さっそくChat GPTに聞いてみることにしました。

最初の答えは「17」


Chat GPTに答えを聞くと、「pigeonhole principle(鳩の巣原理)」を使う、という回答。ほう。それは何でしょう。

「鳩の素原理」も知らないので、ググってみると

Wikipediaより

n = 10 羽の鳩が m = 9 つの巣の中にいる。したがって少なくとも1つの巣には2羽以上の鳩がいる。

https://ja.wikipedia.org/wiki/%E9%B3%A9%E3%81%AE%E5%B7%A3%E5%8E%9F%E7%90%86

わかりやすい例を挙げよう。野球をやりたい子どもが5人いるが、チームは4つしかなかったとする。ここで、5人の全員が、自分以外の4人の誰とも同じチームでプレーするのを拒否すると、問題が起こる。鳩の巣原理によれば、5人を4つのチームに割り当てようとすると、必ず誰か2人は同じチームになってしまう。お互い同じチームでプレーするのは嫌がっているのだから、結局、野球ができる最大の人数は4人になってしまう。
こうしてみると、鳩の巣原理は一見自明に思われるかもしれないが、突拍子もない結果を論証するのに使われることもある。たとえば「ロンドンには、同じ本数の髪の毛を持った少なくとも2人の人間が存在する」を証明してみよう。ふつう、の毛の本数は15万本ほどであるから、100万本以上の髪の毛を持っている人間はいないと考えることができる。一方で、ロンドンの人口は100万を超える。もし、髪の毛の本数ごとに鳩の巣を割り当て、巣にロンドンの人々を割り当てるなら、(当然の下限である0本から上限として置いた99万9999本までの巣に100万を超える人々を割り当てるのだから)少なくとも同じ髪の毛の本数を持った2人の人間が必ず存在する。

Wikipediaより

ということらしい。
へえ、おもしろい、と思いつつ、Chat GPTのいう最終的な答えの数字を見ると「17」。

ん?ほんと?

と腑に落ちなかったけど、用事があったのでそのままにして、とりあえずは用事を済ませに出かけました。

「鳩の巣原理」の使い方を知る


「ほんとに17か?」というのが気になって仕方なく、帰宅後に再度よく回答を読んでみました。

すると、「鳩の巣原理」をどう使うかというと、88個のボールを以下のように8つのグループに分けて考えるのだ、とあります。

  • Group 1: Balls numbered 1, 9, 17, 25, 33, 41, 49, 57, 65, 73, 81

  • Group 2: Balls numbered 2, 10, 18, 26, 34, 42, 50, 58, 66, 74, 82

  • Group 3: Balls numbered 3, 11, 19, 27, 35, 43, 51, 59, 67, 75, 83

  • Group 4: Balls numbered 4, 12, 20, 28, 36, 44, 52, 60, 68, 76, 84

  • Group 5: Balls numbered 5, 13, 21, 29, 37, 45, 53, 61, 69, 77, 85

  • Group 6: Balls numbered 6, 14, 22, 30, 38, 46, 54, 62, 70, 78, 86

  • Group 7: Balls numbered 7, 15, 23, 31, 39, 47, 55, 63, 71, 79, 87

  • Group 8: Balls numbered 8, 16, 24, 32, 40, 48, 56, 64, 72, 80, 88

そしてそのあとに説明が続いて、最終的に「答えは17」とChat GPTが結論づけているのですが、それなら答えは17ではなく「9じゃない?」と思いませんか?なんで17個もボールを取る必要が?

ここで、「9個取れば、同じグループの中のボールを最低2個(1ペア)はとることになるから、そしたらそれらの数字の差は8で割り切れるよね?」と聞き返すも、

「確かにそうだけど、それだと『差が8の倍数』ということを証明しているに過ぎなくて、実際に最初の質問の本当の答えを出すには17個」

と論旨がわからないことを言いだすChat GPT。

らちが明かないので、再度同じ質問を新たな質問としてしてみました。


次の答えは「12」


同じ質問を新たに投げかけると、答えはこちら。

We can use the Pigeonhole Principle to solve this problem. If we divide the numbers 1 to 88 into 8 groups based on their remainder when divided by 8, then each group will have 11 numbers.
(この問題を解くには、「鳩の巣の原理」を利用すればいい。1~88の数字を8で割ったときの余りを基準に8つのグループに分けると、各グループには11個の数字があることになります。)

Now, if we pick any 12 balls from the box, at least 2 of them must belong to the same group. The maximum possible difference between two numbers in the same group is 7, so their difference cannot be divisible by 8.
(ここで,箱の中から12個のボールを選ぶと,そのうち少なくとも2個は同じグループに属していなければならない.同じグループに属する2つの数字の差の最大値は7なので、その差は8で割り切れない。しかし、さらにボールを選ぶと、そのボールは8グループのいずれかに属するはずで、そのグループにはすでにボールがあるので、その差は8で割り切れることになる。)

However, if we pick any additional ball, it must belong to one of the 8 groups, and since there is already a ball in that group, their difference will be divisible by 8. Therefore, we need to remove 12 balls to be certain that among the numbers removed, there are at least two whose difference is divisible by 8.(したがって、12個の球を取り除くことで、その差が8で割り切れる球が少なくとも2個あることを確認する必要があります。)

え?なんで?
なんで今度は12がでてくるの?

もう一度!

次の答えは「8」


同じ質問をすると、次の答えはこうでした。

We can divide the 88 balls into 8 groups, where the balls in each group have the same remainder when divided by 8. Specifically, we have:
(88個のボールを8つのグループに分け、各グループのボールが8で割ったときの余りが同じになるようにすればよい:)

Group 1: Balls numbered 1, 9, 17, 25, 33, 41, 49, 57, 65, 73, 81
Group 2: Balls numbered 2, 10, 18, 26, 34, 42, 50, 58, 66, 74, 82
Group 3: Balls numbered 3, 11, 19, 27, 35, 43, 51, 59, 67, 75, 83
Group 4: Balls numbered 4, 12, 20, 28, 36, 44, 52, 60, 68, 76, 84
Group 5: Balls numbered 5, 13, 21, 29, 37, 45, 53, 61, 69, 77, 85
Group 6: Balls numbered 6, 14, 22, 30, 38, 46, 54, 62, 70, 78, 86
Group 7: Balls numbered 7, 15, 23, 31, 39, 47, 55, 63, 71, 79, 87
Group 8: Balls numbered 8, 16, 24, 32, 40, 48, 56, 64, 72, 80, 88

For any two balls with different remainders mod 8, their difference is not divisible by 8. Therefore, in order to be certain that among the numbers removed there are at least two whose difference is divisible by 8, we must remove at least one ball from each of the 8 groups. This gives us a total of 8 balls removed.
(したがって、取り除いた数の中に、差が8で割り切れるものが少なくとも2つあることを確かめるには、8つのグループからそれぞれ少なくとも1つずつボールを取り除かなければなりません。このため、合計8個のボールを取り除くことができる。)

To see that 8 balls is the minimum required, consider the case where we remove 7 balls. It is possible that we remove one ball from each of the first 7 groups, leaving only balls from the 8th group in the box. In this case, we cannot get two balls with a difference divisible by 8. Therefore, we must remove at least 8 balls to be certain of our condition.
(8球が必要最小限の球であることを確認するために、7球を取り除く場合を考えてみましょう。最初の7つのグループから1つずつボールを取り除き、8つ目のグループのボールだけを箱に入れることができるかもしれません。この場合、差が8で割り切れる2つの球を得ることはできないので、条件を満たすためには最低8個の球を取り除く必要があります。

え?
だから、それなら「8じゃなくて9じゃない?」と思い、再再再度同じ質問をしてみることに。
すると次の答えがこちら。

To be certain that among the numbers removed, there are at least two whose difference is divisible by 8, we need to remove at least one ball from each of the eight residue classes modulo 8: {1, 9, 17, ..., 81}, {2, 10, 18, ..., 82}, ..., {7, 15, 23, ..., 87}. This is because if we remove one ball from each of these residue classes, then any pair of balls we remove will have a difference that is divisible by 8.

The number of balls in each residue class modulo 8 is the same, since there are 88 balls and 8 residue classes, so there are 11 balls in each residue class. Therefore, we need to remove at least one ball from each of the eight residue classes, which means we need to remove at least 8 balls.However, it is possible to remove 7 balls without getting a pair whose difference is divisible by 8. For example, we could remove the balls numbered 1, 2, 3, 4, 5, 6, and 7.

Therefore, the minimum number of balls we must remove to be certain that among the numbers removed, there are at least two whose difference is divisible by 8 is 8.

ちょっと言葉が難しくなっていますが、同じことを言っていて、結論は「8」。

ここで質問を返してみることにしました。


Chat GPTに逆に説明してみる


そこで、聞き返したのがこちら。

But if you pick up 1, 2, 3, 4, 5, 6, 7 and 8, you can’t have a pair of those difference is dividable by 8. Is the answer 9 not 8?
(でもさ、もし、1,2,3,4,5,6,7,8っていう8個を取ったら、どのペアも8の倍数の差にならないよ?答えは9じゃないの?)

するとChat GPTのお返事はこちら。

You are correct. If we pick up 1, 2, 3, 4, 5, 6, 7, and 8, we cannot have a pair whose difference is divisible by 8. Therefore, the minimum number of balls we must remove to be certain that among the numbers removed, there are at least two whose difference is divisible by 8 is 9.

To see this, we can consider the following cases:
If we remove one ball from each of the eight residue classes modulo 8, we are guaranteed to have a pair of balls whose difference is divisible by 8, as explained in my previous answer.

If we remove 8 balls, but they are all from the same residue class modulo 8, then we cannot have a pair whose difference is divisible by 8.
If we remove 8 balls, and they are not all from the same residue class modulo 8, then we may or may not have a pair whose difference is divisible by 8. However, if we remove one more ball, then we are guaranteed to have a pair whose difference is divisible by 8, by the Pigeonhole Principle.

その通りである。1,2,3,4,5,6,7,8を取り除くと、差が8で割り切れるペアはできません。したがって、取り除いた数の中に、差が8で割り切れるものが少なくとも2つあることを保証するために取り除くべき球の最小数は9です

もし8個のボールを取り除いたとしても、それらがすべて同じ剰余クラスであれば、差が8で割り切れるペアを持つことはできません。

しかし、もう1つボールを取り除くと、ピジョンホールの原理により、差が8で割り切れるペアが存在することが保証される。)

じゃあ、あなたの最初の答えは間違ってたってこと?とさらに聞くと、
「I apologoze(申し訳ありません)」から始まり、「混乱させてすみません」「ご指摘ありがとうございます」という内容の答えが返ってきました。

算数なら、AIは間違えないと思ったのに


答えが決まっているような中学生の算数ならAIは間違えないと思ったのに、意外に何度も間違えるChat GPT。文章題は確かにちょっとわかりづらいかな、とは思うけど、こんなに言い張られるとは思わなかったのでちょっとびっくり。

GPT4ならそんなことないのかもしれないですが、多くの人はしばらくは無料版のChat GPTを使うでしょうから、「ご注意を!」とお伝えしたくてここに書いておくことにしました。
算数問題を間違えたりもしますから、過信は禁物です。
Chat GPTを宿題につかっている中高生のみなさん、気を付けてね。

Web上に、類似の、数字の異なる問題がたくさん出ているなどで、それらを混同しちゃっているんじゃないかな、と感じました。

しかし「Z世代」はあざやか

で、やっとChat GPTからも「9が正しい」と言われたので、息子に、「さっきの問題、答えは17じゃなくて9じゃない?」と説明してみると、「確かにそうだね~」と息子がChat GPTに打ち込んだのが、こちら。

「1と9の差って8で割り切れない?」
のひとこと。

それでChat GPTもあっさりと非を認め、「正しい答えは9である」と認めました。

親世代がさんざん時間をかけて「丁寧に」やるところを、息子たちZ世代はチャチャっとやっちゃう。

鮮やかだなぁ、と思わずにいられません。

というわけで、Chat GPTを使うときも、ちゃんと自分でも考えようね、というお話でした。


この記事が参加している募集

算数がすき

数学がすき

スキやコメント、サポート、シェア、引用など、反応をいただけるととてもうれしいです☕