12+
Очевидно. Но неверно. Логика

Объем: 274 бумажных стр.

Формат: epub, fb2, pdfRead, mobi

Подробнее

Александр Логвинов
Очевидно. Но неверно. Логика

Вместо предисловия. Дверь, которая открывалась на себя

В Бюро проверки очевидного дверь открывалась на себя. Об этом сообщала табличка. Посетители читали её, кивали и толкали дверь. Некоторые дважды. Один человек, заведовавший в крупной организации стратегическим развитием, толкнул пять раз и потребовал оптимизировать входную группу.

— Может быть, потянуть? — предложила уборщица.

— Я пока собираю данные, — ответил он.

Внутри бюро не было ни хрустального шара, ни прибора для определения глупости. Последний не установили из опасения, что при включении он примет себя за солнце. Были стол, чайник, доска и четыре человека, которые по-разному не любили поспешные выводы.

Марк Ветров занимался анализом происшествий. Он знал, что фраза «всё ясно» особенно опасна, когда произносится раньше слова «проверили». Инженер Ирина Коваль могла починить устройство, но предпочитала сначала выяснить, сломалось ли оно. Психолог Софья Белова не считала человеческие чувства дефектом конструкции. Философ Павел Рудин умел задать короткий вопрос, после которого длинное совещание приходилось начинать заново.

Бюро возникло не потому, что окружающие были глупы. Все четверо совершали ошибки, иногда дорогие. Ирина однажды заменила исправный блок. Марк принял совпадение за связь. Софья слишком быстро согласилась с красивым объяснением. Павел выиграл спор, в котором впоследствии обнаружил, что защищал не то положение. Это был особенно неприятный успех: аплодисменты закончились, а ошибка осталась.

Поэтому над доской висело правило: «Уверенность принимается в работу. Доказательством не является».

Эта книга — о том, как устроены переходы от «я заметил» к «я понял», от «может быть» к «следовательно» и от «следовательно» к «надо делать». Между этими словами часто зияют провалы. Люди перепрыгивают их на скорости, начальники — на служебном положении, реклама — на музыке. Логика предлагает сначала посмотреть вниз.

Она нужна не только для сложных доказательств. Ею пользуются, когда решают, действительно ли сломался холодильник, что означает сообщение друга, почему выросли расходы, насколько убедительна улика и можно ли доверять выводу из таблицы. Иногда самая важная логическая операция за день — не ответить сразу.

Но обещание научить «всей логике» в одной книге само нуждается в проверке. У логики нет последней полки, после которой начинается склад окончательных ответов. Есть классическая логика высказываний и предикатов, теории доказательств и моделей, разные неклассические системы, исследования аргументации. А рядом — вероятность, причинный анализ и психология мышления. Они помогают рассуждать, но не превращаются в один предмет оттого, что нам удобно поставить их под общую обложку.

Мы пройдём основные законы и приёмы, научимся видеть их границы и переносить их в реальные ситуации. Где вывод строгий, это будет сказано. Где мы лишь повышаем правдоподобие версии — тоже. Умение различать эти случаи полезнее коллекции латинских названий. Латинское название ошибки не делает её менее русской на совещании.

В историях действуют вымышленные люди и организации. Это учебные модели: обстоятельства иногда специально упрощены, чтобы было видно устройство рассуждения. Реальное расследование, инженерное решение или психологическая работа требуют дополнительных данных и профессиональных процедур. Мы не будем выдавать решение книжной задачи за право решать судьбы людей.

Короткие афоризмы между историями — авторские. Они помогают запомнить мысль, но не заменяют её обоснования. Если фраза хорошо звучит, у неё пока всего лишь хорошая акустика.

Не обязательно соглашаться с каждым примером. Полезнее спрашивать: что здесь принято за исходное? Что из этого действительно следует? Что изменится, если одну посылку убрать? Можно ли придумать случай, в котором объяснение не работает?

Читать можно без подготовки. Формулы будут появляться как сокращения уже понятных мыслей. Буква P — не пропуск в закрытый клуб, а способ не писать в каждом абзаце «Пётр снова забыл закрыть окно». Если вы знакомы с логикой, обращайте внимание на оговорки: именно там обычно заканчивается эффектная популяризация и начинается интересная работа.

В первый день в бюро принесли металлическую коробку. Внутри лежал электронный ключ от городского демонстрационного павильона. Ночью павильон открылся, хотя должен был оставаться закрытым. Ничего не похитили. Зато на центральном экране появилась надпись: «ВАША СИСТЕМА РАБОТАЕТ ИДЕАЛЬНО. ПРОБЛЕМА В СЛОВЕ „РАБОТАЕТ“».

— Шутник? — спросил Марк.

— Возможно, — сказала Ирина.

— Взломщик?

— Возможно.

— Неисправность?

— Тоже возможно.

Павел поставил чайник.

— Какое приятное начало. Пока никто ничего не знает и все это признают.

Тишина продержалась восемь секунд. Потом позвонил директор павильона:

— Я уже понял, кто виноват.

Вот теперь можно было начинать.

Глава 1. Когда вывод приезжает раньше следователя

Уверенность — хороший двигатель и плохой тормоз.

Человек, который был слишком спокоен

Директор павильона Борис Аркадьевич подозревал ночного администратора Дениса. Оснований было три: у Дениса имелся ключ, он понимал систему доступа и утром разговаривал подозрительно спокойно.

— Виновный будет нервничать, — возразила Софья.

— Неопытный виновный. А опытный будет спокоен.

— Если бы он нервничал, вы бы тоже заподозрили его?

— Разумеется.

— А если бы смеялся?

— Маскируется.

— Если бы молчал?

— Боится проговориться.

Софья отложила ручку.

— У вас не проверка версии. У вас четыре входа в один и тот же приговор.

Психологическое впечатление может подсказать вопрос. Оно не даёт универсального ключа к виновности. Одни люди тревожатся от самого подозрения, другие замирают, третьи становятся разговорчивыми. Вымышленный директор составил правило, которое подтверждалось при любом поведении. Это делало его удобным для обвинения и бесполезным для различения случаев.

Марк разделил доску на три части. Слева написал «Данные», в середине — «Предположения», справа — «Выводы». Директор хотел добавить четвёртую, «И так понятно», но ему не разрешили расширять доказательную базу мебелью.

Данные: дверь действительно открывалась; в журнале есть запись об использовании определённого идентификатора; Денису был выдан один из ключей. Предположения: идентификатор использовал именно его владелец; журнал верно отражает событие; открытие было умышленным; спокойствие имеет отношение к происшествию. Вывод директора: Денис виновен.

После разделения стало видно, сколько невидимых ступенек лежало между записью в журнале и обвинением. На каждой из них ещё предстояло устоять.

Три вопроса вместо одного

Рассуждение можно представить как посылки и заключение. Посылки — то, на что мы опираемся. Заключение — то, что хотим получить. «Все ключи этой серии открывают учебную дверь. Этот ключ относится к данной серии. Следовательно, он открывает учебную дверь». Здесь легко увидеть конструкцию.

В живой речи она часто скрыта. «Да он же единственный остался в помещении!» — формально это не полный аргумент. Обычно за фразой прячется мысль: совершить действие мог только тот, кто находился внутри; внутри был только этот человек; следовательно, действие совершил он. Но было ли действие совершено вручную? Могло ли оно быть запланировано раньше? Верен ли список находившихся внутри? Пропущенная посылка не перестаёт работать. Она просто получает возможность работать без проверки.

Поэтому спрашивают отдельно: верны ли исходные утверждения, правильно ли устроен переход и достаточен ли полученный вывод для практического решения. Это три проверки, а не три названия одной.

Можно рассуждать правильно из неверных посылок. Все сотрудники павильона умеют летать. Денис — сотрудник павильона. Значит, Денис умеет летать. Форма вывода безупречна. С кадровой политикой и авиацией имеются затруднения. Логическая правильность не превращает исходную нелепость в факт.

Можно получить истинный вывод неправильным путём. Все кошки — животные. Денис — животное. Следовательно, Денис — кошка. Если бы Денис оказался котом охранника, заключение случайно было бы истинным. Но схема всё равно не годилась бы: в её посылки можно подставить человека, собаку или лошадь и получить ложное заключение.

В классическом понимании дедуктивный вывод правилен, если невозможно, чтобы все его посылки были истинными, а заключение — ложным при соответствующей интерпретации. Это не обещание, что посылки уже истинны. Это гарантия сохранения истины при переходе. Исправный конвейер бережно перевезёт как хорошие детали, так и брак. Он не становится отделом качества только потому, что не роняет коробки.

Если же правильный аргумент опирается на истинные посылки, мы получаем более сильное сочетание. В англоязычной литературе его обозначают словом sound. По-русски встречаются разные переводы. Нам важен смысл: надёжны и исходное, и переход. Одной красивой формы недостаточно.

Достоверно, вероятно и просто симпатично

В бюро принесли ещё одну улику: Денис накануне ссорился с директором.

— Мотив, — объявил Борис Аркадьевич.

— Возможный мотив, — уточнил Марк.

— Разве это не одно и то же?

— Нет. Если бы каждая ссора с начальником автоматически приводила к диверсии, экономика состояла бы из непрерывного ремонта.

Мотив может сделать версию психологически понятной, но сам по себе не доказывает действие. Доступ может сделать действие возможным, но не доказывает использование доступа. Совпадение может повысить интерес к версии, но не даёт права перепрыгнуть через альтернативы.

Не всякое хорошее рассуждение дедуктивно. По дыму предполагают огонь, по необычному звуку — неисправность, по повторяющимся задержкам — проблему процесса. Здесь вывод может быть разумным, хотя не гарантированным. Прибор мог задымиться без открытого пламени, звук мог идти от соседнего устройства, задержки могли иметь разные причины.

Плохо не то, что мы используем вероятностные догадки. Без них человек не смог бы приготовить завтрак: он потребовал бы строгого доказательства съедобности каждого бутерброда. Плохо незаметно менять статус догадки. Сначала «это объясняет», потом «похоже», потом «ясно», и вот уже человек оправдывается перед гипотезой, которая повысила себя в должности без конкурса.

Полезно произносить статус вывода вслух: «Из этих правил это следует обязательно»; «Эти данные поддерживают версию»; «Это пока одна из возможностей»; «Для решения данных мало». Такие фразы не делают речь слабой. Они сообщают, какой вес выдерживает конструкция.

Скрытая лестница

Допустим, лампа на пульте красная. Инструкция сообщает: при перегреве лампа красная. Оператор заключает, что произошёл перегрев. Кажется естественным. Но инструкция сказала, что перегрев приводит к красному сигналу, а не что красный сигнал возникает только при перегреве. Та же лампа может предупреждать об открытой крышке.

Переход из условия к следствию и переход из следствия к условию — разные операции. Водитель, приехавший в Москву, не обязательно выехал из Ельца. Даже если любой поезд данного маршрута из Ельца прибывает в Москву. Вокзал не обязан содержать биографию каждого пассажира.

Ещё один случай: человек уверенно объясняет технический термин. Значит, думаем мы, он компетентен. Знание термина может быть признаком компетентности, но его можно выучить отдельно. У диктора отличное произношение названий лекарств; аптекой это его не делает. Для оценки специалиста нужны задачи, границы знаний, качество проверки, готовность исправляться.

При восстановлении аргумента старайтесь не делать оппонента глупее, чем он есть. Если он сказал кратко, это не означает, что он не продумал пропущенное. Сначала предложите разумную реконструкцию: «Правильно ли я понимаю, вы исходите из того, что других причин сигнала нет?» Он может ответить: «Да, именно для этой модели это так». Тогда аргумент усилится. Или выяснится, что ключевой шаг никто не проверял.

Логика полезна, когда уточняет разговор. Если она нужна только для торжественного произнесения «попался», разговор быстро превращается в охоту, а мысли начинают прятаться.

Задача у чайника

В учебной мастерской установлено правило: всякий прибор с повреждённым кабелем немедленно снимают с испытаний. Известно, что прибор номер семь сняли с испытаний. Можно ли заключить, что у него повреждён кабель?

