Сетевой логический вывод
.pdf
3.СЕТЕВОЙ ЛОГИЧЕСКИЙ ВЫВОД
3.СЕТЕВОЙ ЛОГИЧЕСКИЙ ВЫВОД
3.1.Введение.
Часть 3 цикла работ по теории направленных отношений посвящена изложению результатов, раскрывающих взаимосвязь теории направленных отношений и логики, прежде всего, логики первого порядка с равенством,
на подмножестве которой – логике «хорновских» дизъюнктов – базируют-
ся многие языки логического программирования, в том числе Пролог.
Как уже отмечалось в части 1, многие виды семантических объектов в конструктивной математике вообще и в математической логике, в частно-
сти, могут рассматриваться как специальные подклассы d -отношений,
различающиеся как арностью, так и наличием у этих d -отношений осо-
бых свойств. В качестве основных таких свойств выступают тотальность и функциональность d -отношений, введенные в разделе 1.1 и более по-
дробно рассмотренные в главе 2.
Для того, чтобы представить себе возможные применения теории направленных отношений для решения задач, традиционно относящихся к приложениям математической логики, достаточно вспомнить, что суще-
ствуют всего два логических d -отношения арности (0,0) : пустое (пустое подмножество пар пустых кортежей) и {(,)} – множество, содержащее единственный элемент (пару пустых кортежей), которые в основных при-
ложениях теории направленных отношений играют роль истинностных значений false и true , соответственно.
Используемое нами определение языка исчисления предикатов (с ра-
венством) дано в разделе 3.2 и согласовано по стилю с определением язы-
ков схем d -отношений. Нетрудно видеть, что все необходимые для опре-
деления интерпретации логических формул семантические объекты также могут быть представлены в терминах теории направленных отношений.
FLOGOL – ЯЗЫК И СИСТЕМА ФУНКЦИОНАЛЬНО-ЛОГИЧЕСКОГО ПРОГРАММИРОВАНИЯ
3. СЕТЕВОЙ ЛОГИЧЕСКИЙ ВЫВОД
Последующие разделы этой главы посвящены проблеме взаимной транс-
ляции логических формул первого порядка и схем d -отношений, а в раз-
делах 3.7 - 3.9 рассматриваются механизмы логического вывода, реализо-
ванные средствами предлагаемой теории, причем для задания схем d -
отношений, как правило, будет использоваться их сетевое представление
(глава 2).
3.2.Язык исчисления предикатов первого порядка с равенством.
Вотличие от большинства известных формулировок, в определении языка исчисления предикатов первого порядка мы отказываемся от поня-
тия константа, полагая, что роль констант могут играть нульарные связ-
ки, а также связанные кванторами существования нульарные функцио-
нальные и предикатные переменные. При теоретическом рассмотрении бу-
дем использовать более «экономную» префиксную нотацию, а в примерах
– общепринятую функциональную нотацию для термов и вызовов преди-
катов.
В общем случае, в сигнатуру языка исчисления предикатов первого порядка с равенством входят:
-неограниченное (счетное) количество символов предикатных перемен-
ных любых арностей n 0; предикатные переменные арности 0 назы-
ваются логическими (пропозициональными) переменными;
-неограниченное количество символов функциональных переменных лю-
бых арностей m 0 ; функциональные переменные арности 0 назы-
ваются индивидными переменными;
-связки для обозначения логических функций произвольных арностей,
присоединенные функции которых образуют полную систему логиче-
ских функций; связки арности 0 называются логическими константа-
ми;
FLOGOL: ЯЗЫК И СИСТЕМА ФУНКЦИОНАЛЬНО-ЛОГИЧЕСКОГО ПРОГРАММИРОВАНИЯ 2
3. СЕТЕВОЙ ЛОГИЧЕСКИЙ ВЫВОД
- связка « » для обозначения предиката равенства;
-унарно-унарные операторы – кванторы общности и существования,
применимые в языках первого порядка к логическим формулам (далее – просто к формулам) только по индивидным и пропозициональным пе-
ременным.
Термом называется конструкция вида  | 
	F  | 
	(n)t ...t  | 
	n  | 
	, где F (n) – n -арная  | 
