Опубликован: 24.04.2007 | Доступ: свободный | Студентов: 698 / 30 | Оценка: 4.60 / 4.30 | Длительность: 25:56:00
Специальности: Программист
Лекция 5:

Языки первого порядка

< Лекция 4 || Лекция 5: 1234 || Лекция 6 >
Аннотация: Рассматриваются языки первого порядка, вопросы определения сигнатуры таких языков, их интерпретации, выяснения истинности формул над такими языками

Помимо логических связок, в математических рассуждениях часто встречаются кванторы "для любого" ( \forall ) и "существует" ( \exists ). Например, определение непрерывности начинается словами "для любого положительного \varepsilon найдется положительное \delta, для которого, ...". А одна из аксиом теории групп (существование обратного элемента) записывается так: \forall x \exists y ((xy\hm=1)\land(yx\hm=1)).

Можно сформулировать различные логические законы, включающие в себя кванторы. Например, высказывание "существует такое x, что A " (где A — некоторое свойство объекта x ) логически эквивалентно высказыванию "не для всех x верно \lnot A ".

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

Формулы и интерпретации

Начнем с примера. Пусть M — некоторое непустое множество, а R — бинарное отношение на нем, то есть подмножество декартова произведения M\hm\times M. Вместо \langle
x,y\rangle\hm\in R мы будем писать R(x,y). Рассмотрим формулу

\forall x\, \exists y\, R(x,y).
Эта формула выражает некоторое свойство бинарного отношения R (для любого элемента x\in M найдется элемент, находящийся с ним в отношении R ) и может быть истинна или ложна. Например, если M есть множество натуральных чисел \mathbb{N}, а Rотношение "строго меньше" (другими словами, R есть множество всех пар \langle x,y\rangle, для которых x\hm<y ), то эта формула истинна. А для отношения "строго больше" (на том же множестве) эта формула ложна.

Вопрос о том, будет ли истинна формула

\exists y\, R(x,y)
для данного множества M и для данного бинарного отношения R на нем, не имеет смысла, пока не уточнено, каково значение переменной x. Например, если M=\mathbb{N} и R(x,y) есть x\hm>y, то эта формула будет истинной при x=3 и ложной при x=0. Для данных M и R она задает некоторое свойство элемента x и тем самым определяет некоторое подмножество множества M.

Перейдем к формальным определениям. Пусть M — непустое множество. Множество M^k состоит из всех последовательностей \langle m_1,\dots,m_k\rangle длины k, составленных из элементов множества M. Назовем k -местной функцией на множестве M любое отображение M^k в M (определенное на всем M^k ). Синонимы: "функция k аргументов", "функция валентности k ", "функция местности k " и даже "функция арности k " (последнее слово происходит от слов "унарная" для функций одного аргумента, "бинарная" (операция) для функций двух аргументов и "тернарная" для трех аргументов).

Назовем k -местным предикатом на множестве M любое отображение M^k в множество \mathbb{B}=\{\text{И},\text{Л}\}. Такой предикат будет истинным на некоторых наборах \langle
m_1,\dots,m_k\rangle множества M и ложным на остальных наборах. Поставив ему в соответствие множество тех наборов, где он истинен, мы получаем взаимно однозначное соответствие между k -местными предикатами на M и подмножествами множества M^k. Говоря о предикатах, также употребляют термины "валентность", "число аргументов" и др.

Мы будем рассматривать также функции и предикаты валентности нуль. Множество M^0 одноэлементно (содержит единственную последовательность длины 0 ). Поэтому функции M^0\to M отождествляются с элементами множества M, а нульместных предикатов ровно два — истинный и ложный.

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

Остается определить три вещи: что такое формула данной сигнатуры, что такое интерпретация данной сигнатуры и когда формула является истинной (в данной интерпретации).

Фиксируем некоторый набор символов, называемых индивидными переменными. Они предназначены для обозначения элементов множества, на котором определены функции и предикаты; обычно в таком качестве используют латинские буквы x,y,z,u,v,w с индексами. В каждой формуле будет использоваться конечное число переменных, так что счетного набора переменных нам хватит. Мы предполагаем, что переменные отличны от всех функциональных и предикатных символов сигнатуры (иначе выйдет путаница).

< Лекция 4 || Лекция 5: 1234 || Лекция 6 >
Юрий Тарасов
Юрий Тарасов
Россия, Мегион, средняя школа №1, 1993
Олег Корсак
Олег Корсак
Латвия, Рига