Многосортная логика - Many-sorted logic
Многосортированная логика может формально отражать наше намерение не обрабатывать вселенную как однородную коллекцию объектов, а разбивать ее способом, аналогичным типам в типизированном программировании . И функциональная, и напористая « части речи » на языке логики отражают это типовое разделение вселенной даже на уровне синтаксиса: подстановка и передача аргументов могут выполняться только соответственно, с соблюдением «сортов».
Существуют различные способы формализации упомянутого выше намерения; многосортная логика является любым пакетом информации , который выполняет его. В большинстве случаев приводятся следующие:
- набор сортов, S
- соответствующее обобщение понятия подписи , чтобы иметь возможность обрабатывать дополнительную информацию , которая поставляется с видами.
Область обсуждения любой структуры этой сигнатуры затем фрагментируется на непересекающиеся подмножества, по одному для каждого вида.
Пример
Рассуждая о биологических организмах, полезно различать два вида: и . Хотя функция имеет смысл, аналогичная функция обычно не имеет. Многосортная логика позволяет иметь термины подобные , но отбрасывать термины вроде как синтаксически неверно сформированные.
Алгебраизация
Алгебраизация многосортированной логики объясняется в статье Калейро и Гонсалвеша, которая обобщает абстрактную алгебраическую логику на многосортный случай, но также может использоваться в качестве вводного материала.
Логика с сортировкой по порядку
В то время как логика с множественной сортировкой требует, чтобы два разных сорта имели непересекающиеся наборы юниверсов, логика с сортировкой по порядку позволяет объявить одну сортировку подсортировкой другой сортировки , обычно путем написания или аналогичного синтаксиса. В приведенном выше примере биологии желательно объявить
- ,
- ,
- ,
- ,
- ,
- ,
и так далее; ср. картина.
Везде, где требуется какой-либо член, вместо него может быть указан член любой подвиды ( принцип подстановки Лискова ). Например, предполагая объявление функции и объявление константы , термин вполне допустим и имеет сортировку . Для предоставления информации о том, что мать собаки, в свою очередь, является собакой, может быть выдано другое заявление ; это называется перегрузкой функции , аналогично перегрузке в языках программирования .
Логика с сортировкой по порядку может быть преобразована в логику без сортировки, используя унарный предикат для каждой сортировки и аксиому для каждого объявления подсортировки . Обратный подход оказался успешным в автоматическом доказательстве теорем: в 1985 году Кристоф Вальтер смог решить тогдашнюю задачу эталонного теста, переведя ее в логику с упорядоченной сортировкой, тем самым уменьшив ее на порядок, поскольку многие унарные предикаты превратились в сортировки.
Чтобы включить логику с сортировкой по порядку в автоматическое средство доказательства теорем на основе предложений, необходим соответствующий алгоритм объединения с сортировкой по порядку , который требует, чтобы для любых двух объявленных сортов также было объявлено их пересечение : если и являются переменными сортировки и , соответственно уравнение имеет решение , где .
Обобщенная логика Smolka с сортировкой по порядку для параметрического полиморфизма . В его структуре объявления подсортировки распространяются на сложные выражения типов. В качестве примера программирования, параметрического рода может быть объявлен (с является параметром типа , как в шаблоне C ++ ), а также из декларации subsort отношения автоматически выводится, а это означает , что каждый список целых чисел также список поплавков.
Schmidt-Schauß обобщенная логика упорядоченной сортировки, позволяющая декларировать термины. В качестве примера, предполагая объявления подсортировки и , объявление термина, например, позволяет объявить свойство целочисленного сложения, которое не может быть выражено обычной перегрузкой.
Смотрите также
Рекомендации
Ранние работы по многосортной логике включают:
- Ван, Хао (1952). «Логика разноплановых теорий». Журнал символической логики . 17 (2): 105–116. DOI : 10.2307 / 2266241 . JSTOR 2266241 ., собранные в авторской книге « Вычисления, логика, философия». Сборник очерков , Пекин: Science Press; Дордрехт: Kluwer Academic, 1990.
- Гилмор, PC (1958). «Дополнение к« Логике разнородных теорий » » (PDF) . Compositio Mathematica . 13 : 277–281.
- А. Обершельп (1962). "Untersuchungen zur mehrsortigen Quantorenlogik" . Mathematische Annalen . 145 (4): 297–333. DOI : 10.1007 / bf01396685 . S2CID 123363080 . Архивировано из оригинала на 2015-02-20 . Проверено 11 сентября 2013 .
- Ф. Джеффри Пеллетье (1972). «Сортировочная количественная оценка и ограниченная количественная оценка» (PDF) . Философские исследования . 23 (6): 400–404. DOI : 10.1007 / bf00355532 . S2CID 170303654 .
Внешние ссылки
- «Многие отсортированные логики» , первая глава в Lecture Notes на Decision Процедуры по Калоджеро Г. Zarba