|
  | 
	
  | 
	
  | 
	1  | 
	
  | 
|
функциональная переменная, n 0, а  | 
	t1 ,...,tn  | 
	– термы. В частности, от-  | 
|||
дельно взятая индивидная переменная является термом.  | 
|||||
Элементарная формула это либо  | 
	t t  | 
	– результат применения связ-  | 
|||
ки равенства к термам t и t , либо конструкция  | 
	
  | 
	P(m)t1...tm , где P(m) –  | 
|||
m -арная предикатная переменная, m 0 , а  | 
	t1 ,...,tm  | 
	– термы. В частности,  | 
|||
отдельно взятая пропозициональная переменная является элементарной формулой.
Формула – либо элементарная формула, либо результат применения k -арной логической связки к k формулам, k 0 , либо одна из конструк-
ций x A или x A – результатов применения кванторов общности и су-
ществования к формуле A по индивидной или пропозициональной пере-
менной x .
Далее будем придерживаться следующих соглашений:
1) для обозначения связанных (операторных) переменных будем использо-
вать строчные буквы, возможно, с индексами: x, y, z – для индивидных и p, q, r – для пропозициональных;
2) для обозначения свободных переменных будем использовать заглавные буквы, возможно, с индексами: F,G, H, X ,Y, Z – для функциональных и
P,Q, R – для предикатных;
3) самые внешние и группирующие скобки при применении логических связок могут быть частично опущены согласно приоритетам этих связок
FLOGOL: ЯЗЫК И СИСТЕМА ФУНКЦИОНАЛЬНО-ЛОГИЧЕСКОГО ПРОГРАММИРОВАНИЯ 3
3. СЕТЕВОЙ ЛОГИЧЕСКИЙ ВЫВОД
(перечислим некоторые из них их в порядке убывания приоритета: (от-
рицание) и кванторы, (конъюнкция), (импликация), (дизъюнкция), (логическая эквивалентность)).
Пусть D – универсум и – произвольная допустимая интерпрета-
ция переменных: для всякой функциональной переменной F (n) F -
всюду определенная на D n -арная функция, для всякой предикатной пе-
ременной P(m) P – всюду определенный на D m -арный предикат.
Истинностная интерпретация всякой формулы определяется общеприня-
тым образом.  | 
	
  | 
	
  | 
	A  | 
	обозначает интерпретацию формулы  | 
	A  | 
	при ин-  | 
||||
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
|
терпретации  | 
	
  | 
	
  | 
	переменных. Очевидно, что интерпретация всякой фор-  | 
|||||||
мулы зависит только от интерпретации ее свободных переменных.  | 
	
  | 
|||||||||
Интерпретация  | 
	свободных переменных формулы A  | 
	называется  | 
||||||||
ее моделью, если  | 
	
  | 
	
  | 
	A true . Формула  | 
	A называется общезначимой,  | 
||||||
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
|
если любая допустимая интерпретация  | 
	
  | 
	свободных переменных форму-  | 
||||||||
лы A является ее моделью. Формула  | 
	A  | 
	называется выполнимой, если  | 
||||||||
она имеет хотя бы одну модель. Формула  | 
	A называется противоречием,  | 
|||||||||
если не имеет моделей. Формула A называется опровергаемой,  | 
	если она  | 
