В логике , особенно математической , сигнатура перечисляет и описывает нелогические символы формального языка . В универсальной алгебре сигнатура перечисляет операции, характеризующие алгебраическую структуру . В теории моделей сигнатуры используются для обеих целей. Они редко делаются явными в более философских трактовках логики.
Формально (односортная) сигнатура может быть определена как 4-кортеж , где и являются непересекающимися множествами, не содержащими никаких других базовых логических символов, называемых соответственно
и функция , которая назначает натуральное число, называемое арностью , каждому символу функции или отношения. Символ функции или отношения называется -арным, если его арность равна Некоторые авторы определяют нульарную ( -арную) функцию как константный символ , в противном случае константные символы определяются отдельно.
Подпись без функциональных символов называетсяреляционная сигнатура , а сигнатура без символов отношения называетсяалгебраическая сигнатура .[1]Аконечная сигнатура — это сигнатура, такая чтои конечны.Вболее общем смысле,мощностьсигнатурыопределяется как
TheЯзык подписи — это набор всех правильно сформированных предложений, построенных из символов этой подписи вместе с символами логической системы.
В универсальной алгебре словотип илиТип сходства часто используется как синоним «сигнатуры». В теории моделей сигнатуручасто называютсловарь , или отождествляется сязыком (первого порядка), которому он предоставляетнелогические символы. Однакомощностьязыкавсегда будет бесконечной; есликонечна, тобудет.
Поскольку формальное определение неудобно для повседневного использования, определение конкретной подписи часто сокращается неформальным образом, например:
Иногда алгебраическая сигнатура рассматривается просто как список арностей, например:
Формально это определило бы функциональные символы сигнатуры как нечто вроде (которая является двоичной), (которая является унарной) и (которая является нулевой), но на самом деле обычные названия используются даже в связи с этим соглашением.
В математической логике очень часто символы не могут быть нулевыми, [ требуется ссылка ], поэтому постоянные символы должны рассматриваться отдельно, а не как символы нулевой функции. Они образуют множество , не пересекающееся с которого функция арности не определена. Однако это только усложняет ситуацию, особенно в доказательствах индукцией по структуре формулы, где необходимо рассмотреть дополнительный случай. Любой символ нулевого отношения, который также не допускается при таком определении, может быть эмулирован символом унарного отношения вместе с предложением, выражающим, что его значение одинаково для всех элементов. Этот перевод не работает только для пустых структур (которые часто исключаются по соглашению). Если нулевые символы разрешены, то каждая формула пропозициональной логики также является формулой логики первого порядка .
Пример бесконечной сигнатуры использует и для формализации выражений и уравнений относительно векторного пространства над бесконечным скалярным полем , где каждое обозначает унарную операцию скалярного умножения на Таким образом, сигнатуру и логику можно поддерживать односортными, причем векторы являются единственной сортировкой. [2]
В контексте логики первого порядка символы в сигнатуре также известны как нелогические символы , поскольку вместе с логическими символами они образуют базовый алфавит, на основе которого индуктивно определяются два формальных языка : набор терминов на сигнатуре и набор (правильно сформированных) формул на сигнатуре.
В структуре интерпретация связывает символы функций и отношений с математическими объектами, которые оправдывают их названия: интерпретация символа -арной функции в структуре с доменом является функцией , а интерпретация символа -арного отношения является отношением. Здесь обозначает -кратное декартово произведение домена на самого себя, и поэтому фактически является -арной функцией и -арным отношением.
Для многосортной логики и для многосортных структур сигнатуры должны кодировать информацию о сортировках. Самый простой способ сделать это — черезтипы символов , которые играют роль обобщенных арностей.[3]
Пусть будет набором (своего рода), не содержащим символы или
Типы символов над представляют собой определенные слова в алфавите : реляционные типы символов и функциональные типы символов для неотрицательных целых чисел и (для выражения обозначает пустое слово.)
(Многосортная) сигнатура — это тройка, состоящая из