Не торопитесь. Придумайте историю, где правило соблюдено, прибор снят, а кабель цел. Например, закончился срок проверки датчика. Все исходные сведения останутся верными, а заключение о кабеле окажется ложным. Этого достаточно, чтобы показать: заключение не следует с необходимостью.

Теперь добавим: прибор снимают с испытаний тогда и только тогда, когда повреждён кабель. При буквальном принятии такого учебного правила вывод уже получится. Но инженер тут же заметит, что реальная инструкция с единственным основанием для остановки была бы подозрительно бедной. Логическая строгость модели не оправдывает плохую модель.

Последний поворот: кабель действительно повреждён, но правило никто не выполняет. Мы не можем вывести фактическое снятие прибора из нормативного «должен быть снят». Между «положено» и «сделано» иногда помещается целый отдел.

Что оказалось первым настоящим фактом

Марк попросил показать журнал доступа целиком. В нём нашлась запись, которую директор не включил в своё объяснение: в ту же минуту система выполняла ночное тестирование.

Это не оправдывало Дениса и не доказывало неисправность. Оно изменяло набор вопросов. Была ли запись ключа событием человека или частью теста? Открылась физическая дверь или только изменился программный статус? Кто и как убедился в открытии?

Борис Аркадьевич помрачнел:

— Вы всё усложняете.

— Пока только возвращаем пропущенное, — ответила Ирина. — Усложнили вы, когда назначили виновного раньше, чем уточнили, что произошло.

На доске под первым делом появилась запись: «Проверить событие». Директор хотел написать «Найти виновного». Но к этому моменту даже он почувствовал, что у предложенного порядка имеется одно скромное преимущество: он начинается с начала.

Глава 2. Слово, которое переоделось в коридоре

Если в споре постоянно побеждает одно слово, проверьте, не меняет ли оно форму одежды.

Идеально работающий дефект

— Система работала, — сказал подрядчик.

— Дверь открылась ночью, — сказал директор.

— Но команда была исполнена.

— Команда не должна была поступать!

— Это уже вопрос к постановке задачи.

Разговор был устроен как теннис, в котором каждый игрок пришёл со своим мячом. Подрядчик называл работой исполнение поступившей команды. Директор — выполнение требований безопасности. Оба пользовались одним глаголом. Поэтому казалось, что они спорят об одном факте, хотя обсуждали разные свойства системы.

Павел предложил временно запретить слово «работает».

— А как же говорить? — испугался подрядчик.

— Содержательно. Первые минуты неприятны, потом привыкаешь.

Они записали три отдельных утверждения: контроллер получил команду; замок выполнил команду; команда соответствовала разрешённому сценарию. Первые два могли быть истинными одновременно с ложностью третьего. Исполнительная часть могла сработать исправно, а весь комплекс — нарушить требование.

Это один из самых полезных бытовых уроков закона тождества: удерживать значение предмета разговора. В формальной логике тождественные выражения и схемы имеют точный смысл, а в обычном споре практическая проблема часто состоит в незаметной подмене. Начали с одного утверждения, опровергли другое, обиделись на третье.

P остаётся P

В простейшей символической записи утверждение обозначают буквой P. Если P означает «дверь была физически открыта в 02:14», та же буква дальше не должна вдруг означать «замок получил сигнал» или «дверь можно было открыть». Эти утверждения связаны, но не тождественны.

Классическая схема P → P выражает, что из утверждения следует оно само. Кажется, будто логика торжественно открыла, что чайник — это чайник. Однако практическая ценность дисциплины проявляется там, где человек начинает выдавать похожее за одинаковое. «Он мог это сделать» превращается в «он это сделал». «Клиенты довольны ценой» — в «клиенты довольны продуктом». «Решение принято» — в «решение выполнено».

Нельзя просто объявить, что всякая смена смысла — нарушение закона тождества в строгом техническом смысле. Естественная речь богаче символической записи, значения уточняются, появляются новые данные. Ошибка возникает, когда изменённое содержание выдают за прежнее без предупреждения и используют это в выводе.

Уточнить термин честно: «Под надёжностью я сначала имел в виду отсутствие отказов, но теперь обсуждаю способность восстановиться после отказа». Нечестно: продать первое, показать второе и потребовать аплодисментов за соответствие обещанию.

Закон тождества не запрещает человеку меняться. Фраза «вы же раньше думали иначе» сама по себе не опровергает новое мнение. Иначе образование следовало бы считать нарушением логики, а диплом — уликой.

Кто украл бесплатную доставку

Посетительница бюро заказала кресло с бесплатной доставкой. На последнем шаге ей предложили оплатить подъём до двери. Она возмутилась: доставка ведь бесплатная. Магазин возразил: доставка — до подъезда.

Здесь недостаточно вскрикнуть «подмена понятия». Нужно посмотреть, какие условия были сообщены и насколько ясно. Если «до подъезда» заранее указано заметно, покупатель мог недосмотреть. Если ограничение спрятали или ввели позже, проблема иная. Логический анализ помогает установить содержание обещания; оценка юридических последствий потребует правил и конкретных обстоятельств.

В быту такие слова, как «бесплатно», «безопасно», «готово», «быстро», «проверено», особенно любят выходить без сопровождения. Но почти каждое требует дополнений. Бесплатно для кого и при каких условиях? Безопасно от какого риска? Готово к демонстрации или к эксплуатации? Быстро по сравнению с чем? Проверено каким способом?

Ирина рассказывала, как однажды получила сообщение «ремонт закончен». Оказалось, закончилась смена ремонтника. Технически в здании действительно что-то завершилось. Просто не то, за что платили.

Чтобы не спорить бесконечно, важные понятия связывают с критериями. Например, «заявка закрыта» означает не «сотрудник нажал кнопку», а «работа выполнена, результат проверен, подтверждение записано». Критерий можно обсуждать, улучшать, иногда менять. Зато видно, что именно считается успехом.

Определение — не заклинание

Хорошее определение помогает узнавать предмет и отличать его от соседних. Оно может указать более общий класс и отличительные признаки. Квадрат — прямоугольник с равными сторонами. Здесь известно, к какому классу относится фигура, и что дополнительно требуется.

Но не всякое понятие удобно определять таким способом. Иногда вводят условное значение для конкретной задачи: в этом отчёте «активный пользователь» — тот, кто совершил хотя бы одно указанное действие за последние тридцать дней. Это соглашение. Оно не открывает вечную сущность активности, зато делает подсчёт воспроизводимым.

Сравнивать два отчёта без проверки таких соглашений опасно. В одном активным назван входивший в систему, в другом — совершивший покупку. Числа одинаково красивы, но считают разных людей. Проценты умеют носить одинаковые костюмы лучше некоторых близнецов.

Есть определение через операцию измерения: как именно устанавливают величину или признак. Оно особенно полезно, когда слова расплывчаты. «Температура устройства» без указания точки измерения может означать температуру корпуса, воздуха рядом или микросхемы. Все три числа могут быть честными и существенно разными.

Круг в определении появляется, когда неизвестное объясняют через него же. «Надёжная система — система, которой можно надёжно пользоваться» не делает нас образованнее. Иногда круг длиннее: компетентность объясняют профессионализмом, профессионализм — экспертностью, экспертность — компетентностью. Получается карусель, на которой можно долго кататься с серьёзным лицом.

Слишком широкое определение захватывает лишнее. «Птица — животное с крыльями» включает не только птиц. Слишком узкое исключает нужное. «Птица — животное, которое летает» не подходит для всех птиц и опять допускает посторонних. Хорошая проверка определения — поиск пограничных и неудобных случаев. Если определение выдерживает только примеры, которые вы сами для него выбрали, оно пока проходит домашний конкурс красоты.

Спор о свободе с двумя разными клетками

— У нас полная свобода обсуждения, — объявил руководитель.

— Но за несогласие людей снимают с проектов.

— Высказываться им никто не мешает.

В первом употреблении свобода могла восприниматься как отсутствие наказания за добросовестное несогласие. Во втором осталась физическая возможность произнести слова. Смена незаметна, потому что термин не сменил вывеску.

Похожим образом «ответственность» обозначает то причинную роль, то моральную обязанность, то полномочия, то наказание. «Вы отвечаете за результат» может означать «у вас есть ресурсы и право принимать решения», а может — «потом объясните, почему ресурсов не хватило». Прежде чем соглашаться, полезно уточнить, какой именно вид ответственности предлагается. Некоторые должности — это торжественное назначение человека последней строкой в чужом оправдании.

В философии это называется работой с понятиями, но начинается она не в башне из слоновой кости, а возле рабочего календаря. «Удобное время» у начальника и у человека, забирающего ребёнка, может различаться. Это не обязательно противоречие и не обязательно чья-то хитрость. Сначала обнаружьте разные основания оценки.

Попробуйте поймать переодевание

В рекламе сервиса сказано: «Мы отвечаем на каждое обращение». Клиент отправил вопрос о неверном начислении. Ему пришло автоматическое сообщение: «Ваше обращение получено». Представитель сервиса заявляет, что обещание выполнено.

Какие два смысла слова «ответ» здесь возможны? Подтверждение получения и содержательное разъяснение. Чтобы решить спор об обещании, нужно уточнить контекст и заявленные условия. Но логическая проблема уже видна: нельзя доказывать наличие содержательного ответа одним фактом отправки любого сообщения.

Теперь проверьте фразу: «Этот человек успешен, потому что зарабатывает много. Мы должны слушать его советы о воспитании, ведь он успешен». В первом шаге успех определён финансовым результатом. Во втором слово несёт более широкий ореол общей компетентности. Даже если доход установлен верно, переход к качеству педагогических советов требует отдельного обоснования.

Наконец: «Система не ошибается, потому что всегда выполняет программу». Выполнение программы и соответствие программы задаче различаются. Именно этот вопрос стоял перед бюро. Чтобы проверить правильность реализации, требуется одно. Чтобы проверить правильность требований — другое. Можно безупречно изготовить лестницу к не той стене.

Первое уточнение в деле павильона

После часа разговора выяснилось: никто не видел открытую дверь. Охранник видел зелёный статус в приложении. Физический датчик положения двери хранил данные в другом журнале.

— Так, может, ничего и не случилось? — обрадовался директор.

— Случилось как минимум расхождение между тем, что вы заявили, и тем, что проверили, — сказал Марк. — А что произошло с дверью, мы сейчас узнаем.

Датчик сообщил: дверь открывалась на семнадцать секунд.

Это был полезный удар по преждевременной радости. Уточнение понятия не отменило происшествие, а сделало его точнее. Теперь было известно, какое событие произошло, в какой интервал и каким способом оно зарегистрировано. Догадок оставалось много, зато у них появился общий предмет.

Павел дописал под словом «дверь»: «Физическая». Иногда для продвижения расследования достаточно одного прилагательного. Особенно если до этого дело держалось на десяти впечатляющих существительных.

Глава 3. Противоречие и человек, который изменил мнение

Непротиворечивость полезна. Непогрешимость чаще всего существует в собственном пересказе.

Два документа и один несчастный замок

По инструкции ночной тест не должен был открывать дверь. По протоколу испытаний ночной тест включал проверку физического открывания. Директор объявил это нормальным рабочим уточнением.

— В одном документе запрещено то, что в другом требуется, — сказала Ирина.

— Документы создавали разные отделы.

— Замок от этого не стал двумя замками.

Закон непротиворечия в классической логике выражают схемой: не могут одновременно быть истинными P и не-P в одном и том же смысле. Символически: ¬ (P ∧ ¬P). Знак ¬ читается «не», знак ∧ — «и». Формула не ругает людей за сомнения. Она сообщает, какие два утверждения нельзя совместно принять как истинные при фиксированном понимании.

«Дверь открыта» и «дверь не открыта» противоречат друг другу, если речь об одной двери, одном моменте, одном значении слова «открыта». «Вчера была открыта, сегодня закрыта» не образует противоречия. «Для посетителей закрыта, для обслуживания доступна» может описывать разные режимы. «Приоткрыта» заставляет уточнить, как определено бинарное состояние в модели.

Практическое правило поэтому звучит осторожнее бытового «вы себе противоречите»: сначала убедитесь, что совпадают предмет, время, отношение и смысл. Иначе человек может торжественно разоблачить календарь за то, что вчера было вторник, а сегодня среда.

Противоречие, противоположность и середина