|||||||||
не является общезначимой (то есть если существует хотя бы одна интер-
претация , не являющаяся моделью формулы A ).
FLOGOL: ЯЗЫК И СИСТЕМА ФУНКЦИОНАЛЬНО-ЛОГИЧЕСКОГО ПРОГРАММИРОВАНИЯ 4
3.СЕТЕВОЙ ЛОГИЧЕСКИЙ ВЫВОД
3.3.Приведение формул языка исчисления предикатов первого по-
рядка с равенством к канонической форме.
Известные полуразрешимые процедуры доказательства общезначимо-
сти произвольной формулы языка исчисления предикатов первого порядка с равенством базируются на понятиях пренексной нормальной формы, ску-
лемизации и резолюции. Напомним, как осуществляется приведение фор-
мулы к пренексной (предваренной) нормальной форме и ее скулемизация с учетом предполагаемого применения теории направленных отношений для доказательства общезначимости этой формулы.
Пусть A – заданная формула.
1.Преобразуем A к представлению в логическом базисе ,&, , изба-
вившись одновременно от кванторов по пропозициональным перемен-
ным.
2.Используя преобразование де Моргана, приведем формулу к виду, ко-
гда знак отрицания применим только к элементарным формулам. Обо-
  | 
	P  | 
	(m)  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	(m)  | 
	
  | 
	
  | 
	(t  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
|||
значим  | 
	t1  | 
	...tm  | 
	как P  | 
	t1...tm , а  | 
	
  | 
	(t  | 
||||||||||||||
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	t ) как  | 
	
  | 
	t ) . Формулы  | 
|||||||||||||
  | 
	(m)  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	(m)  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
вида P  | 
	t1  | 
	...tm ,  | 
	P  | 
	t1...tm , (t  | 
	
  | 
	назовем квазиэлементарны-  | 
||||||||||||||
  | 
	
  | 
	
  | 
	t ) , (t  | 
	
  | 
	t )  | 
	
  | 
||||||||||||||
ми.
3.Используя правило замены операторной переменной, коммутативность операций &, и аксиому (или, возможно, теорему в конкретной фор-
мулировке исчисления  | 
	предикатов)  | 
	
  | 
	
  | 
	
  | 
	
  | 
? xA  | 
	A  | 
	? x( A  | 
	A ) , где  | 
||
? { , }, {&, }, если  | 
	x не является свободной переменной форму-  | 
||||
  | 
	
  | 
	A к пренексной форме, т.е.  | 
|||
лы A , преобразуем заданную формулу  | 
|||||
представим ее как результат применения различных кванторов к бес-
кванторной формуле (матрице).
4. Используя вторую, двойственную известной основной, форму скулеми-
зации: x ... x  | 
	yA Y (n) x ... x  | 
	[Y (n) x ...x  | 
	n  | 
	/ y]A , где Y (n)  | 
	– не входя-  | 
||
1  | 
	n  | 
	1  | 
	n  | 
	1  | 
	
  | 
	
  | 
|
FLOGOL: ЯЗЫК И СИСТЕМА ФУНКЦИОНАЛЬНО-ЛОГИЧЕСКОГО ПРОГРАММИРОВАНИЯ 5
3. СЕТЕВОЙ ЛОГИЧЕСКИЙ ВЫВОД
щая в A n -арная функциональная переменная, преобразуем получен-
ную в п.3 формулу к эквивалентному представлению в языке второго порядка: Y1 Y2 ... y1 y2 ... B , где B – бескванторная часть формулы
(матрица), Y1 ,Y2 ,... – функциональные переменные, y1 , y2 ,... – индивид-
ные переменные.
5.Проведем декомпозицию элементарных формул в матрице путем введе-
ния дополнительных кванторов существования.
Используя, если необходимо, симметричность равенства, нетрудно
избавиться от формул вида  | 
	(x  | 
	
  | 
	
  | 
	
  | 
	в случае, когда  | 
	x  | 
	
  | 
	и  | 
	x  | 
	
  | 
	– связан-  | 
|||||||
  | 
	x )  | 
	
  | 
	
  | 
|||||||||||||||
ные кванторами существования переменные:  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
||||||||||||
  | 
	
  | 
	x  | 
	
  | 
	x  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	true , где A B обозначает фор-  | 
||||||
x A  | 
	x A  | 
	
  | 
	
  | 
	x A [x  | 
	/ x ]A  | 
|||||||||||||
мулу  | 
	A с конкретным вхождением подформулы  | 
	B , а  | 
	
  | 
	[ A/ x]B – ре-  | 
