数学の論理概念を日常言語にあてはめることに関するトラブルを防ぐために
想定されるトラブル①
店長「A君、X日またはY日にシフト入れていい?」
A「いいですよ~」
~~後日~~
A「え、両方入ってんじゃん! 103 万円の壁を超えちゃうよ~」
A「店長、どういうことですか。両方なんて聞いてないですよ」
店長「いや、『XまたはY』はXとYの両方の場合も含むから、数学的には」
A「はあ~~~?」
想定されるトラブル②
問題「雨の日の場合、運転に注意して運転しなければならない」
A「常識的に考えてそうだね。マル」
問題「バツ。なぜなら、雨の日でなくても注意して運転しなければいけないから」
A「はあ~~~?」
日本語は曖昧
このように、日本語というのは極めて曖昧であり、時にトラブルを招きます。文脈で考えれば誤解がないとかヌルいこと言ってないで、そもそも誤解の余地がない言葉を使うに越したことはありません。私はここに、新たな日本語用法を提案します。
「または」問題
「または」の曖昧性の原因は、この言葉が、論理用語でいう「XOR」か「OR」かの2通りに解釈できることです。
XORは「いずれかの一方のみ」
ORは「いずれかの少なくとも一つを含む」です。
じゃあ、XOR か OR という言葉をそのまま使えばいいじゃん、と言うのも問題があります。なぜなら、英語では OR(言語)を XOR(論理)として使う用例が散見されるからです。
「Get the loan, or you won't be able to buy the house.」
(ローンを組みなさい、そうでないと、その家を買えませんよ)
上の文で言いたいことは「『ローンを組む⇒家を買える』かつ『ローンを組まない⇒家を買えない』」であり、実質的には XOR です。ローンを組んでも家を買えない、みたいな状況は想定していません。
おそらく、一番確実な方法は、上に述べた日本語の補足説明をちゃんと行うことでしょう。
解決後の世界
店長「A君、X日とY日のいずれかの一方のみ、シフト入れていい?」
A「いいですよ~」
店長「A君、X日とY日の少なくとも一つ、シフト入れていい?」
A「(両方入る可能性もありそうだな)いいですよ~」
これでトラブルが減りました。
「場合」問題
こちらも厄介です。そもそも、「Aである場合、Bである」とはどういうことでしょうか。日常言語的には、ふたつの意味が考えられます。
前者で言っていることは、「Aである時については絶対Bだが、Aでない場合については何も言っていない」であり、後者が言っていることは、「Aである時については絶対にBだし、Aでない時には絶対にBでない」ということです。
こうして整理してみると、後者は強いことを言っていますが、日常生活でこういう言い方をすることは結構あります。
「この地区では、火曜日と金曜日には、燃えるゴミを出すことができます」
この言葉を聞いて、「他の曜日にも燃えるゴミを出していい可能性があるってこと?」と思う人は社会性に問題があるでしょう。
ちなみに、こういう場合スマートな解決策があり、「のみ」をつけることで余計な誤解を避けることができます。
「この地区では、火曜日と木曜日にのみ、燃えるゴミを出すことができます」
この方法は、科学哲学で有名な野矢先生の「論理トレーニング101題」に載っていた気がします。うろ覚えですが。
ちなみに、問題文の厳密性が必要な競技プログラミングでは、しばしば「~である場合、かつその時に限り」という表現が使われます。こちらの方がより伝わる気がします。
前者(Aでない場合については何も言っていない)はどうでしょうか。この場合も、「そうでない場合については何も言及していない」ということを示すために、「少なくとも」という枕詞をつければ、だいぶ誤解を減らせる気がします。
解決後の世界
問題「少なくとも雨の日の場合は、運転に注意して運転しなければならない」
A「常識的に考えてそうだね。マル」
問題「雨の日の場合、かつその時に限り、運転に注意して運転しなければならない」
A「雨の日だけってことはないだろう、バツ」
結論
日常言語は曖昧
数学的な論理を無理にあてはめるのもよくない
少し言葉を足せば、日常的な語彙かつ誤解の少ない言い方にできる(かもしれない)
おまけ
組み合わせ図を眺めると、「いずれかの一方のみ」と「場合、かつその時に限り」は類似した構造を持っていることがわかります。なので、冒頭の問いかけは以下のように言い換えることもできます。
(いずれかの一方のみに入って欲しい場合)
店長「A君、X日にシフトが入らない場合、かつその時に限り、Y日にシフトを入れていい?」
A「いいですよ~(回りくどいな……)」