Дело было на третьем курсе. У нас был курс дискретной математики. Тогда мы познали таблицы истинности для логических операций и, или, не и ксор. Есть более упоротые операторы типа стрелки Пирса, но про них мы не будем.
Какие же таблицы истинности для "или" и для "ксор" (другие названия: исключающее или, сложение по модулю два, тысячи их)? Я буду использовать Си-нотацию, т.к. ей проще писать текст. 0 -- ложь, 1 -- истина.
ИЛИ (|):
0|0==0
0|1==1
1|0==1
1|1==1
КСОР (^):
0^0==0
0^1==1
1^0==1
1^1==0
Разница -- в последнем варианте, т.е. когда оба операнда истинны, ИЛИ даёт истинный результат, а КСОР -- ложный.
И у нас были текстовые задачи. О чём они были -- не помню. Помню, что там встречалось слово "или". И при записи условия математическими обозначениями мы записывали "или" как математическое "или". Я попробовал подискутировать об этом с преподавателем, но это ни к чему не привело.
А ведь "или" в русском языке обозначает не математическое "или", а математическое "исключающее или"!
Например -- "Возьми конфету ИЛИ булку." (НО НЕ ОБЕ!)
Или, чтобы уж было утверждение -- "Он взял конфету ИЛИ булку." (он взял один об'ект)
"Надо было выбирать: спасать себя или отечество." (НО ОБА -- НЕЛЬЗЯ)
Во всех случаях, когда "А или Б" может быть без потери смысла заменено на "или А, или Б" -- это исключающее или.
Как же получить обычное логическое "или"? Разве что путём уточнения, чтобы комбинация из обоих -- валидна: "Возьми конфету ИЛИ булку ИЛИ и то, и другое".
Господа, а встречали ли вы в естественной речи употребление "или" в значении именно логического "или", т.е. когда можно выбрать оба варианта ответа и оставить утверждение истинным?