Зачем нам нужна формальная семантика для логики предикатов?

25

Считайте, что этот вопрос решен. Я не буду выбирать лучший ответ, поскольку все они внесли свой вклад в мое понимание темы.

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

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

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

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

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

Мартин
источник
1
Это звучит как вопрос о (чистой) логике, а не о компьютерных науках. Возможно, лучше спросить об этом на math.stackexchange.com .
Цуёси Ито
6
Я бы сказал иначе. Логика является одним из фундаментальных компонентов в теоретической информатике, особенно так называемой «Теорией Б».
Дэйв Кларк
@supercooldave: Я согласен, что логика является фундаментальным компонентом в информатике, но я догадался, что на этот вопрос ответ будет более удовлетворительным на math.stackexchange.com, а не здесь. Это было до того, как вы опубликовали ответ, конечно.
Цуёси Ито
2
@ Tsuyoshi: я слышал, что в отделах информатики работает больше логиков, чем в любом другом отделении, причем логики в отделах логики являются исключительно редкой породой.
Чарльз Стюарт
2
@ Суреш: Мы видели рост теории-B за последнюю неделю.
Чарльз Стюарт

Ответы:

18

Небольшой комментарий и более серьезный ответ.

Во-первых, нет смысла объявлять систему естественных вычетов завершенной указом. Естественный вывод интересен именно потому, что он имеет естественное внутреннее представление о согласованности и / или полноте, а именно - исключение среза. Это фантастическая теорема, и IMO полностью оправдывает попытки дать чисто теоретико-доказательную семантику (и с помощью соответствия CH она также оправдывает использование операционных методов в семантике языка программирования). Но это интересно именно потому, что оно предлагает более утонченное представление о правильной логике, чем последовательность. Если вы выберете путь доказательства теории, вам придется проделать больше работы, но взамен вы получите более сильный результат.

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

Нил Кришнасвами
источник
15

Я просто добавлю еще одну перспективу, чтобы увеличить вышеупомянутые ответы. Во-первых, эти размышления стоят того, и у многих людей были похожие идеи. В философии это иногда называют «теоретико-доказательной семантикой», апеллируя к работам Нуэля Белнапа, Дага Правитца, Майкла Дамметта и других в 60-х и 70-х годах, которые сами апеллируют к работе Гентцена о естественном дедукции. Пер Мартин-Лёф и Жан-Ив Жирар также, кажется, предлагают варианты этой позиции в своих трудах. И, говоря очень широко, в языках программирования это «синтаксический подход к правильности типа».

Дело в том, что даже если вы признаете, что правила логики не нуждаются в отдельном семантическом толковании, не очень интересно / полезно говорить, что они самооправданы и оставить это при этом. Вопрос в том, что делает формальная семантика, и можно ли добиться того же с меньшим количеством обходных путей. Тем не менее, проект объединения теории моделей с теорией аналитического доказательства важен, но все еще не решен, поскольку его активно преследуют по многим различным направлениям, включая категориальную логику, семантику игры и «лудику» Жирара. Например, в дополнение к тому , что упомянутый Чарльз, еще один качественный выгода от наличия моделей является способность обеспечить конкретные контрпримеры к не-теормы, и вопрос в том, как понять это в «прямом» подходе. Один из вдохновленных лудиками ответов см. В статье «О значении логической завершенности» Микеле Басальделлы и Казушиге Теруи.

Ноам Цайлбергер
источник
14

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

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

Икс¬Иксдаже дошли до того, что утверждали, что мы должны принять, что не существует единой истинной логики, и принять плюралистическую позицию, используя наиболее подходящую логику для этого случая. Принимая во внимание множество логик, доступных компьютерным ученым (линейная логика, логика разделения, конструктивная логика высшего порядка, много модальных логик, все в классических и интуиционистских разновидностях), принятие плюралистического подхода - это то, что большинство из нас, вероятно, не дали ни секунды Мысль, потому что логика является инструментом для решения конкретной проблемы, и мы стараемся выбрать наиболее подходящую. Формальная семантика - один из способов оценки уместности логики.

