Считайте, что этот вопрос решен. Я не буду выбирать лучший ответ, поскольку все они внесли свой вклад в мое понимание темы.
Я не уверен, какую пользу мы получаем, формально определяя семантику логики предикатов. Но я вижу ценность в формальном доказательстве. Я хочу сказать, что нам не нужна формальная семантика для обоснования правил вывода исчислений доказательств.
Мы могли бы определить исчисление, которое имитирует «законы мышления», то есть правила вывода, которые математики использовали в течение сотен лет для доказательства своих теорем. Такое исчисление уже существует: естественный вывод. Тогда мы бы определили это исчисление как правильное и полное.
Это может быть оправдано осознанием того, что формальная семантика логики предикатов является лишь моделью. Уместность модели может быть обоснована только интуитивно. Таким образом, показ того, что естественный вывод является обоснованным и полным со ссылкой на формальную семантику, не делает естественный вывод более «истинным». Было бы так же хорошо, если бы мы прямо обосновали правила естественного вывода интуитивно. Объезд с использованием формальной семантики нам ничего не дает.
Затем, определив естественное вычитание как правильное и полное, мы могли бы показать правильность и полноту других исчислений, показав, что доказательства, которые они дают, могут быть переведены в естественное вычитание и наоборот.
Мои размышления выше верны? Почему важно доказать правильность и полноту исчислений доказательств, ссылаясь на формальную семантику?
Ответы:
Небольшой комментарий и более серьезный ответ.
Во-первых, нет смысла объявлять систему естественных вычетов завершенной указом. Естественный вывод интересен именно потому, что он имеет естественное внутреннее представление о согласованности и / или полноте, а именно - исключение среза. Это фантастическая теорема, и IMO полностью оправдывает попытки дать чисто теоретико-доказательную семантику (и с помощью соответствия CH она также оправдывает использование операционных методов в семантике языка программирования). Но это интересно именно потому, что оно предлагает более утонченное представление о правильной логике, чем последовательность. Если вы выберете путь доказательства теории, вам придется проделать больше работы, но взамен вы получите более сильный результат.
Однако бывает, что иногда логика сама по себезанимает второстепенную роль. Мы можем начать с (семейства) моделей, а затем искать способы синтаксически говорить о них, используя логику. Обоснованность и полнота логики в отношении семейства моделей указывает на то, что логика действительно отражает все интересное и правдивое, что можно сказать о классе моделей. Конкретный пример, когда модели более интересны, чем логические теории, встречается в анализе программ и проверке моделей. Там обычно принято считать свою модель выполнением программы, а логику - неким фрагментом временной логики. Предложения, которые вы можете сказать на этих языках, (преднамеренно) не очень захватывающие - например, разыменование нулевого указателя никогда не происходит - но тот факт, что он применяется к фактическим запускам программы, вызывает интерес.
источник
Я просто добавлю еще одну перспективу, чтобы увеличить вышеупомянутые ответы. Во-первых, эти размышления стоят того, и у многих людей были похожие идеи. В философии это иногда называют «теоретико-доказательной семантикой», апеллируя к работам Нуэля Белнапа, Дага Правитца, Майкла Дамметта и других в 60-х и 70-х годах, которые сами апеллируют к работе Гентцена о естественном дедукции. Пер Мартин-Лёф и Жан-Ив Жирар также, кажется, предлагают варианты этой позиции в своих трудах. И, говоря очень широко, в языках программирования это «синтаксический подход к правильности типа».
Дело в том, что даже если вы признаете, что правила логики не нуждаются в отдельном семантическом толковании, не очень интересно / полезно говорить, что они самооправданы и оставить это при этом. Вопрос в том, что делает формальная семантика, и можно ли добиться того же с меньшим количеством обходных путей. Тем не менее, проект объединения теории моделей с теорией аналитического доказательства важен, но все еще не решен, поскольку его активно преследуют по многим различным направлениям, включая категориальную логику, семантику игры и «лудику» Жирара. Например, в дополнение к тому , что упомянутый Чарльз, еще один качественный выгода от наличия моделей является способность обеспечить конкретные контрпримеры к не-теормы, и вопрос в том, как понять это в «прямом» подходе. Один из вдохновленных лудиками ответов см. В статье «О значении логической завершенности» Микеле Басальделлы и Казушиге Теруи.
источник
Формальная семантика обеспечивает прямой смысл терминов в исчислении независимо от синтаксических правил доказательства их манипулирования. Без формальной семантики, как вы можете утверждать, правильны ли правила дедукции (правильность) или их достаточно (полнота)?
До появления естественного вывода были предложены «законы мышления». Силлогизмы Аристотеля были одной из таких коллекций. Если бы мы определили их как правильные и полные, возможно, мы бы использовали их сегодня, вместо того, чтобы разрабатывать более продвинутые логические методы. Дело в том, что если силлогизмы полностью охватывают законы мышления, зачем нам придумывать какие-либо дальнейшие логики. Что, если они на самом деле противоречивы? Наличие семантики вместе с формальным исчислением доказательств и доказательств обоснованности и полноты, соединяющих их, обеспечивает измерительную палочку для оценки ценности такой системы рассуждений. Это больше не будет стоять в изоляции.
Другая причина наличия формальной семантики заключается в том, что логики больше, чем исчисление предикатов. Многие из этих логик предназначены для рассуждения о конкретной системе. (Я думаю о модальной логике). Здесь класс систем известен, а логика наступает позже (хотя исторически это тоже не так). Опять же, разумность говорит нам, правильно ли аксиомы логики отражают «поведение» системы, а полнота говорит нам, достаточно ли у нас аксиом. Без семантики, как бы мы узнали, достаточны ли правила дедукции, а не бессмыслица?
Одним из примеров логики, которая была определена чисто синтаксически, и работа по ее формальной семантике все еще продолжается, является логика BAN для рассуждения о криптографических протоколах. Правила логического вывода кажутся разумными, так зачем предоставлять формальную семантику? К сожалению, логика BAN может использоваться для подтверждения правильности протокола, но атаки на такие протоколы могут существовать. Правила вывода, следовательно, неверны , по крайней мере, в отношении ожидаемой семантики.
источник
Я согласен с supercooldave, но есть и другая, более прагматичная причина желать большего, чем какой-либо набор или другие правила вывода, которые характеризуют логику: данный набор правил вывода обычно не подходит для ответа на проблемы, с которыми сталкиваются при изложении логики использовать.
Если у вас есть логика, заданная списком аксиом и парой правил в виде системы Гильберта, то обычно сложно будет выяснить, как доказать данную теорему в системе, и без теоретического понимания вы не собираетесь уметь доказать, что данное утверждение не может быть доказано в системе. Традиционные модели хороши для доказательства свойств, которые сохраняются для всей логики по индукции.
Четыре вида инструментов полезны для решения проблем, которые большинство логиков хотят решить, от минимального до самого семантического:
Поскольку в супердержаве упоминается интуиционистская логика: без правила исключенной середины теория моделей становится намного более сложной, а теории аналитического доказательства становятся более важными, обычно это семантика выбора. Алгебраические методы, такие как теория категорий, становятся предпочтительными для абстрагирования от синтаксической сложности.
источник