«Все сотрудники пришли» и «Ни один сотрудник не пришёл» при непустой группе не могут быть одновременно истинными, но могут быть одновременно ложными: пришла часть людей. Эти утверждения противоположны, однако одно не является точным отрицанием другого.

Точное отрицание «Все сотрудники пришли» — «Хотя бы один сотрудник не пришёл». Вот эти два утверждения в обычной классической модели не бывают ни одновременно истинными, ни одновременно ложными. Если множество сотрудников пусто, возникают дополнительные особенности универсальных высказываний; к ним мы вернёмся при разговоре о кванторах. Пока группа у нас есть, и часть её уже просит закончить совещание.

«Хороший» и «плохой» тоже не всегда образуют пару P и не-P. Между ними может быть «средний», а оценки могут относиться к разным свойствам. Хороший инженер может быть плохим докладчиком. Хороший докладчик может полчаса объяснять, почему не является инженером, так убедительно, что ему дадут возглавить лабораторию.

Путать противоположность с отрицанием выгодно в споре. «Вы не считаете это решение лучшим? Значит, считаете его худшим!» Нет: оно может быть приемлемым, вторым по качеству или неоценённым. Человек отказался от одной вершины, а ему предлагают немедленно переселиться в подвал.

Когда изменения честны

В понедельник Ирина считала вероятной ошибку контроллера. Во вторник, увидев новый журнал, предпочла версию неверной конфигурации.

— Вы непоследовательны, — сказал директор.

— Последовательна в способе проверки. Поэтому изменила результат.

— Но вчера было иначе.

— Да. Вчера у нас не было сегодняшних данных. Прошлое довольно строго соблюдает это правило.

Человек может пересматривать мнение без нарушения логики. Более того, отказ пересматривать его при опровержении способен сделать рассуждение хуже. Важно различать одновременное утверждение несовместимых положений и последовательную смену убеждения с указанием оснований.

Есть и практическая двойственность: «Я хочу сменить работу и боюсь её менять». Это не формальное противоречие. Желание получить новое и желание избежать риска могут сосуществовать. Логическая запись «хочу уйти» и «не хочу уходить» иногда чрезмерно грубо описывает разные мотивы, сроки и условия.

Софья предлагала разворачивать такие фразы: «Хочу уйти из нынешней ситуации, но пока не хочу принимать конкретный риск». Тогда вместо обвинения человека в нелогичности появляется задача: какие условия изменят решение? Финансовый резерв? Другая вакансия? Разговор с руководителем? Иногда то, что называют внутренним противоречием, оказывается плохо составленным списком требований.

Что действительно показывает найденное противоречие

Представим набор утверждений: всякое открытие двери требует команды контроллера; в рассматриваемый интервал контроллер не выдавал команд; дверь открылась. Совместно эти три положения несовместимы в данной модели. Но логика не сообщает автоматически, какое из них ошибочно.

Может быть, есть механическое открывание без команды. Может быть, журнал команд неполон. Может быть, датчик ошибочно зарегистрировал открытие. Может быть, время в журналах рассинхронизировано. Противоречие показывает, что весь набор нельзя сохранить без изменений. Оно не выдаёт фамилию виновной посылки.

Это важно в любой диагностике. Если наблюдение не совпало с прогнозом, проблема может быть в основной гипотезе, вспомогательных предположениях, измерении или условиях опыта. Нельзя каждый раз спасать любимую гипотезу бесконечными оговорками. Но и объявлять её опровергнутой, не проверив прибор, иногда преждевременно. Разумная проверка ищет независимые способы различить объяснения.

В деловой жизни противоречивые требования нередко замаскированы под амбициозность. «Сделайте дешевле всех, быстрее всех, лучше всех и без изменения ресурсов». Сами по себе эти слова ещё не формальное противоречие: может существовать удачное решение. Но если конкретные ограничения несовместимы, мотивационная речь не создаст допустимую комбинацию. Иногда сотрудникам предлагают не задачу, а одновременное нарушение нескольких законов сохранения с еженедельным отчётом.

Взрыв, от которого не разлетается мебель

В классической логике из противоречивого набора посылок выводимо любое заключение. Это называют принципом взрыва. Речь не о психологии: человек, запутавшийся в показаниях, не получает сверхспособность доказывать всё на свете. Речь о свойствах определённой формальной системы.

Короткая демонстрация устроена так. Пусть приняты P и ¬P. Из P можно получить P или Q. Если теперь использовать ¬P и правило исключения одной альтернативы, получается Q. А Q мы могли выбрать произвольно. Поэтому наличие противоречия разрушает обычную функцию классической теории — отличать то, что следует, от того, что не следует.

На практике это не означает, что при обнаружении двух конфликтующих строк бухгалтер обязан признать существование русалки в серверной. Это означает, что нельзя без ограничений обращаться с противоречивой базой как с надёжным набором классических посылок.

Существуют паранепротиворечивые логики, в которых противоречие не обязательно ведёт к такому взрыву. Они позволяют иначе организовать вывод при конфликтующей информации. Это не отмена проверки и не разрешение объявлять всё истинным. Меняются конкретные правила системы. Специализированная логика похожа на специальный инструмент: полезно знать, какую именно операцию она выполняет, прежде чем размахивать ею в споре о чайнике.

Небольшой разбор большого скандала

Один отдел сообщил: «Все заявки обработаны». Второй нашёл необработанную заявку. Начальник первого отдела объяснил: «Она поступила позже». Противоречие исчезнет, если первое утверждение действительно относилось к заявкам до определённого времени. Не исчезнет, если временную границу придумали после обнаружения проблемы, а отчёт представляли как описание всех актуальных заявок.

Логическая оценка содержания и оценка добросовестности автора не совпадают. Два уточнённых утверждения могут быть совместимы, а первоначальный отчёт всё равно вводить в заблуждение. Человек способен сказать буквальную правду так, чтобы слушатель почти неизбежно сделал неверный вывод. Этим занимаются не только мошенники. Иногда этим занимается фраза «почти готово».

Проверьте ещё пример: «Каждый участник подписал документ»; «Марина не подписала документ»; «Марина — участник». Три утверждения вместе несовместимы. Уберите любое одно — и оставшиеся могут быть истинными. Это минимальный конфликтующий набор. В сложных базах полезно искать именно такие небольшие ядра противоречия: чинить их легче, чем обвинять в нелогичности всю организацию сразу.

Если же известно только, что один документ ошибочен, нельзя произвольно выбрать удобный. Иногда обе версии неверны. Например, один отчёт говорит о пяти датчиках, второй — о семи, а фактически установлено шесть. Несогласие между двумя людьми ещё не гарантирует, что истина прописана у одного из них.

Семнадцать секунд

Ирина свела часы журналов к единому времени. Оказалось, команду на открытие выдали за двадцать секунд до отметки датчика. Противоречие «команды не было, но дверь открылась» исчезло: вначале сравнивали разные интервалы.

Осталось другое: тестовый сценарий и рабочие требования действительно расходились. Директор хотел назвать это человеческим фактором. Павел предложил пока более точное выражение: «несогласованные документы». Человеческий фактор часто бывает именем, которым называют проблему после того, как перестают интересоваться её устройством.

На следующий день подрядчик прислал исправление. В нём было написано: «Ночной тест двери проводится без открытия двери, кроме случая её открытия в рамках теста».

Марк прочитал дважды.

— Хорошо, — сказал он. — Теперь у нас есть документ, который заранее согласен с любым будущим.

Глава 4. Третьего не дано, но вы предложили не те два

Ложная дилемма — это когда вам показывают две двери и прячут коридор.

Либо с нами, либо чайник

На совещании директор поставил вопрос ребром:

— Либо мы доверяем системе, либо отказываемся от автоматизации.

Ирина предложила третий вариант: исправить конфигурацию и проверить требования. Директор счёл его уходом от принципиального выбора.

— Вы за прогресс или против?

— Я за проверку. Прогресс пока может посидеть, ему никто не угрожает.

Закон исключённого третьего в классической логике относится к паре P и ¬P: P или не-P. Он не говорит, что любая названная человеком пара исчерпывает все возможности. «Доверять безоговорочно» и «отказаться навсегда» — не точные отрицания друг друга. Между ними помещаются испытания, ограниченное применение, резервный режим, изменение требований и ещё несколько вполне обитаемых решений.

Подмена происходит, когда риторическую вилку выдают за логическую. «Либо идеальный сотрудник, либо бесполезный». «Либо немедленно согласиться, либо не уважать». «Либо всё случайно, либо всё заранее задумано». Прежде чем выбирать, спросите: действительно ли второе утверждение является отрицанием первого? Если нет, почему вариантов только два?

Истина и знание об истине

В закрытом ящике лежит ключ. Утверждение «ключ находится в ящике» в обычной классической модели либо истинно, либо ложно. Но мы можем не знать, какое значение у него сейчас. Наше незнание не создаёт третье физическое место между ящиком и не-ящиком.

Точно так же «не доказано P» не равно «доказано не-P». Если не установлено, что датчик неисправен, это ещё не доказывает его исправность. Если не нашли подтверждения версии, это не всегда означает, что нашли её опровержение. И наоборот: отсутствие опровержения не выдаёт версии сертификат истины.

В работе полезно иметь не только два статуса предмета, но и несколько статусов знания: подтверждено, опровергнуто, не проверено, данные конфликтуют. Это организация информации, а не обязательно новая логическая теория. Иногда таблица с колонкой «неизвестно» делает для здравого смысла больше, чем плакат «думай позитивно» на всю стену.

Директор хотел, чтобы в отчёте каждая строка была либо зелёной, либо красной. Серый цвет казался ему нерешительным.

— Если данных нет, что ставить? — спросила Ирина.

— Зелёный, пока не доказано обратное.

— Тогда ваша система измеряет не состояние оборудования, а оптимизм составителя.

Пограничные слова

С предложением «этот человек высокий» труднее, чем с ключом в конкретном ящике. Что считать высоким? Для какой группы? По какому порогу? Если критерий не зафиксирован, спор может идти о границах понятия, а не о фактическом росте.

Можно договориться: в данной задаче высоким считаем человека ростом не менее 190 сантиметров. Тогда для измеренного роста появляется ясный порог, хотя остаются точность измерения и округление. Но такое соглашение не доказывает, что в обычной речи существует естественная пропасть между 189,9 и 190 сантиметрами.

Размытость языка породила серьёзные логические и философские исследования. Есть многозначные и нечёткие подходы, есть другие способы описывать пограничные случаи. Из этого не следует, что законы классической логики «не работают в жизни». Следует более аккуратный вывод: сначала выясняют, какую задачу решают и какая модель значений подходит.

Нечёткая принадлежность признаку не то же самое, что вероятность неизвестного факта. Число, выражающее степень соответствия расплывчатому понятию «тёплый», и вероятность того, что температура превысила фиксированный порог, отвечают на разные вопросы. Одинаковая запись от нуля до единицы не делает величины близнецами.

Когда «или» не выгоняет соседний вариант

В обычной речи «или» бывает включающим и исключающим. «Для входа предъявите паспорт или пропуск» иногда допускает предъявить оба документа. «Выберите один из двух призов» не допускает получить оба, если правила именно таковы.

В классической логике стандартное P ∨ Q — включающее «или»: истинно хотя бы одно, возможно оба. Исключающее «либо одно, либо другое, но не оба» требует дополнительного условия. Ошибка перевода возникает, когда читатель слышит один смысл, а составитель использует другой.

На двери мастерской висело: «Вход в каске или защитных очках». Посетитель в каске без очков решил, что соответствует правилу. Автор таблички на самом деле хотел потребовать оба средства защиты. Здесь проблема не в посетителе, который недостаточно вдохновился безопасностью. Союз выразил другую структуру требования.

Разница между «и» и «или» способна менять работу фильтра, форму допуска, условия скидки, результаты поиска. Поэтому при важной инструкции полезно проверить несколько случаев: только первое, только второе, оба, ни одного. Не обязательно рисовать таблицу истинности на каждом семейном совете. Но четыре воображаемых посетителя часто спасают от одного реального скандала.

Третья возможность как инструмент