||||||||||||||
зультат подстановки A вместо (свободных) вхождений переменной x
в B .
Пусть x, x , x – переменные, не входящие (свободно) в некоторую квазиэлементарную формулу. Тогда для всех возможных видов этой формулы имеют место логические эквивалентности:
t t x(x t & x t ) ;
t t x x (x t & x t & x x ) ;
P(m)t1...ti ...tm x(P(m)t1...x...tm & x ti ) ;
P (m)t1...ti ...tm x(P (m)t1...x...tm & x ti ) ;
y F (n)t1...ti ...tn x( y F (n)t1...x...tn & x ti ) .
Применяя эти эквивалентности в случаях, когда термы t ,t ,ti не представляют собой связанных кванторами существования индивид-
ных переменных, и используя симметричность равенства, можно до-
FLOGOL: ЯЗЫК И СИСТЕМА ФУНКЦИОНАЛЬНО-ЛОГИЧЕСКОГО ПРОГРАММИРОВАНИЯ 6
3. СЕТЕВОЙ ЛОГИЧЕСКИЙ ВЫВОД
стичь того, что всякая квазиэлементарная формула в матрице будет иметь один из четырех возможных видов:
1)x F (n) x1...xn ;
2)x x ;
3)P(m) x1...xm ;
4)P (m) x1...xm ;
где x, x , x , x1 ,... – связанные кванторами существования, не обязатель-
но различные, индивидные переменные.
6.Вынося в префикс появившиеся в процессе выполнения п.4 кванторы существования (аналогично тому, как это делалось в п.3) и преобразуя бескванторную часть формулы в дизъюнктивную нормальную форму,
получим в результате представление заданной формулы в виде
Y1 Y2 ... z1 z2 ... &Bij ,
i j
где Bij – квазиэлементарные формулы одного из перечисленных в п.5
видов.
Внеся кванторы существования под знак операции дизъюнкции и оставив только те из них, которые имеют вхождения операторной пе-
ременной в соответствующую конъюнкцию, получим окончательное представление:
Y1 Y2 ... zi1 zi 2 ...&Bij , где zi1 , zi 2 ,... – связанные кванторами су-
i j
ществования индивидные переменные, входящие в одну из квазиэле-
ментарных формул Bij .
Общезначимость исходной формулы означает истинность формулы
zi1 zi 2 ...&Bij для любой допустимой в языке первого порядка ин-
i j
терпретации свободных предикатных переменных  | 
	P , P ,...  | 
	и свобод-  | 
|
  | 
	1  | 
	2  | 
	
  | 
FLOGOL: ЯЗЫК И СИСТЕМА ФУНКЦИОНАЛЬНО-ЛОГИЧЕСКОГО ПРОГРАММИРОВАНИЯ 7
3. СЕТЕВОЙ ЛОГИЧЕСКИЙ ВЫВОД
ных функциональных переменных F1 , F2 ,... исходной формулы и функциональных переменных Y1 ,Y2 ,..., появившихся в процессе скуле-
мизации.
3.4. Трансляция схем направленных отношений в логический язык
первого порядка.  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
|||||
Сопоставим произвольному d -отношению R  | 
	арности  | 
	
  | 
	
  | 
	
  | 
	
  | 
|||||||||||
  | 
	n , n  | 
	,  | 
	n ,  | 
|||||||||||||
  | 
	,  | 
	
  | 
	
  | 
	
  | 
	
  | 
	R , такой, что  | 
	(  | 
	
  | 
	D  | 
	n  | 
	)(  | 
	
  | 
	D  | 
	n  | 
	)  | 
|
n 0  | 
	(n  | 
	n ) -арный предикат  | 
	
  | 
	
  | 
	
  | 
	
  | 