Другая причина наличия формальной семантики заключается в том, что логики больше, чем исчисление предикатов. Многие из этих логик предназначены для рассуждения о конкретной системе. (Я думаю о модальной логике). Здесь класс систем известен, а логика наступает позже (хотя исторически это тоже не так). Опять же, разумность говорит нам, правильно ли аксиомы логики отражают «поведение» системы, а полнота говорит нам, достаточно ли у нас аксиом. Без семантики, как бы мы узнали, достаточны ли правила дедукции, а не бессмыслица?

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

Дэйв Кларк
источник
1
Вы писали: «Соответствует ли предложенная семантика чьему-либо интуитивному понятию дедукции, - это философский вопрос». Мы могли бы заменить слово «семантика» в этом предложении на «правила доказательства» и получить следующее предложение: соответствуют ли предложенные правила доказательства чьему-либо интуитивному понятию дедукции, - это философский вопрос. Моя точка зрения заключается в том, что спецификация правил доказательства является формой определения семантики.
Мартин,
1
Указав формальную семантику , а затем доказать правильность и полноту в отношении к этой семантике, мы только показали , что семантика и корректора правил последовательны, но это не делает доказательство правила более «истинно», то , если мы оправдывали их непосредственно используя интуитивное понятие доказательства.
Мартин,
Я не согласен с тем, что вы говорите во втором абзаце. Если бы мы определили силлогизм как надежный и полный, мы наверняка изобрели бы некоторые другие исчисления, а затем показали бы, что они могут доказывать те же характеристики, что и силлогизмы (то есть они являются правильными и полными в отношении силлогизмов). Но, конечно, некоторые логики и философы пришли бы и утверждали, что силлогизмов недостаточно. Не позднее Бул и Фреге расширили бы набор правил, и Генцен с таким же успехом изобрел свой ND.
Мартин,
1
По поводу вашего первого комментария. Действительно, правила доказательства определяют логику и сами по себе могут рассматриваться как семантика. Действительно, в исследованиях языков программирования довольно распространено, что семантика языка программирования определяется аналогичным образом (а именно посредством операционной семантики). Так что ваша точка зрения верна. С другой стороны, работа по семантике пытается найти абсолютное, неоперативное значение для формулы в логике, которое не зависит от средств выполнения дедукции.
Дэйв Кларк
1
@ Мартин, твои ответы на ответы, которые люди публикуют, кажутся мне «мягкими» и «ненаучными». Конечно, нам не нужна семантика, если под «потребностью» вы подразумеваете «возможно ли теоретически переосмыслить все математические теоремы из странной, но доказуемо эквивалентной не семантической логики L.» Но приятно иметь модели! Модели могут быть компьютерными программами, которые мы хотим проверить, распределенными системами, которые мы хотим смоделировать, или упорядоченными структурами, в которые мы можем играть в игры Ehrenfeucht-Fraisse, чтобы доказать P = FO (LFP). Мой вопрос к вам: можете ли вы назвать какое-либо преимущество информатики в работе с логикой без семантики?
Аарон Стерлинг
8

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

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

Четыре вида инструментов полезны для решения проблем, которые большинство логиков хотят решить, от минимального до самого семантического:

  1. Системы в гильбертовом стиле хороши для характеристики логического отношения следствия логики, и они обычно хороши для классификации нескольких логик, таких как конкурирующие модальные логики;
  2. Табличные системы хороши для формализации алгоритмов принятия решений. Как правило, если логика разрешима, в качестве алгоритма принятия решения можно найти систему конечных таблиц, а если нет, можно найти потенциально бесконечную систему таблиц, которая обеспечивает процедуру полуопределения. Если кто-то хочет показать верхнюю границу сложности разрешимости (т. Е. Класса сложности логики), табличные системы, как правило, являются первыми, на которые обращаешь внимание.
  3. Аналитические теории доказательств, такие как естественный вывод Гентцена и секвенциальное исчисление, дают представления доказательств, которые хороши для рассуждений, и предлагают понятие аналитического доказательства, которое полезно для доказательства полезных свойств, таких как интерполяция для теории.
  4. Теории моделей в стиле Тарского часто даже лучше для рассуждений о логике, потому что они почти полностью абстрагируются от синтаксических деталей логики. В модальной логике и теории множеств они настолько лучше достигают результатов, что эти логики имеют очень ограниченный интерес к теории таблиц и аналитических доказательств.

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

Чарльз Стюарт
источник