Вам предлагают: «Либо он ошибся, либо намеренно солгал». Есть ли другие варианты? Возможно, его неверно процитировали; вопрос содержал двусмысленность; он говорил о другом времени; данные изменились; сообщение неполно. Даже когда ошибка и ложь остаются главными версиями, их исчерпывающий характер нужно обосновать.

Но бесконечное изобретение невероятных возможностей тоже не всегда помогает. Логическая возможность, практическая правдоподобность и достаточность для действия различаются. Можно придумать фантастическую историю, объясняющую любой звук за стеной. Это не означает, что все версии заслуживают одинаковой проверки.

Ищите альтернативы, которые совместимы с данными и имеют понятный механизм. Затем спрашивайте, что между ними различает наблюдение. Если все версии предсказывают один и тот же результат, этот результат не очень помогает выбрать. Если одна ожидает запись в журнале, а другая — отсутствие такой записи, появляется проверка.

В споре о человеке полезно добавить ещё один вариант: «Я пока не знаю». Это не вечное убежище от решения. Иногда срок требует действовать. Но временное признание неопределённости честнее, чем уверенно приклеенная этикетка, которую потом отдирают вместе с репутацией.

Разбор у закрытого шкафа

В шкафу находится либо красная, либо синяя папка. Нам не сказали, может ли там быть обе. Можно ли из наличия красной вывести отсутствие синей? Нет, пока «либо» не уточнено как исключающее или не дано условие, что папка ровно одна.

Если известно, что папка ровно одна и она либо красная, либо синяя, наличие красной исключает синюю. Но если известно только, что красной нет, наличие синей следует лишь при гарантии, что исходный перечень полон. Может быть, папка зелёная. Может быть, шкаф пуст. Условия задачи не следует дописывать по настроению.

Теперь попробуйте отрицать фразу «Все двери закрыты». Не «все открыты», а «хотя бы одна не закрыта». Когда отрицание касается группы, оно не обязано переворачивать каждый элемент. Иногда достаточно одного скромного контрпримера, который стоит в коридоре и хлопает на сквозняке.

Решение, которое не нравилось цветовой гамме

Бюро предложило временно отключить автоматическое открывание в тестовом режиме, оставить остальные функции и провести отдельные испытания. Это был не полный отказ от системы и не полное доверие ей.

— Полумера, — сказал директор.

— Мера, соответствующая тому, что мы знаем, — ответила Ирина.

Она добавила в отчёт серую строку: «Причина появления сообщения на центральном экране не установлена». И именно эта строка оказалась самой полезной. Изучая её, Марк заметил: открытие двери и появление надписи могли иметь разные причины.

До этого все обсуждали одно происшествие. Возможно, перед ними лежало два.

Глава 5. Основание, которое не помещается в слово «потому»

После слова «потому» иногда начинается объяснение, а иногда — ремонт самооценки.

Четвёртый закон с особым характером

— Я уверен в Денисе, потому что знаю людей, — сказал директор.

— А откуда вы знаете, что хорошо знаете людей? — спросила Софья.

— Я редко ошибаюсь.

— Как вы это проверяли?

— Обычно всё потом подтверждается.

— А случаи, когда не подтверждается?

— Значит, люди изменились.

У каждого утверждения был охранник. Уверенность защищало знание людей, знание людей — редкость ошибок, а ошибки отправляли в отдел изменения человеческой природы. Получилась прекрасно охраняемая конструкция без входа для проверки.

В традиционных изложениях рядом с тождеством, непротиворечием и исключённым третьим часто называют закон достаточного основания. Его полезный практический смысл: принимая утверждение, располагайте достаточными основаниями, а не только желанием согласиться с ним.

Но здесь необходима важная оговорка. Принцип достаточного основания не имеет того же формального статуса, что названные классические схемы. В философии существуют разные его версии: о причинах событий, об объяснении фактов, об основаниях истин. Сильные универсальные формулировки вызывают споры. Нельзя просто дописать четвёртую строчку к таблице истинности и объявить, что теперь доказана объяснимость всего существующего.

Для нашей практической работы достаточно более скромной дисциплины: соразмерять утверждение и подтверждение, различать виды оснований и не выдавать отсутствие объяснения за готовое объяснение. Скромность формулировки здесь не мешает силе метода. Иногда мысль становится полезнее, когда из неё выпускают лишний пафос.

Причина не равна доказательству

Павел спросил, почему человек считает, что поезд ушёл. Один ответ: поезд ушёл, потому что подошло время отправления и машинист начал движение. Это объяснение события. Другой: я считаю, что поезд ушёл, потому что вижу пустой путь и получил подтверждение диспетчера. Это основания знания о событии.

Причина пожара и доказательство пожара тоже различаются. Повреждение проводки могло участвовать в возникновении пожара. Запись камеры могла подтверждать, что пожар происходил. Камера не становится причиной пламени, а предполагаемая неисправность проводки сама по себе не подтверждает, что пламя действительно было.

Есть ещё мотив убеждения: человеку приятно думать, что его проект успешен, потому что он потратил на него три года. Это объясняет привязанность к мысли, но не доказывает успех. Психологическая причина уверенности не всегда является хорошим эпистемическим основанием — основанием считать утверждение истинным.

В быту эти различия объединяются одним «почему». «Почему ты так решил?» может значить «что тебя подтолкнуло», «на какие факты опираешься» или «какой расчёт делает решение разумным». Если в ответ на просьбу привести данные выслушать историю тяжёлого детства проекта, станет теплее, но расчёт не появится.

Три подписи не превращают копию в три факта

Марк нашёл три сообщения о том, что Денис открывал павильон ночью. Директор предложил считать вопрос закрытым: три независимых подтверждения. Проверка показала, что первое сообщение было пересказом слов охранника, второе — пересказом первого, третье — комментарием директора ко второму.

— Источников три, — настаивал он.

— Адресов три. Источник один, — сказал Марк.

Количество пересказов нельзя автоматически считать количеством независимых наблюдений. Утверждение, которое прошло через десять каналов, может по-прежнему опираться на одного человека, один ошибочный датчик или один неверно понятый документ. Иногда информационный шум — это эхо, получившее собственные визитки.

Независимость требует уточнения. Два свидетеля могут наблюдать событие отдельно, но потом обсудить его и согласовать воспоминания. Два прибора могут быть разными, но получать время от одного неисправного источника. Две экспертизы могут использовать общий исходный файл. Формальное различие исполнителей ещё не обеспечивает независимость ошибок.

При оценке основания спрашивают: откуда взялось сообщение, что именно наблюдалось, где появилась интерпретация, может ли ошибка повторяться из общего источника? Это полезно не только следователю. Когда три сайта сообщают одну новость одинаковыми словами, вполне возможно, что перед нами одна новость и два упражнения по копированию.

Достаточно для чего

Одних и тех же данных может хватать для постановки дополнительного вопроса, но не хватать для обвинения. Может хватать для остановки учебного стенда, но не хватать для окончательного заключения о причине отказа. Порог решения связан не только с вероятностью, но и с последствиями ошибок, стоимостью проверки и возможностью отменить действие.

В нашей истории временно запретить ночной тест до выяснения причин — одно действие. Публично назвать сотрудника виновным — другое. Не надо требовать одинакового обоснования для любой реакции, но нужно ясно понимать, какую реакцию мы обосновываем.

Это не приглашение назначать произвольные вероятности. Если данных мало, красиво написанные «87 процентов» остаются предположением с причёской. Иногда честнее описать, что известно, какие объяснения остаются и почему выбранная мера разумна при нескольких вариантах.

В технике полезны обратимые промежуточные действия: изолировать проблемный режим, снять дополнительные показания, сохранить журналы. В разговоре — уточнить смысл до вывода о намерении. В бытовом споре — проверить счётчик до обвинения соседа в любви к чужому электричеству. Логика часто экономит именно цену преждевременного окончательного решения.

Цепочка оснований и место остановки

На каждое «почему» можно ответить новым утверждением, к которому снова возникнет «почему». Не следует из этого, что любое знание невозможно. Но и не следует, что в какой-то момент допустимо стукнуть кулаком: «Потому что я так сказал, и на этом философия закончилась».

В конкретной задаче есть принятые исходные данные, определения, результаты измерений, правила и допущения. Их надёжность может опираться на другие процедуры. Мы не проверяем всю историю науки перед тем, как пользоваться линейкой, однако можем проверить, подходит ли линейка к задаче и не сломана ли она.

В формальной теории часть утверждений принимают как аксиомы. Дальнейшие доказательства показывают, что следует из них по установленным правилам. Аксиома не обязана быть «настолько очевидной, что спорить нельзя». Её роль определяется устройством теории. Разные наборы исходных положений могут задавать разные теории.

В практическом анализе полезно отмечать точку остановки: «Мы принимаем достоверность этих записей на основании такой-то проверки». Если позже появятся основания сомневаться, можно вернуться именно к этому месту. Непроверяемая уверенность похожа на дом, в котором вместо фундамента написано «не трогать».

Бремя обоснования без судебного молотка

Тот, кто предлагает принять существенное утверждение, обычно должен объяснить, почему его следует принять. Фраза «а вы докажите, что это не так» не делает положительную версию доказанной. Если кто-то утверждает, что чайник перестал кипятить из-за невидимого философа, отсутствие доказанного отсутствия философа не поможет приготовить чай.

Однако бремя обоснования зависит от контекста. В споре есть уже принятые сведения, профессиональные стандарты, распределённые обязанности, разные последствия ошибок. Нельзя превратить удобное правило в универсальный способ никогда не отвечать на вопросы. Если вы оспариваете хорошо подтверждённое утверждение, ваши возражения тоже нуждаются в содержании.

Различайте просьбу об основании и бесконечный скептический тормоз. «Как проверяли прибор?» — конкретный вопрос. «А вдруг все приборы мира подделаны?» — логическая возможность, но без дополнительных оснований она редко улучшает диагностику. Здоровое сомнение помогает выбирать проверки. Беспредметное сомнение умеет только отменять возможность остановиться.

Проверьте отчёт

В отчёте написано: «Программа удобна, поскольку сотрудники её используют». Какие скрытые основания нужны? Например, что сотрудники могут свободно выбирать, что использование не обязательно и что нет иных сильных причин пользоваться неудобной программой. Без этого факт использования не доказывает удобство.

Второй пример: «Метод эффективен: после его внедрения результат улучшился». Это полезное наблюдение, но для вывода о причинной роли нужно сравнить альтернативы. Не изменились ли состав группы, сезон, задачи, способ измерения? Не выбрали ли для начала особенно плохой месяц? Причинный анализ заслуживает отдельного разговора; здесь достаточно заметить, что слово «после» ещё не выполнило работу слова «вследствие».

Третий пример: «Этот вариант лучший, потому что его выбрало большинство». Большинство действительно доказывает большинство голосов, если подсчёт верен. Качество варианта зависит от критерия, информированности участников и устройства выбора. Иногда коллектив ошибается единодушно. Ошибка от этого получает хороший протокол, но не становится истиной.

Основание для следующего вопроса

Марк наконец поговорил с охранником. Тот не видел Дениса ночью. Он увидел идентификатор ключа, узнал, кому ключ обычно выдаётся, и пересказал это как личное присутствие сотрудника.

Директор потребовал немедленно обвинить охранника в ложных показаниях. Софья остановила его:

— Мы только что разобрали, как возникает поспешный вывод. Не обязательно тут же повторять демонстрацию на другом человеке.

Нужно было установить, что охранник действительно наблюдал, что понял и как сформулировал сообщение. Ошибка, небрежность и намеренный обман — разные объяснения. Ни одно не следовало выбирать из раздражения.

В конце разговора охранник вспомнил странную деталь: ключ Дениса накануне использовали при обучении системы. До этого деталь казалась ему несущественной.

Ирина попросила схему тестового режима. Впервые за день у неё появилась не просто версия, а конкретное место для проверки.

Глава 6. Если чайник, то кипяток. Но не наоборот

Стрелка в рассуждении — не двусторонний проезд только потому, что вам нужно обратно.

Доступ как семейное проклятие

Правило павильона звучало так: если предъявлен действующий служебный ключ и разрешён вход в данное время, контроллер подаёт команду на открытие. Директор запомнил сокращённо: действующий ключ открывает дверь.