||||||||||
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	R).  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
(R( ) ,  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
||||
Пусть задана произвольная рекурсивная схема  | 
	A(n ,n )  | 
	d -отношений с  | 
||||||||||||||
помощью сетевой КС-грамматики  | 
	G (Bт , Bн , a, P) , где  | 
	
  | 
	
  | 
	Bт  | 
	– терминаль-  | 
|||||||||||
ный базис (множество сортов элементов), составленный из символов сво-
бодных реляционных переменных схемы A , Bн – вспомогательный (не-
терминальный) базис, элементы которого ассоциируются со связанными
операторами рекурсии реляционными переменными, a Bн  | 
	– аксиома  | 
|||
грамматики,  | 
	P - множество правил сетевой грамматики (см. 2.6). Это  | 
|||
означает, что  | 
	
  | 
	A S (G) для любой интерпретации  | 
	пере-  | 
|
  | 
	
  | 
	
  | 
	
  | 
|
менных, где  | 
	S (G) – сетевой язык, порожденный грамматикой  | 
	G . Сопо-  | 
||
ставим различным элементам терминального и нетерминального базисов различные символы предикатных переменных таким образом, что каждому
сорту  | 
	b(m ,m )  | 
	
  | 
||
будет соответствовать предикатный символ b(m m ) арности  | 
||||
  | 
	
  | 
	
  | 
	, причем в искомой логической формуле элементам терминаль-  | 
|
m  | 
	m  | 
|||
ного базиса будут соответствовать свободные предикатные переменные, а
элементам нетерминального базиса – связанные.
FLOGOL: ЯЗЫК И СИСТЕМА ФУНКЦИОНАЛЬНО-ЛОГИЧЕСКОГО ПРОГРАММИРОВАНИЯ 8
3. СЕТЕВОЙ ЛОГИЧЕСКИЙ ВЫВОД
Пусть tr  | 
	A  | 
	обозначает результат описанной  | 
	трансляции схемы  | 
A(n ,n ) в язык исчисления предикатов первого порядка  | 
	с равенством. В со-  | 
||
ответствии с определением реляционной интерпретации сетевого языка,
порожденного КС-сетевой грамматикой  | 
	G , положим:  | 
|||||||||||
tr  | 
	
  | 
	A  | 
	
  | 
	
  | 
	&  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	p1... pk  | 
|
  | 
	
  | 
|||||||||||
  | 
	
  | 
	x1... xn' x1... xn (  | 
||||||||||
  | 
	
  | 
	
  | 
	
  | 
	b  | 
	n ,n  | 
	Bн  | 
	
  | 
	
  | 
	
  | 
	
  | 
	b S P ,  | 
	
  | 
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	где  | 
	
  | 
||
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
|
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	S ( P,I,O,E,G),  | 
	
  | 
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	P { p1 ,..., pk }  | 
	
  | 
  | 
	& ...& prn' (I )  | 
(pr1 (I ) x1  | 
&Re ( Re ) ( Re
e E ,
где
e R( ( Re ), ( Re )) ,I  | 
	O ,  | 
|||
e  | 
	
  | 
	
  | 
	
  | 
	e e  | 
Ie pi  | 
	... pi  | 
	
  | 
	,  | 
|
1  | 
	( Re )  | 
	
  | 
	
  | 
|
Oe pi  | 
	... pi  | 
	
  | 
	
  | 
	.  | 
1  | 
	( Re )  | 
	
  | 
||
x & pr (O)
n' 1
) pi ...pi
1 '( Re )
  | 
	
  | 
x1  | 
	& ...& prn (O) xn &  | 
pi ...pi  | 
|
1  | 
	"( Re )  | 
&  | 
	& p j p j ) b  | 
	(n n )  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
||
x1...xn x1...xn ),  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
||||||
{ j , j } G  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
|
  | 
	где pri  | 
	– функция выделения  | 
	i -го элемента кортежа.  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
||||||
Т е о р е м а  | 
	3 .1. Для любой рекурсивной схемы A  | 
	d -отношений и про-  | 
||||||||||||
извольной интерпретации  | 
	ее свободных переменных предикат  | 
	
  | 
	A  | 
|||||||||||
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
|
  | 
	a ,  | 
	
  | 
	
  | 
	
  | 
	
  | 