Потом он сократил ещё раз: дверь открылась — значит, воспользовались ключом. А затем доработал до персонального результата: воспользовались ключом Дениса — значит, пришёл Денис. Три сокращения сэкономили слова и уничтожили две проверки.

Софья заметила, что примерно так возникают бытовые обвинения. «Если человек заботится, он перезвонит». «Он не перезвонил». «Он не заботится». Даже если форма кажется знакомой, исходное правило слишком сильное: человек может быть без связи, занят неотложным делом, забыть или неверно понять ожидание. До применения логики нужно проверить универсальность самого условия.

Дедукция не отвечает за обещания, которые мы от её имени выдали миру. Если посылка «каждый заботящийся всегда звонит вовремя» неверна, аккуратная схема не спасёт заключение о чужих чувствах.

Материальная импликация без мистики

В классической логике P → Q называют импликацией. Она ложна только в случае, когда P истинно, а Q ложно. При остальных сочетаниях она истинна. Её удобно понимать как запрет комбинации «условие выполнено, следствие не выполнено».

Пусть P — «эта заявка срочная», Q — «эта заявка зарегистрирована». Правило «если заявка срочная, она зарегистрирована» нарушается срочной незарегистрированной заявкой. Несрочная зарегистрированная заявка не нарушает правило. Несрочная незарегистрированная — тоже. О последних двух случаях правило ничего положительного не требует.

Здесь часто удивляет, что импликация истинна при ложном P независимо от Q. Это свойство выбранной истинностной связки, а не универсальный перевод всех оттенков человеческого «если». Условные обещания, причинные утверждения и рассуждения о том, что было бы при иных обстоятельствах, требуют дополнительного анализа.

Фраза «если Луна сделана из сыра, то мой зонтик синий» в материальном понимании может оказаться истинной при ложном условии. Но это не делает её содержательным объяснением зонтика. Логическая связка проверяет сочетания истинностных значений, а не обеспечивает смысловую связь между любыми двумя предложениями.

Ирина сравнила это с договором, в котором запрещена одна комбинация действий. Если комбинация не возникла, нарушение данного пункта не зафиксировано. Это ещё не значит, что весь договор прекрасен и стороны счастливы. Просто конкретный запрет не был нарушен.

Достаточное и необходимое

Если P → Q, то P является достаточным условием Q в рамках принятого правила. Q является необходимым условием P. Например, принадлежность к квадратам достаточна для принадлежности к прямоугольникам. Быть прямоугольником необходимо для того, чтобы быть квадратом. Но не каждый прямоугольник квадрат.

Для учебного доступа наличие специального кода может быть достаточным условием входа, если так устроена модель. Тогда каждый обладатель подходящего кода получает вход. Но код не обязательно необходим: может существовать доступ по карте. Если же без подтверждённой личности вход невозможен, подтверждение личности необходимо, но не обязательно достаточно: ещё может требоваться разрешение.

Слово «только» любит расставлять ловушки. «Вход разрешён только сотрудникам» означает: если вход разрешён, человек сотрудник. Оно не обещает вход каждому сотруднику. «Каждому сотруднику вход разрешён» выражает обратное направление. Если действуют оба положения, получаем соответствие «тогда и только тогда».

Директор сказал, что все эти тонкости бюрократичны. Ирина напомнила, что дверь как раз открылась из-за тонкости размером с пропущенное условие времени. Некоторые «формальности» имеют петли, замки и материальную стоимость.

Два надёжных хода

Первый: если P, то Q; P; следовательно, Q. Это modus ponens, утверждение основания. Если каждый просроченный ключ отклоняется; данный ключ просрочен; значит, его отклонят — при принятии посылок.

Второй: если P, то Q; не-Q; следовательно, не-P. Это modus tollens, отрицание следствия. Если всякий завершённый отчёт содержит итоговую подпись, а в данном отчёте итоговой подписи нет, значит, он не завершён — опять же при условии, что исходное правило действительно без исключений.

Здесь особенно важно не превращать наблюдение в точное отрицание автоматически. «Я не увидел подпись» отличается от «подписи нет». Возможно, документ неполный, подпись на другой странице или вы смотрели не ту версию. Логическая схема принимает то, что вы подали на вход. Она не умеет тайно проверять зрение.

Есть два соблазнительных неверных хода. Утверждение следствия: если P, то Q; Q; значит, P. И отрицание основания: если P, то Q; не-P; значит, не-Q. Из «при дожде двор мокрый» и мокрого двора нельзя строго вывести дождь: двор могли помыть. Из отсутствия дождя нельзя вывести сухость: остаётся тот же старательный дворник.

Человеку особенно нравится первый неверный ход, потому что он похож на диагностику. Признак есть — значит, причина найдена. Диагностика действительно часто движется от следствия к возможной причине, но тогда это поиск и сравнение гипотез, а не гарантированная дедукция. Врач, инженер и следователь умеют работать в таком направлении именно потому, что не обязаны объявлять первую подходящую причину единственной.

Контрапозиция и перестановка мебели

В классической логике P → Q равносильно ¬Q → ¬P. Это контрапозиция. Если каждый квадрат является прямоугольником, то всё, что не является прямоугольником, не является квадратом. Мы меняем порядок и отрицаем оба утверждения.

Простое обращение Q → P не равносильно исходному. И «противоположная» по виду запись ¬P → ¬Q тоже обычно не равносильна. На словах все три операции звучат как «сказать наоборот», что чрезвычайно удобно для путаницы.

Полезно проверять направление на вложенных кругах. Круг квадратов находится внутри круга прямоугольников. Из маленького можно перейти в большой. Из большого в маленький нельзя без дополнительного признака. За пределами большого вы автоматически за пределами маленького. А вот вне маленького внутри большого места ещё много.

С жизненными условными фразами нужна осторожность. «Если я устал, то выпью чай» может выражать намерение, привычку или обещание в определённом контексте, а не строгое универсальное правило. Не стоит ловить близкого на формальной контрапозиции фразы, которую он произнёс, снимая обувь. Можно выиграть импликацию и проиграть вечер.

Упражнение на испорченную инструкцию

Инструкция утверждает: «Если режим тестирования активен, уведомление отмечено буквой Т». В журнале есть уведомление с буквой Т. Обязательно ли активен тестовый режим? Нет. Буква могла появляться и по другому условию. Нужно либо исключить другие основания, либо иметь двустороннее правило.

Теперь уведомление не отмечено буквой Т. Что следует? Если инструкция точна и применима к данному уведомлению, тестовый режим не активен. Это отрицание следствия. Но если мы не уверены, что поле журнала сохранилось полностью, практический вывод слабее: могли быть потеряны данные.

Третий случай: тестовый режим не активен. Можно ли утверждать, что буквы Т нет? Нет, это отрицание основания. В исходной инструкции не сказано, что буква появляется исключительно при тесте.

Четвёртый: инструкция дополнена фразой «И ни при каких иных режимах буква Т не появляется». Теперь по Т можно вывести тестовый режим, а по его отсутствию — отсутствие Т. Дополнительная посылка делает дополнительную работу. Она не была бесплатным приложением к первой фразе.

Что именно пропустили

Схема конфигурации показала: разработчик перенёс условие «служебный ключ действителен» в ночной сценарий, а проверку разрешённого времени там не повторил. Он считал, что тестовый режим существует отдельно от рабочего замка. Но в установленной конфигурации тест посылал команду в тот же исполнительный блок.

Это объясняло возможный механизм открытия. Ещё нужно было подтвердить, что именно этот сценарий запустился, какая версия конфигурации действовала и какие записи его сопровождали. Хорошая версия не перестаёт нуждаться в проверке оттого, что инженеру наконец стало интересно.

— Значит, Денис ни при чём? — спросил директор.

— Из найденного этого пока не следует, — ответил Марк. — Следует, что ваша первоначальная цепочка не доказана и у нас есть проверяемый технический механизм.

Директор вздохнул. Ему хотелось получить фамилию. Логика выдавала условия. Для эмоциональной разрядки это был явно не лучший сервис.

Глава 7. Таблица, которая не уважает должности

Таблица истинности не умеет учитывать авторитет. У неё вообще довольно бедная светская жизнь.

Четыре посетителя вместо сорока писем

Подрядчик предложил новую формулировку: «Доступ разрешён при наличии карты или кода и подтверждении времени». Все кивнули, кроме Ирины.

— Карта сама по себе даёт доступ? Или время проверяется и для карты, и для кода?

— Там же всё написано.

— Да. Именно поэтому я спрашиваю.

Возможны две структуры: карта ИЛИ (код И время); либо (карта ИЛИ код) И время. При наличии карты и неподходящем времени первая допускает вход, вторая — нет. Разница находится не в электронике, а в скобках. Но оплачивать её последствия придётся деньгами, а не скобками.

Таблица истинности перечисляет все сочетания значений исходных высказываний и результат составного. Для двух независимых букв имеется четыре сочетания, для трёх — восемь, для n — 2 в степени n. Это число строк, а не вероятность каждой строки. Реальные состояния могут быть неравновероятны или даже недостижимы; таблица рассматривает логические сочетания, пока дополнительные ограничения не заданы.

Как построить таблицу без торжественной музыки

Обозначим карту C, код K, допустимое время T. Сравним две формулы: C ∨ (K ∧ T) и (C ∨ K) ∧ T. Возьмём C истинно, K ложно, T ложно. В первой формуле левая часть «C» уже делает всё «или» истинным. Во второй скобка истинна, но «и T» даёт ложь. Одной различающей строки достаточно, чтобы показать неравносильность.

Для полной таблицы нужно перебрать все восемь строк. Начинают с внутренних скобок, затем вычисляют внешние связки. «И» истинно, когда истинны обе части. Включающее «или» истинно, когда истинна хотя бы одна. «Не» меняет значение. Импликация ложна только при истинном основании и ложном следствии. Эквивалентность истинна, когда значения частей совпадают.

Есть полезный способ проверять себя: словами объяснять каждую спорную строку. Если формула допускает вход по карте ночью, а вы не собирались этого разрешать, ошибка уже видна. Не надо ждать, пока программа с исключительной исполнительностью продемонстрирует вашу опечатку на оборудовании.

Таблица помогает отличать три случая. Тавтология истинна во всех строках. Противоречивая формула ложна во всех. Выполнимая формула истинна хотя бы в одной строке; если у неё есть и истинные, и ложные строки, она не тавтологична и не противоречива. Слово «выполнимая» здесь не означает «легко реализуемая в железе». Оно говорит о наличии подходящего распределения истинностных значений.

Проверка аргумента

Чтобы проверить вывод, ищут строку, где все посылки истинны, а заключение ложно. Нашлась — перед нами контрпример правильности. Не нашлась при полном переборе — вывод правилен в рассматриваемой логике.

Возьмём посылки P → Q и Q. Заключение P. При P ложном и Q истинном обе посылки истинны, заключение ложно. Вот и вся демонстрация ошибочности утверждения следствия. Должность автора, срочность проекта и выражение «так всегда делали» не меняют эту строку.

Теперь P → Q и P, заключение Q. Чтобы обе посылки были истинны при P истинном, Q должно быть истинным: иначе импликация ложна. Строки с истинными посылками и ложным заключением нет. Это и есть правильность modus ponens в таблице.

Если посылки несовместимы, строки с их совместной истинностью нет вообще. Тогда условие правильности выполняется автоматически: опасной строки не существует. Это важная особенность классического понятия следования. Она не означает, что несовместимые посылки стали хорошей основой реального расследования. Мы уже видели, почему противоречивый набор требует отдельной работы.

Законы, которые сокращают мысль

Коммутативность позволяет переставлять части «и» и «или»: P ∧ Q равно по истинности Q ∧ P; аналогично для ∨. Ассоциативность позволяет менять группировку одинаковых связок: (P ∧ Q) ∧ R и P ∧ (Q ∧ R) равносильны. Но в обычном рассказе порядок фраз может нести временной смысл: «он нажал кнопку и дверь открылась» часто сообщает последовательность. Чистая истинностная связка сама по себе этого не кодирует.

Дистрибутивность связывает «и» с «или»: P ∧ (Q ∨ R) равносильно (P ∧ Q) ∨ (P ∧ R). Для допуска это означает: нужен общий признак P и хотя бы один из Q или R. Можно описать две допустимые ветви, в каждой сохранив P. Если забыть P в одной ветви, получится новая инструкция, а не удобное сокращение старой.

Закон поглощения: P ∨ (P ∧ Q) равносильно P. Дополнительная ветвь не добавляет случаев, потому что всякий случай P ∧ Q уже входит в P. Другая форма: P ∧ (P ∨ Q) равносильно P. В условиях конкурса иногда встречаются длинные конструкции, которые после такого упрощения оказываются одной простой проверкой. Авторы обычно называют длину серьёзностью. Таблица — избыточностью.

Идемпотентность: P ∧ P равносильно P; P ∨ P тоже. Повторение одного требования не делает его вдвое сильнее. Аналогично три копии одного сообщения не становятся тремя независимыми доказательствами, хотя здесь речь уже о практическом анализе источников, а не непосредственно о булевой формуле.

Двойное отрицание в классической логике возвращает исходное: ¬¬P равносильно P. Но в разговорном «не могу не отметить» есть ещё вежливость, интонация и иногда желание выступить подольше. Формальная равносильность не отменяет стилистики.

Де Морган и отрицание плохого объявления

Отрицание «P и Q» равносильно «не-P или не-Q». Чтобы набор из двух обязательных условий не выполнился, достаточно нарушения хотя бы одного. Отрицание «P или Q» равносильно «не-P и не-Q». Чтобы не выполнялось ни одно из двух допускаемых условий, должны отсутствовать оба.

Охранник сказал: «Вход разрешён тем, у кого есть карта и согласование». Отказ соответствует «нет карты или нет согласования». Не нужно отсутствия обоих одновременно. Если программа отказывала только при отсутствии обоих, она допускала посетителей, выполнивших лишь половину требования.

Другой пример: «Скидка есть при наличии купона или клубного статуса». Отсутствие скидки по этому правилу соответствует отсутствию и купона, и статуса, если иных ограничений в модели нет. Фраза «не купон или не статус» дала бы неправильный результат для обладателя только одного основания скидки.

Эти преобразования полезны при фильтрах поиска, настройках уведомлений, формулировке исключений и даже составлении списка покупок. «Не купить всё из списка» и «не купить ничего из списка» — разные подвиги. Первый обычно выполняется без подготовки.

Практикум с двумя дверями

Условие допуска в архив: сотрудник имеет разрешение R и либо прошёл инструктаж I, либо сопровождается ответственным S. Запишите словами структуру: R И (I ИЛИ S). Какие случаи запрещены? Нет разрешения ИЛИ одновременно нет инструктажа и нет сопровождения. Это отрицание всей формулы по законам де Моргана.

Теперь сотрудник без разрешения пришёл с сопровождающим. Может ли он войти? Нет: S не отменяет R. Такая ошибка часто появляется, когда фразу «или сопровождается» мысленно выносят за общие скобки.

А если разрешение есть, инструктажа нет, сопровождение есть? В учебной модели — да. Если на практике это запрещено, значит, исходное правило неверно описало требование. Не обвиняйте вычисление за то, что оно обнаружило содержание вашей формулировки.

Последний случай: разрешение есть и инструктаж пройден, сопровождающего нет. Допуск есть, потому что включающее «или» не требует обоих альтернативных условий. Если автор хотел требовать оба, ему нужен союз «и», а не более уверенный голос.

Человек, которого не было в таблице

Ирина построила таблицу для нового сценария. Подрядчик признал, что одна ветвь действительно обходила проверку времени. Директор потребовал добавить ещё одно условие: «Если сотрудник надёжный».

— Как это определяет контроллер? — спросила Ирина.

— По списку.

— Тогда условие называется «идентификатор находится в списке». Надёжность человека — отдельное утверждение.

Она не придиралась к словам. Система способна проверить конкретный признак. Если присвоить ему высокое моральное название, возникает ложное чувство, будто проверено больше. Список допущенных не знает будущих поступков. Таблица истинности не выносит характеристику с места работы.

В конце заседания появилось первое действительно проверяемое правило. Оно было короче старого и не содержало слов «очевидно», «надёжно» и «по необходимости». Директор счёл текст недостаточно представительным. Замок, вероятно, оценил бы его выше, но замку наконец перестали приписывать мнение.

Глава 8. Все, некоторые и один человек, испортивший статистику

Слово «все» любит широкие жесты. Контрпример обычно входит без приглашения.

Все ключи проверены. Кроме ключей

Подрядчик сообщил, что все ключи прошли проверку. Ирина спросила, какие именно.

— Все, которые были в списке испытаний.

— А список совпадает со всеми действующими ключами?

— Это разные списки.

— Тогда «все» у нас пока местного значения.

Универсальное утверждение всегда относится к некоторой области: ко всем предметам выбранного типа, всем людям данной группы, всем значениям переменной в указанном множестве. Если область незаметно расширили, вывод может стать неверным. «Все опрошенные довольны» не равно «все клиенты довольны». Особенно если опрашивали только тех, кто согласился улыбнуться для рекламной фотографии.

В логике предикатов можно написать ∀x P (x): для каждого x из принятой области свойство P выполняется. Символ ∀ — квантор всеобщности. ∃x P (x) означает: существует хотя бы один x, для которого P выполняется. Символ ∃ — квантор существования.

Слово «некоторые» в формальной логике обычно означает «хотя бы один», а не «несколько, но не все». Утверждение «некоторые ключи проверены» совместимо с тем, что проверены все. В обычной речи слушатель иногда достраивает «не все» из разговорного ожидания. Такую добавку нельзя незаметно использовать в строгом выводе.

Как отрицать группу, не переворачивая каждый стул

Отрицание «для всех x выполняется P» — «существует x, для которого P не выполняется». Чтобы опровергнуть «каждая дверь заперта», достаточно одной незапертой. Не нужно открывать остальные специально для полноты доказательства.

Отрицание «существует x с P» — «для всех x не-P». Если неверно, что хотя бы один ключ действителен, значит, действительных ключей нет. Здесь отрицание действительно распространяется на всю область.

Символически: ¬∀x P (x) равносильно ∃x ¬P (x); ¬∃x P (x) равносильно ∀x ¬P (x). Это родственники законов де Моргана. Универсальность ведёт себя как обобщённое «и», существование — как обобщённое «или».

Бытовые ссоры регулярно нуждаются в этом различии. «Ты никогда не слушаешь» опровергается хотя бы одним случаем слушания, если понимать фразу буквально. Но часто говорящий сообщает накопленное недовольство, а не предъявляет формальную статистику. Можно заметить чрезмерность формулировки и всё же обсудить проблему. Логика не обязывает отвечать на боль человека архивной справкой о том, как вы слушали его в прошлом феврале.

Точнее сказать: «В последних двух разговорах я не получил ответа на важный вопрос». Такое утверждение легче проверить и полезнее обсуждать. Оно не требует доказывать вечный характер другого человека. Иногда самый гуманный квантор — правильно выбранный период.

Каждый кому-нибудь и один для всех

В павильоне каждый терминал отправлял отчёты какому-нибудь серверу. Директор заключил, что существует сервер, куда приходят отчёты всех терминалов.

— Не обязательно, — сказала Ирина.

— Но сервер же есть у каждого!

— У каждого человека тоже есть своя чашка. Это не значит, что весь отдел пьёт из одной.

Порядок кванторов меняет смысл. ∀x ∃y R (x,y): для каждого x существует подходящий y, возможно свой. ∃y ∀x R (x,y): существует один y, подходящий всем x. Второе утверждение обычно сильнее первого.

Если у каждого сотрудника есть человек, которому он доверяет, из этого не следует, что в коллективе существует всеобщий доверенный человек. Если для каждой задачи есть решение, не следует, что одно решение подходит для всех задач. Универсальные управленческие рецепты особенно не любят эту страницу логики.

Обратный переход при обычных условиях работает: если есть один сервер для всех терминалов, то для каждого терминала найдётся сервер — этот самый. Но даже здесь важно, что означают отношения и какие объекты входят в область. Символы не заменяют постановку задачи.

Пустая группа без особых заслуг

Представим, что в павильоне нет ни одного терминала модели Z. Верно ли утверждение «Все терминалы модели Z прошли проверку» в стандартной классической записи «для любого x: если x — Z, то x проверен»? Да: нет экземпляра Z, который нарушал бы условие. Это называют истинностью на пустом классе, или вакуозной истинностью.

Но из такого утверждения нельзя вывести, что существует хоть один проверенный терминал Z. Универсальная форма сама по себе существование не гарантирует. Нужна отдельная посылка о наличии объекта.

В отчёте это может выглядеть комично. «Все жалобы устранены», потому что ни одна жалоба не зарегистрирована. Возможно, жалоб действительно не было. А возможно, сломалась форма приёма. Логическая истинность аккуратно сформулированного предложения не гарантирует, что оно отвечает на интересующий нас вопрос о качестве работы.

Нельзя объявить любую пустую группу хитростью. Иногда именно такая семантика удобна и последовательна. Важно не извлекать из неё незаявленное существование и не продавать отсутствие проверяемых случаев как результат испытания.

Если утверждается «некоторые сотрудники — инженеры», существование хотя бы одного сотрудника-инженера входит в содержание. Если говорится «все сотрудники отдела — инженеры», при формальном чтении следует отдельно уточнить, существует ли отдел с людьми. В обычной речи существование часто подразумевают; в строгой модели его нужно отметить.

Ровно один — это два требования

Фраза «есть единственный администратор» состоит из наличия и уникальности. Хотя бы один администратор существует. И любые два объекта, обладающие нужным свойством, на самом деле один и тот же объект.

«Не более одного» не гарантирует наличия. Ноль тоже не больше одного. «Не менее одного» не гарантирует уникальности. Их совместное выполнение даёт «ровно один». В документах это различие способно менять обязанности: «назначить не более одного ответственного» формально допускает никого не назначить. Для организации, которая любит избегать ответственности, это почти подарок.

С выражениями «каждый», «любой» и «один из» тоже нельзя действовать на слух. «Любой сотрудник может открыть дверь» может означать, что каждый имеет полномочие, или что достаточно одного произвольно выбранного сотрудника, или что система не различает сотрудников. Нужно восстановить конкретную структуру.

Отношения требуют ещё большей точности. «Каждый проверил чью-то работу» не означает «чью-то работу проверили все». «Все проверили друг друга» может исключать самопроверку, а может быть понято иначе. В качественном регламенте такие вещи лучше описать, чем потом разыскивать смысл по служебным запискам.

Практикум для любителей слова «никогда»

Утверждение: «Каждый посетитель показал хотя бы один документ». Что достаточно для его опровержения? Один посетитель, который не показал ни одного документа. Не посетитель, у которого отсутствовал паспорт, если он показал иной допустимый документ.

Утверждение: «Существует документ, который показал каждый посетитель». Это другое: один общий документ для всех. Можно представить двух посетителей, один показал паспорт, другой пропуск. Первое утверждение истинно, второе ложно, если общих показанных документов нет.

Утверждение: «Ни один сотрудник не проверил все терминалы». Его отрицание: существует сотрудник, проверивший все терминалы. Не «все сотрудники проверили все терминалы». Отрицание не должно быть более амбициозным, чем необходимо.

Наконец: «Каждый терминал проверил ровно один сотрудник». Из этого не следует, что каждый сотрудник проверил ровно один терминал. Один специалист мог проверить десять, другой ни одного, и исходное правило не нарушилось бы. Распределение по объектам и распределение по людям — разные вопросы.

Ключ, выпавший из области определения

Ирина сопоставила списки. Ключ Дениса был служебным, но его копия в тестовой среде не входила в перечень физических ключей, прошедших испытание. Подрядчик проверял одну область, директор распространял вывод на другую.

— Но копия ведь не настоящий ключ, — сказал подрядчик.

— Она посылала настоящую команду настоящему замку, — ответила Ирина. — Пожалуй, этого достаточно, чтобы включить её в обсуждение.

Марк не стал сразу считать механизм подтверждённым. Он попросил воспроизвести сценарий на изолированном стенде с той же конфигурацией и независимой регистрацией команд. У истории появился следующий шаг, на котором она могла не только понравиться, но и не выдержать проверку.

Директор спросил, сколько ещё будет таких шагов.