|||||||||
может быть получен как  | 
	где  | 
	a – предикатный символ, соответ-  | 
||||||||||||
ствующий  | 
	аксиоме  | 
	,  | 
	представляющей схему  | 
	
  | 
	A  | 
	сетевой  | 
	КС-  | 
|||||||
грамматики, а –  | 
	минимальная модель формулы  | 
	tr  | 
	
  | 
	, такая, что для  | 
||||||||||
A  | 
||||||||||||||
всех терминальных сортов  | 
	b Bт  | 
	b b .  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
|||||
  | 
	
  | 
	
  | 
	
  | 
	
  | 
||||||||||
  | 
	Если для некоторого сорта b Bт  | 
	рассматриваются только такие ин-  | 
||||||||||||
терпретации, при которых  | 
	b – функциональное  | 
	d -отношение арно-  | 
||||||||||||
сти  | 
	n,1 , то b  | 
	можно сопоставить в логической формуле такой же  | 
||||||||||||
символ функциональной переменной арности n , полагая, что b – это
FLOGOL: ЯЗЫК И СИСТЕМА ФУНКЦИОНАЛЬНО-ЛОГИЧЕСКОГО ПРОГРАММИРОВАНИЯ 9
3. СЕТЕВОЙ ЛОГИЧЕСКИЙ ВЫВОД
график функции b .  | 
	
  | 
	В этом случае при построении результата транс-  | 
||||
ляции вместо R(n 1) p ...p  | 
	n  | 
	p  | 
	используется формула R(n) p ... p  | 
	n  | 
	p .  | 
|
1  | 
	
  | 
	
  | 
	1  | 
	
  | 
||
П р и м е р . На рис. 2.9  | 
	были приведены правила сетевой грамматики с  | 
|||||
терминальным базисом  | 
	
  | 
	
  | 
	B {N 0,1 , S 1,1 }, нетерминальным базисом  | 
|||
  | 
	
  | 
	
  | 
	т  | 
	
  | 
	
  | 
	
  | 
B {P 2,1 , A 1,1 } и аксиомой  | 
	P . При интерпретации элементов тер-  | 
|||||
н  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
минального базиса как конструкторов на эрбрановском универсуме реля-
ционная интерпретация индуцированного этой грамматикой сетевого язы-
ка представляет собой конструктор Pair 2,1 упорядоченной пары. Ниже приводится результат трансляции этого d -отношения в язык исчисления предикатов первого порядка. Заметим, что, согласно нашим построениям,
эта формула никак не отражает свойств рассматриваемой интерпретации терминальных сортов элементов как конструкторов. Этот вопрос будет рассмотрен в следующем разделе этой главы. В рассматриваемом и после-
дующих примерах, как уже указывалось, для наглядности будем использо-
вать скобочную функциональную нотацию, а не префиксную:
tr 
 A 
 
x1 x2 x3 (
z(x1 z & x2 z & x1 z & N z)
z1 z2 z3 z4 z5 z6 (x1 z1 & x2 z2 & x3 z3 & S (z4 ) z1 & P(z4 , z5 , z6 ) &
S (z2 ) z5 & S (z6 ) z3 )
z1 z2 z3 z4 z5 (x1 z1 & x2 z2 & x3 z3 & N z1 & P(z1 , z4 , z5 ) &
S (z4 ) z2 & A(z5 , z2 , z3 )) &
x1 x2 x3 (
z1 z2 (x1 z1 & x2 z2 & x3 z3 & N z2 )
z1 z2 z3 z4 z5 (x1 z1 & x2 z2 & x3 z3 & S (z4 ) z2 & A(z1 , z4 , z5 ) &
S (z5 ) z3 A(x1 , x2 , x3 ))
P(x1 , x2 , x3 )).
FLOGOL: ЯЗЫК И СИСТЕМА ФУНКЦИОНАЛЬНО-ЛОГИЧЕСКОГО ПРОГРАММИРОВАНИЯ 10