— Пока не кончатся существенные вопросы, — ответил Павел.

— Они вообще заканчиваются?

— Иногда. Особенно если не создавать новые вместо ответов на старые.

Глава 9. Силлогизм в пальто подозреваемого

Сходство двух людей иногда доказывает только то, что наблюдатель устал различать.

У всех сотрудников были ключи

В бюро принесли новый аргумент. Все ночные администраторы имеют служебный ключ. Человек, открывший дверь, использовал служебный ключ. Следовательно, он ночной администратор.

Директор был доволен: теперь вывод не называл Дениса прямо и выглядел научнее. Павел предложил аналогию: все велосипедисты умеют держать равновесие; цирковой канатоходец умеет держать равновесие; следовательно, канатоходец — велосипедист.

— Это несерьёзно, — сказал директор.

— Форма у вас одинаковая. Серьёзность лица — дополнительная декорация.

Общий признак не гарантирует принадлежность к одному узкому классу. Служебные ключи могут быть у инженеров, руководителя смены и технической службы. Средний термин — тот, через который связывают два других, — должен соединять их действительно, а не создавать впечатление близости.

Три класса и одна лишняя уверенность

Простой категорический силлогизм связывает три термина через две посылки. «Все контроллеры серии А требуют обновления. Этот прибор — контроллер серии А. Следовательно, этот прибор требует обновления». В более традиционной форме: все M суть P; все S суть M; следовательно, все S суть P.

Удобно представлять вложенные множества. Все S находятся внутри M, а все M — внутри P. Значит, все S внутри P. Никакой психологии и магического слова «дедукция» не требуется. Нужно только, чтобы исходные включения были верны и термины сохраняли значение.

Неверный вариант: все S внутри M; все P внутри M; значит, все S внутри P. Два маленьких круга могут лежать в одном большом и не пересекаться. Все кошки — млекопитающие, все лошади — млекопитающие, но конюшня от этого не превращается в очень большую переноску.

Это классическая ошибка нераспределённого среднего термина: общность с некоторой областью не связывает крайние термины требуемым образом. Термин называется распределённым, когда утверждение относится ко всему обозначаемому им классу. В «все S — P» говорится обо всех S, но не обязательно обо всех P. В «ни одно S не является P» исключается пересечение классов, и оба термина охвачены целиком.

Необязательно заучивать таблицу распределённости до первой чашки чая. Сначала научитесь рисовать отношения классов. Терминология нужна, чтобы кратко обсуждать уже понятную структуру, а не чтобы заменить понимание видом человека, который его достиг.

Четыре стандартные формы

Общеутвердительная: все S — P. Общеотрицательная: ни одно S не является P. Частноутвердительная: некоторые S — P. Частноотрицательная: некоторые S не являются P.

У каждой формы свои возможности. Из «ни один служебный ключ не является гостевым» следует «ни один гостевой ключ не является служебным»: отсутствие пересечения симметрично. Из «некоторые инженеры — преподаватели» следует «некоторые преподаватели — инженеры»: существует общий объект.

Но из «все инженеры отдела — сотрудники организации» не следует «все сотрудники организации — инженеры отдела». Обращение общеутвердительного утверждения в той же универсальной форме обычно неправильно. Оно может стать допустимым при дополнительных условиях равенства классов, но эти условия нельзя взять из уважения к инженерам.

Из «некоторые сотрудники не являются инженерами» не следует «некоторые инженеры не являются сотрудниками». Представьте организацию, в которой есть инженеры и бухгалтер. Все инженеры — сотрудники, бухгалтер тоже сотрудник, но не инженер. Исходное высказывание истинно, обращённое может быть ложным.

Почему существование нельзя получить из пустого воздуха

В традиционных силлогистических схемах и их современных интерпретациях важен вопрос существования классов. Из одних универсальных посылок в стандартной современной логике нельзя автоматически получать утверждение о существовании экземпляра.

«Все единороги павильона имеют пропуск; все обладатели такого пропуска внесены в журнал; следовательно, некоторые единороги внесены в журнал» не годится без посылки, что единорог хотя бы один. Павильон может быть беден мифологией, но богат универсальными инструкциями.

Если добавить «в павильоне есть единорог», существование нужного объекта появится. В учебной модели вывод станет возможным. Действительность единорога — отдельная проблема посылки, которую логика с удовольствием вернёт автору, как плохо заполненную анкету.

Такой же промах встречается без сказочных существ. «Все выявленные дефекты устранены» не означает, что дефекты выявляли или что они существовали. «Каждый участник успешно прошёл курс» не сообщает число участников. Для отчётности это принципиальное различие, а не философская придирка.

Схема Венна и чувство пространства

Для двух классов рисуют два пересекающихся круга. Отмечают, какие области пусты, а где есть хотя бы один объект. «Все S — P» исключает область S вне P. «Некоторые S — P» требует объект в пересечении. «Ни одно S — P» делает пересечение пустым.

В задачах с тремя классами рисунок усложняется, но принцип сохраняется. Нельзя поставить объект туда, где вам удобно, если посылки оставляют несколько возможных областей. Если известно «некоторые сотрудники прошли инструктаж», но ничего не известно об их доступе, объект может лежать как в области имеющих доступ, так и вне неё. Рисунок должен сохранять неопределённость, а не украшать её удобным выбором.

Ирина называла это честностью карандаша. Человек часто понимает, что данных мало, но его схема уже выглядит определённой. Потом он доверяет собственной аккуратной картинке. Чертёж способен обманывать без единой кривой линии.

В сложных случаях полезнее составить маленькую воображаемую модель: два-три объекта с явно указанными свойствами. Если все посылки выполнены, а заключение нет, контрпример найден. Такая модель часто яснее красивой диаграммы, на которую уже страшно посмотреть без линейки.

Пять минут с кадровой ведомостью

Все операторы прошли инструктаж. Некоторые прошедшие инструктаж являются подрядчиками. Следует ли, что некоторые операторы — подрядчики? Нет. Подрядчики могут относиться к другой части множества прошедших инструктаж. Минимальная модель: один оператор Антон и один подрядчик Вера, оба прошли инструктаж, но Антон не подрядчик, Вера не оператор.

Все операторы прошли инструктаж. Ни один прошедший инструктаж не работает без допуска. Следует ли, что ни один оператор не работает без допуска? Да, если обе посылки понимаются как строгие правила об одних и тех же людях и условиях. Операторы входят в класс, для которого исключено свойство работы без допуска.

Некоторые операторы — подрядчики. Все подрядчики подписали обязательство. Следует ли, что некоторые операторы подписали обязательство? Да. Возьмём существующего оператора-подрядчика, о котором сообщает первая посылка. Вторая относит его к подписавшим. Нам не нужно знать его фамилию, чтобы установить существование такого случая.

Ни один оператор не является гостем. Ни один гость не имеет служебного ключа. Следует ли, что все операторы имеют служебный ключ? Нет. Две отрицательные посылки не создают нужного положительного включения. Оператор может не быть гостем и всё равно не иметь ключа. Нельзя получить пропуск простым отсутствием двух чужих ярлыков.

Человек за общим признаком

Марк сверил действующие служебные идентификаторы. Ими пользовались не только ночные администраторы. Тестовый сценарий вообще не представлял человека: он использовал запись с теми же правами.

Директор смотрел на список с тоской. Каждый новый класс расширял круг возможных объяснений. Ему казалось, что расследование движется назад.

— Мы исключили неверное сужение, — сказал Марк. — Это движение вперёд, просто без удобного подозреваемого.

Павел добавил, что логика иногда лишает человека красивой истории раньше, чем даёт правильную. Неприятный промежуток хочется заполнить характером, интуицией или ссылкой на опыт. Лучше заполнить его проверкой.

В следующем журнале обнаружили две команды открытия: первую от тестового сценария, вторую — за сутки до происшествия. Вторая была вполне законной. Но именно на ней система училась. Класс «ключи, которыми открывали дверь» оказался слишком грубым: нужно было различать исходный пример и позднейшее воспроизведение.

Глава 10. Доказательство без фокусов и аплодисментов

Если шаг рассуждения нельзя объяснить, возможно, это прыжок, а не шаг.

«Мы проверили на трёх компьютерах»

Подрядчик сообщил, что исправление безупречно: оно сработало на трёх компьютерах. Ирина спросила, какие сценарии проверяли. Оказалось, на всех трёх запускали один и тот же стандартный вход днём.

— Мы получили три успеха, — сказал подрядчик.

— В одной точке пространства случаев.

— Но на разных компьютерах!

— Если три человека проверят, что один плюс один равно двум, это не проверит условие ночного доступа.

Испытание примеров и доказательство общего утверждения решают разные задачи. Примеры полезны: выявляют дефекты, показывают типичный режим, проверяют взаимодействие с реальной средой. Но конечный набор удачных примеров не доказывает произвольное универсальное утверждение, если не известно, что случаи исчерпаны или что существует общий аргумент.

Прямой путь

Прямое доказательство начинается с принятых посылок и движется по разрешённым правилам к заключению. Например: если активен ночной режим, требуется отдельное разрешение; отдельного разрешения нет; значит, ночной режим не может дать допустимый вход по рассматриваемому правилу. Чтобы изложение было корректным, нужно точно различить состояние режима и факт разрешённого входа: иначе бытовая формулировка опять подменит переменную.

Запишем аккуратнее. P — вход разрешён ночью; Q — отдельное разрешение присутствует. Посылки P → Q и ¬Q. Следует ¬P. Мы не сделали вывода, что ночи нет, что контроллер выключен или что дверь физически не открылась. Мы установили отсутствие разрешённости по правилу. Точность букв заставляет не приписывать выводу лишнее.

В математическом примере проще увидеть сам механизм. Пусть целое число n чётно, то есть n = 2k для некоторого целого k. Тогда n² = 4k² = 2 (2k²), значит, квадрат n чётен. Мы использовали определение и преобразования, верные для любого целого k. Нам не пришлось проверять по отдельности 2, 4, 6 и продолжать до выхода на пенсию.

Строгость не обязана быть многословной. Иногда доказательство коротко именно потому, что найден правильный общий признак. Длинная речь без этого признака напоминает бег вокруг закрытой двери: усилий много, направление не меняется.

Разбор случаев

Если все допустимые случаи покрыты и в каждом получен один и тот же результат, вывод установлен. Число бывает чётным или нечётным. Можно отдельно показать нужное свойство для обеих форм. Но полноту разбиения надо обосновать.

В системе доступа случаи могут задаваться наличием карты, кода и допустимого времени. Восемь сочетаний трёх булевых признаков исчерпывают модель. Однако если реальный контроллер имеет ещё аварийный режим, ручное открывание и неизвестное состояние датчика, ваша модель не исчерпывает реальность только оттого, что таблица закончилась.

Хороший разбор случаев не допускает потери варианта и не обязан требовать непересекающихся случаев во всех доказательствах, хотя непересекающееся разбиение часто удобнее. Главное — покрытие и корректность каждой ветви. Для подсчёта количества объектов пересечения уже нужно учитывать отдельно, иначе один объект может получить два приглашения на собственную свадьбу.

Ирина спросила подрядчика, что происходит при неизвестном времени. Он ответил: «Такого быть не должно». Это не случай в программе, а надежда в предложении. Если часы недоступны, программа всё равно что-то сделает. Лучше узнать что до того, как надежда получит сетевой тайм-аут.

Доказательство от противного

Предполагают отрицание желаемого вывода и показывают, что вместе с принятыми основаниями оно приводит к противоречию. В классической логике это позволяет отвергнуть предположение и принять исходный вывод. Но нужно следить, с чем именно возникло противоречие. Если набор исходных посылок сам конфликтует, результат может быть бесполезным.

Простой пример: не существует наибольшего целого числа. Предположим, существует наибольшее целое N. Тогда N +1 тоже целое и больше N. Это противоречит выбранному свойству N. Следовательно, предположение о наибольшем целом неверно. Доказательство не проверяет большие числа по очереди, а использует общий способ построить ещё большее.

В бытовом споре «от противного» часто подменяют карикатурой. «Если разрешить людям ошибаться, они вообще перестанут думать!» Здесь ещё не построено противоречие. Высказан прогноз, который требует собственного обоснования. Или: «Если я неправ, значит, все двадцать лет делал неправильно». Это может быть неприятным следствием, но неприятность не является логической невозможностью.

Различайте reductio и эмоциональное «не может быть». Мир не обязан соответствовать трудозатратам, вложенным в прежнюю версию. Иногда самый дорогой проект ошибочен. Смета не доказательство.

Контрапозиция как способ доказательства

Чтобы доказать P → Q, бывает удобнее доказать ¬Q → ¬P. Например, чтобы установить: если квадрат целого числа нечётен, то само число нечётно, можно показать контрапозицию: если число чётно, его квадрат чётен. Мы это уже сделали прямым вычислением.

Здесь важно различать утверждение и его доказательство. Одно положение можно обосновать несколькими путями. Выбор пути зависит от того, где определения дают удобную опору. Логика не требует самой длинной дороги. Требует, чтобы дорога действительно соединяла нужные точки.

В инженерной проверке контрапозиция полезна для исключения. Если всякое корректное завершение операции оставляет контрольную запись, то отсутствие записи при гарантированно полном журнале исключает корректное завершение. Но гарантия полноты журнала — существенная посылка. Потеряв её, мы теряем и строгий вывод, хотя фраза продолжает звучать убедительно.

Эквивалентность доказывают в обе стороны

Утверждение «P тогда и только тогда, когда Q» требует двух направлений: из P следует Q и из Q следует P. Нередко доказывают одно, а потом рисуют двустороннюю стрелку так уверенно, будто второе направление уже оплатили.

Допустим, автор заявляет: «Запрос выполнен успешно тогда и только тогда, когда появилось зелёное сообщение». Он показывает, что успешное выполнение вызывает зелёное сообщение. Этого мало. Нужно ещё показать, что зелёное сообщение не появляется при неуспехе. Ошибка в интерфейсе может нарушить именно это направление.

Иногда два направления требуют разных методов проверки. Сначала тестируют правильную обработку нормальных случаев, затем ищут ложные подтверждения на сбоях. Это относится и к диагностическим признакам: высокая частота признака при состоянии и высокая вероятность состояния при признаке — разные вещи. Позже вероятностный расчёт покажет, насколько неожиданно они могут расходиться.

Существование, построение и уникальность

Чтобы доказать существование, можно предъявить объект с нужными свойствами. Например, нужен трёхзначный код, сумма цифр которого равна десяти, а последняя цифра вдвое больше первой. Код 244 подходит: сумма десять, последняя цифра четыре вдвое больше двух. Но мы ещё не доказали, что других кодов нет.

Код 163 тоже имеет сумму десять, но последняя цифра не вдвое больше первой, поэтому не подходит. Код 326 подходит: сумма одиннадцать? Нет, 3 +2 +6 = 11. Эта намеренно неудачная проверка показывает, почему найденный на глаз пример нужно проверить по всем условиям. Уверенный вид цифр не отменяет арифметику.

Найдём все варианты при первой цифре a от 1 до 4, последней 2a и средней b = 10 — 3a. Для a = 1 получаем b = 7 и код 172. Для a = 2 — 244. Для a = 3 — 316. Для a = 4 средняя цифра отрицательна, такой код невозможен. Значит, при этих условиях существуют три кода, а не один. Чтобы выделить единственный, нужно дополнительное ограничение.

Этот пример особенно полезен для расследования: версия может удовлетворять всем известным условиям и всё равно не быть единственной. Найти подходящего подозреваемого — не значит доказать, что подходит только он. И даже уникальность в неполной модели не заменяет проверку полноты модели.

Попробуйте дописать недостающее

В организации есть пять отделов и шесть проверяющих. Каждый проверяющий закреплён ровно за одним отделом. Докажите, что хотя бы в одном отделе закреплено не менее двух проверяющих. Если предположить, что в каждом не более одного, получится не более пяти проверяющих, что противоречит числу шесть. Это частный случай принципа Дирихле.

Что изменится, если проверяющему разрешено не быть закреплённым ни за одним отделом? Вывод больше не гарантирован: один может остаться без назначения. Если разрешено закрепление сразу за несколькими отделами, исходная простая интерпретация распределения меняется, хотя наличие шести реально закреплённых людей при пяти отделах можно обсуждать с уточнением назначения. В задаче существенны именно условия, а не знакомый запах ответа.

Другой вопрос: «Во всех ста испытаниях программа не зависла. Значит, она никогда не зависает». Это не дедуктивное доказательство без дополнительного аргумента о полноте испытаний или структуре программы. Возможно, проверялись все сто допустимых входов конечной модели. Тогда ситуация другая. Число испытаний само по себе не решает вопрос: решает отношение проверенных случаев ко всем возможным.

Эксперимент, который имел право не удасться

На изолированном стенде воспроизвели старую конфигурацию. Ночной сценарий действительно использовал учебную запись ключа и отправлял команду на физическое открытие. С независимыми часами и отдельным регистратором результат повторился.

Это поддержало техническое объяснение. Но сообщение на центральном экране не появилось. Система открывала дверь без остроумия. Для директора это было почти разочарованием: у неисправности не оказалось характера.

Марк зачеркнул объединённое название дела и написал два пункта: открытие двери; текст на экране. Первое теперь имело воспроизведённый механизм. Второе оставалось отдельной задачей.

— Почему нельзя считать, что сообщение тоже написал тест? — спросил директор.

— Потому что это удобное продолжение, а не установленное, — сказал Марк. — У доказательства нет бонусной программы за соседние предположения.

Глава 11. Один контрпример против большого начальственного «всегда»

Тысяча удачных случаев может усыпить. Один тщательно проверенный неудачный умеет разбудить теорию.

Инструкция, пережившая реальность

В павильоне действовало правило: все посетители выходят через главный вход. Однажды эвакуационное учение вывело людей через боковую дверь. Администратор сообщил, что исключение не считается, потому что правило относится к нормальным посетителям.

— Люди ненормальными стали в момент выхода? — спросила Софья.

— Речь о нормальной ситуации.

— Тогда надо было написать условие. Нельзя дописывать его задним числом так, будто оно всегда стояло в документе.

Контрпример — случай, удовлетворяющий исходным условиям, но нарушающий заключение общего утверждения. Он показывает, что универсальная формулировка в данном виде неверна. Но только если случай действительно относится к её области и надёжно установлен.

Если кто-то утверждает, что все терминалы данной модели имеют два порта, находка другой модели с одним портом не опровергает утверждение. Это всего лишь один порт, который оказался не там, где нужен спорщику. Зато экземпляр именно данной модели с одним портом может стать контрпримером — после проверки версии, модификации и смысла слова «порт».

Поиск неудобного мира

Для проверки логического вывода не обязательно искать реальный случай. Достаточно построить возможную интерпретацию, где посылки истинны, а заключение ложно. Это контрмодель.

Рассуждение: «Некоторые инженеры любят шахматы. Некоторые любители шахмат работают ночью. Значит, некоторые инженеры работают ночью». Построим трёх людей: Ирина — инженер и любитель шахмат, работает днём; Олег — любитель шахмат, работает ночью, но не инженер; Вера — не относится ни к одной нужной группе. Обе посылки истинны, заключение ложно, если других людей нет. Следовательно, форма вывода неправильна.

Необязательно, чтобы в действительности существовали именно эти люди. Мы проверяем гарантию формы. Если форма допускает провал, она не гарантирует заключение во всех допустимых случаях. И наоборот, ложность реальной посылки не является контрпримером правильности формы: правильность условна на истинности посылок.

В практическом мышлении полезен вопрос: «Как могло бы оказаться, что все мои факты верны, а объяснение ошибочно?» Он заставляет перестать спорить с отдельными фактами и посмотреть на переход. Камера действительно зафиксировала машину. Владелец машины действительно знает потерпевшего. Встреча могла произойти без владельца за рулём. Всё исходное сохранилось, версия изменилась.

Не спасайте правило обрезанием мира

После контрпримера можно уточнить правило. Это нормальная часть познания. Но уточнение должно иметь смысл, независимое обоснование и возможность дальнейшей проверки. Если каждый неприятный случай объявлять «не настоящим», правило становится неуязвимым ценой пустоты.

«Настоящий специалист никогда не ошибается». Вы показываете ошибку признанного специалиста. Вам отвечают: «Значит, ненастоящий». Тогда слово «настоящий» просто переопределено как «не ошибающийся». Утверждение перестаёт сообщать полезное о профессиональной компетентности. Оно описывает вымышленный класс, в который человека включают после проверки идеальности.

Более содержательная формулировка: специалист использует методы, уменьшающие вероятность определённых ошибок, знает ограничения и способен корректировать результат. Её сложнее произнести на кружке, зато можно обсуждать факты. Профессионализм проявляется не отсутствием исправлений, а качеством того, что исправляют и как обнаруживают необходимость.

Есть и обратная ошибка: один неудачный случай объявляют опровержением вероятностного правила. Если метод помогает в большинстве заданных случаев, единичный неуспех не противоречит этому утверждению. Нужно смотреть частоты, условия и разброс. «Обычно» нельзя опровергать так же, как «всегда». Прежде чем бить по теории, уточните, какую именно мишень она выставила.

Граница, на которой прячется ошибка

Инженеры любят проверять предельные значения: ноль, единицу, максимум, пустой ввод, слишком длинный ввод, повторение, отрицательное число там, где его не ожидали. Это не вредность по отношению к программе. Это способ проверить предположения, которые автор мог не заметить.

Регламент «ответить не позднее трёх рабочих дней» требует уточнить начало отсчёта, выходные, время поступления и момент ответа. Большинство обычных заявок проходит гладко. Ошибка ждёт пятничного вечера перед праздником и потом приходит на совещание с календарём.

В бытовых правилах крайний случай тоже полезен. «Чем больше работаешь, тем лучше результат». А если совсем не спать? «Чем дешевле покупка, тем выгоднее». А если вещь служит один день? Предельный пример не всегда опровергает разумную ограниченную зависимость, но показывает, что неограниченная формулировка слишком сильна.

Не надо подменять анализ нелепой крайностью, к которой исходное утверждение явно не относилось. Если человек обсуждает полезность умеренных прогулок, ответ «а если идти без остановки месяц?» критикует другое положение. Хороший контрпример уважает условия. Плохой пользуется тем, что слушатели уже смеются.

Минимальный пример

Чем меньше деталей в контрмодели, тем легче увидеть причину провала. Для опровержения утверждения «все отношения симметричны» достаточно отношения «старше»: Анна старше Бориса, но Борис не старше Анны. Не нужно сочинять семейную сагу на пять поколений.

Для ошибки «каждый имеет кого-то, значит, есть один для всех» достаточно двух людей с разными единственными контактами. Для ошибки «A больше B, значит, A лучше B» достаточно одной величины, где увеличение ухудшает желаемое: задержка ответа. Минимальный пример снимает лишнюю эмоциональную нагрузку и оставляет структуру.

В споре минимальность особенно полезна: оппоненту труднее уйти в обсуждение несущественных обстоятельств. Но она не освобождает от точности. Если вы опровергаете утверждение о положительных числах нулём, пример минимален, но непригоден. Маленькая ошибка остаётся ошибкой, даже если её удобно носить в кармане.

Проверьте четыре громких утверждения

«Если две вещи похожи по трём признакам, они одинаковы». Контрпример: два телефона одинакового цвета, размера и массы могут иметь разную память. Число совпадений само по себе не устанавливает тождество.

«Если никто не возразил, все согласны». Контрпример: участник не услышал вопрос, боится говорить или считает решение уже принятым. Молчание может служить формальным согласием лишь в рамках специально принятой процедуры; психологическое согласие оно само по себе не доказывает.

«Если действие разрешено, оно обязательно». Контрпример: посетителю разрешено взять буклет, но он может не брать. Разрешение и обязанность — разные модальные статусы. Их смешение превращает гостеприимство в трудовую повинность.

«Если система не выдала ошибку, результат правильный». Контрпример: программа успешно обработала неверные исходные данные или проверяет не все условия. Отсутствие обнаруженной ошибки не равно отсутствию ошибки вообще.

Неожиданная победа против собственной версии

Бесплатный фрагмент закончился.

Купите книгу, чтобы продолжить чтение.