Брошюра FLOGOL-1
.pdf1. ВВЕДЕНИЕ В ТЕОРИЮ НАПРАВЛЕННЫХ ОТНОШЕНИЙ
ПРЕДИСЛОВИЕ
Предлагаемая вниманию читателей серия изданий посвящена пробле-
мам создания языков и систем программирования высокого уровня непро-
цедурного типа. Известно, что для решения многих задач, для которых не создано эффективных алгоритмов, применение методов рекурсивного функционального программирования в сочетании со средствами логиче-
ского вывода является не только удобной, но порой и единственной воз-
можностью. Основными недостатками большинства известных языков не-
процедурного программирования является их низкий, в современном по-
нимании, уровень и, как правило, невозможность органичного сочетания методов функционального и логического подходов, как в постановке задач,
так и при организации вычислительного процесса. Представленные мате-
риалы знакомят читателей с основами оригинальной теории направленных отношений [1-4,6-7](Фальк В.Н., Кутепов В.П.), как единой основы для ре-
ализации функционального, логического и реляционного подхода к реше-
нию задач, с основными принципами построения языка непроцедурного программирования высокого уровня FLOGOL [5] (Фальк В.Н.), а также с особенностями организации системы функционально-логического про-
граммирования S-FLOGOL [8-9] (Фальк В.Н., Бебчик Ал.Н., Бебчик Ан.Н.), включающей новые технологические и программные средства
поддержки как разработки, так и исполнения функционально-логических программ. В дальнейшем предполагается дополнить издание разделами,
посвященными другим приложениям теории направленных отношений – описанию денотационной семантики и верификации операторных схем программ, проблемам связи со структурной теорией графов и др., а также перспективам реализации системы функционально-логического програм-
мирования на современных вычислительных средствах с развитым парал-
лелизмом при организации вычислительного процесса.
FLOGOL: ЯЗЫК И СИСТЕМА ФУНКЦИОНАЛЬНО-ЛОГИЧЕСКОГО ПРОГРАММИРОВАНИЯ
1.ВВЕДЕНИЕ В ТЕОРИЮ НАПРАВЛЕННЫХ ОТНОШЕНИЙ
1.ВВЕДЕНИЕ В ТЕОРИЮ НАПРАВЛЕННЫХ ОТНО-
ШЕНИЙ.
1.1.Основные понятия.
О п р е д е л е н и е 1.1. Направленным отношением (или, сокращенно,
|
|
|
|
|
|
|
|
на множестве (носителе) |
D называет- |
|||
d -отношением) арности n ,n |
||||||||||||
ся график соответствия из |
Dn |
в |
Dn . |
|
|
|
|
|||||
|
Здесь |
Dn |
– множество всевозможных кортежей элементов множества |
|||||||||
D |
длины |
n . |
Иными словами, направленное отношение |
|
R |
арности |
||||||
|
|
|
|
|
D (точнее, его график) есть множество упорядочен- |
|||||||
n , n на носителе |
||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
назовем |
ных пар вида d1...dn ,d1...dn , |
где все di ,di D . Кортеж d1...dn |
|||||||||||
входным, а кортеж |
|
|
|
|
|
|
|
|
|
|||
d1...dn – выходным для соответствующего элемента d - |
||||||||||||
отношения |
R . Кортеж нулевой длины (пустой кортеж) обозначается , а |
в случаях его использования в выражениях там, где это не приводит к недоразумениям, он представляется непосредственно пустым словом.
Арность d -отношения, при необходимости, будет указываться в виде правого верхнего индекса.
1.2.Свойства d -отношений.
Многие виды семантических объектов в конструктивной математике вообще и в теории программирования, в частности, могут рассматриваться как специальные подклассы направленных отношений, различающиеся как арностью d -отношений, так и наличием у них особых свойств. В качестве основных таких свойств рассмотрим свойства тотальности и функцио-
нальности d -отношений.
О п р е д е л е н и е 1.2.
d -Отношение R на D называется тотальным, если
FLOGOL: ЯЗЫК И СИСТЕМА ФУНКЦИОНАЛЬНО-ЛОГИЧЕСКОГО ПРОГРАММИРОВАНИЯ 2
1. ВВЕДЕНИЕ В ТЕОРИЮ НАПРАВЛЕННЫХ ОТНОШЕНИЙ
( Dn' ( Dn" & , R)). |
|
|
|
|
|
||||
О п р е д е л е н и е 1.3. |
|
|
|
|
|
|
|
|
|
d -Отношение R на |
D называется функциональным, если |
|
|||||||
' "( , ' R& , " R ' ") . |
|
|
|
|
|||||
В таблице 1.1 дана классификация типизированных |
d -отношений в |
||||||||
зависимости от их арностей, наличия у них свойств функциональности ( F ) |
|||||||||
и тоталь- |
|
|
|
|
|
|
|
|
|
ности ( T ), а также наличия этих свойств у обратных им отношений. |
|
||||||||
О п р е д е л е н и е 1.4. d -Отношение R 1 |
называется обратным d -отно- |
||||||||
шению R , если (( , ) R ( , ) R 1 ).1 |
|
|
|
|
|||||
|
|
|
|
|
|
|
|
Таблица 1.1 |
|
|
|
|
|
|
|
|
|
||
|
|
Арность, |
|
|
|
|
|
||
d -Отношение R |
|
|
|
|
F( R) |
T( R) |
|
F( R 1 ) |
T( R 1 ) |
|
|
n ,n 0 |
|
|
|
|
|
||
|
|
|
|
|
|
|
|
||
\Утверждение |
|
0,0 |
|
|
|
2 |
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
Объект |
|
0,1 |
+ |
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
Множество объектов |
0,1 |
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
Кортеж |
|
|
|
|
+ |
|
|
|
|
|
0,n |
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Множество кортежей |
0,n |
|
|
|
|
||||
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
||
Свойство объекта |
|
1,0 |
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Предикат |
|
n ,0 |
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
Перестановка |
|
1,1 |
+ |
+ |
|
+ |
+ |
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
Вложение |
|
1,1 |
+ |
+ |
|
+ |
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
Подстановка (тотальная) |
1,1 |
+ |
+ |
|
|
|
|||
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
||
Частичная подстановка |
1,1 |
+ |
|
|
|
|
|||
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
1 Знак обозначает логическую эквивалентность.
2Символ означает, что наличие соответствующего свойства автоматически следует из арности d -отношения.
FLOGOL: ЯЗЫК И СИСТЕМА ФУНКЦИОНАЛЬНО-ЛОГИЧЕСКОГО ПРОГРАММИРОВАНИЯ 3
1. ВВЕДЕНИЕ В ТЕОРИЮ НАПРАВЛЕННЫХ ОТНОШЕНИЙ
Переход |
|
1,1 |
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1,1 |
|
|
|
|
|
|
||
Суперконструктор |
n |
|
+ |
+ |
|
+ |
+ |
|||||
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Конструктор |
|
n ,1 |
|
+ |
+ |
|
+ |
|
||||
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1,1 |
|
|
|
|
|
|
||
Функция (тотальная) |
n |
|
+ |
+ |
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1,1 |
|
|
|
|
|
|
||
Частичная функция |
n |
|
+ |
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
Суперреконструктор |
n |
1,n |
|
+ |
+ |
|
+ |
+ |
||||
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
Реконструктор |
n |
1,n |
|
+ |
+ |
|
+ |
|
||||
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
Отображение (тоталь- |
|
|
|
|
1 |
|
+ |
+ |
|
|
|
|
ное) |
n |
1,n |
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
Частичное отображение |
n |
1,n |
|
+ |
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
||||||
Заметим, что существуют всего два «логических» |
d -отношения ар- |
|||||||||||
ности 0,0 : пустое (пустое подмножество пар пустых кортежей) и |
{ , } |
– множество, содержащее единственный элемент (пару пустых кортежей),
которые в приложениях теории направленных отношений играют роль ис-
тинностных значений False и True , соответственно.
1.3.Языки схем d -отношений.
Общие принципы построения языков схем d -отношений традицион-
ны для задания интерпретированных формальных языков и предполагают задание области интерпретации, символов элементарных констант и пере-
менных, связок и операторов. Связки используются в языке для обозначе-
ния результатов применения операций, определенных на области интер-
претации, и имеющих каждая определенную положительную арность. В
связи с этим, константы иногда могут рассматриваться как связки нулевой арности. Применительно к построению языков схем d -отношений эти принципы конкретизируется нижеcледующим образом:
FLOGOL: ЯЗЫК И СИСТЕМА ФУНКЦИОНАЛЬНО-ЛОГИЧЕСКОГО ПРОГРАММИРОВАНИЯ 4
1. ВВЕДЕНИЕ В ТЕОРИЮ НАПРАВЛЕННЫХ ОТНОШЕНИЙ
1) область интерпретации |
RD RDn ,n |
( RDn ,n – множество всевоз- |
||||||
|
|
|
n ,n 0 |
|
|
|
|
|
можных d -отношений на D |
арности |
|
|
) задается уточнением но- |
||||
n , n |
|
|||||||
сителя D ; |
|
|
|
|
|
|
|
|
2) множество |
X |
переменных d -отношений содержит неограниченное |
||||||
|
|
|
|
|
|
|
|
|
количество переменных арности n ,n |
для всех |
n ,n |
0 ; |
|||||
3) множество |
K |
элементарных констант содержит имена некоторых |
||||||
конкретных d -отношений на |
D . Денотат константы |
k K будем обо- |
||||||
значать k ; |
|
|
|
|
|
|
|
|
4) каждой связке |
f (l ) из множества связок |
F |
сопоставлена, в общем |
|||||
случае, частичная функция |
f (l ) : (RD )l RD |
в области интерпретации |
(операция композиции d -отношений). Предполагается, что применимость операций композиции к d -отношениям определяется только некоторыми ограничениями на арность их аргументов. Схему, полученную применени-
ем связки f (l ) к схемам A ,...,A , будем обозначать fA ...A (если не идет |
||
1 |
l |
1 l |
речь о конкретных связках конкретных языков); |
|
|
5) в рассматриваемом классе языков схем |
d -отношений допускается |
использование только унарно-унарного оператора наименьшей фиксиро-
ванной точки (оператора рекурсии), результат применения которого к схе-
ме A |
по операторной переменной x той же арности обозначается |
{x A}. |
В нeкоторых случаях используется альтернативная возможность |
применения m -арно- m -арных (для любых |
m 0 ) операторов наимень- |
|
шей фиксированной точки, применение которых к схемам A1 ,...,Am |
и опе- |
|
раторным переменным x1 ,...,xm обозначается |
{x1 A1 ,...,xm Am } , причем |
|
в этом случае предполагается, что при построении схем A1 ,...,Am |
опера- |
торы наименьшей фиксированной точки не используются. Доказательство
FLOGOL: ЯЗЫК И СИСТЕМА ФУНКЦИОНАЛЬНО-ЛОГИЧЕСКОГО ПРОГРАММИРОВАНИЯ 5
1. ВВЕДЕНИЕ В ТЕОРИЮ НАПРАВЛЕННЫХ ОТНОШЕНИЙ
равносильности этих вариантов введения в язык схем отношений операто-
ра наименьшей фиксированной точки приведено в конце параграфа 1.5.
Пусть A – язык схем d -отношений. Интерпретация формул (схем)
этого языка как d -отношений определяется заданием интерпретации пе-
ременных |
: X RD , причем |
x n ,n RDn ,n . Индуцированную |
|
||||||||||||||||||||||||||||||
интерпретацию схем языка A обозначим через |
и определим так: |
||||||||||||||||||||||||||||||||
|
|
1. |
|
k k |
для всех |
k K ; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2. |
|
x x для всех |
|
x X ; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3. |
|
|
f (l ) A ...A |
|
f ( |
|
A ,..., |
|
A |
l |
) |
для всех f F ; |
|
||||||||||||||||||
|
|
|
|
|
|
1 |
l |
|
|
|
|
|
1 |
|
|
|
|
|
|
|
|
|
|
|
|||||||||
|
|
4. |
|
{x A} |
|
|
min |
– минимальное решение уравнения |
x A |
в ин- |
|||||||||||||||||||||||
X |
|||||||||||||||||||||||||||||||||
терпретации, индуцированной . |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||||||
|
|
|
|
|
называется решением уравнения |
|
x A |
в интерпретации, индуци- |
|||||||||||||||||||||||||
|
|
X |
|
|
|||||||||||||||||||||||||||||
рованной |
, если |
|
|
' A , где |
' x |
|
и ' y y |
для |
|||||||||||||||||||||||||
|
X |
X |
|||||||||||||||||||||||||||||||
всех |
|
y , |
отличных |
от |
|
x . |
Минимальное |
(относительно теоретико- |
|||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||||||||
множественного |
включения) решение |
|
|
|
X min |
|
удовлетворяет условию |
||||||||||||||||||||||||||
|
|
min |
|
|
|
|
|
|
|
|
|||||||||||||||||||||||
|
X |
X |
|
для всех других решений X |
|
|
|
того же уравнения в той же ин- |
|||||||||||||||||||||||||
терпретации. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
|
|
Следуя принципам конструктивности, мы ограничимся рассмотрени- |
|||||||||||||||||||||||||||||||
ем случая, когда все функции |
f – интерпретанты связок |
f F языка |
|||||||||||||||||||||||||||||||
A монотонны относительно включения |
|
d -отношений как графиков. Из- |
|||||||||||||||||||||||||||||||
вестно, |
что при этом условии для любого уравнения |
x A минимальное |
|||||||||||||||||||||||||||||||
решение |
существует, |
|
|
и |
оно |
является |
|
пределом |
последовательности |
FLOGOL: ЯЗЫК И СИСТЕМА ФУНКЦИОНАЛЬНО-ЛОГИЧЕСКОГО ПРОГРАММИРОВАНИЯ 6
1. ВВЕДЕНИЕ В ТЕОРИЮ НАПРАВЛЕННЫХ ОТНОШЕНИЙ
|
|
|
(0) , |
|
(1) ,..., |
|
(i) ,... при i , |
где |
|
(0) – пустое d -отношение, |
|||||
|
|
X |
X |
X |
X |
||||||||||
|
|
(i 1) |
|
A , где ' x |
|
(i) |
и ' y y для всех y , отлич- |
||||||||
|
X |
' |
X |
||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ных от x . Отсюда очевидно, что оператор рекурсии тоже является моно-
тонным относительно включения.
1.4.Классы d -отношений.
Пару |
(K, F) |
назовем сигнатурой языка схем |
d -отношений. |
||||||||
Язык с сигнатурой будем обозначать |
A |
или A , в зависимости от |
|||||||||
того, используется или нет при его построении оператор рекурсии. |
|
||||||||||
Множество FV ( A) |
свободных переменных схемы |
A определяется |
|||||||||
обычным образом: |
|
|
|
|
|
|
|
|
|||
FV (k) для всех |
k K ; |
|
|
|
|
|
|||||
FV (x) {x} |
|
для всех |
x X ; |
|
|
|
|
|
|||
FV ( f (l ) A ...A ) FV (A ) ... FV (A ) |
для всех f F ; |
|
|
||||||||
1 |
|
l |
1 |
|
l |
|
|
|
|
|
|
FV({x A}) FV (A) \ {x}. |
|
|
|
|
|
||||||
Схема, множество свободных переменных которой пусто, называется |
|||||||||||
константой языка. Обозначим через K (A ) |
множество |
d -отношений – |
|||||||||
денотатов констант языка |
A . |
|
|
|
|
|
|||||
Пусть |
R Dбаз – подмножество d -отношений из R D , которые могут вы- |
||||||||||
ступать в качестве интерпретантов переменных языка |
A ? ( ? { , }). |
|
|||||||||
О п р е д е л е н и е 1.5 . |
|
|
|
|
|
|
|
|
|||
[R баз ] ? { |
|
A | A A |
|
? &( x X ) x R баз } |
– |
класс |
d - |
||||
D |
|
|
|
|
|
D |
|
|
|
отношений, порожденных из R Dбаз языком A ? .
Как следствие этого определения, получим, что
K (A( K ,F )? ) [ ]( K ,F )? [{k | k K}]( ,F )? .
FLOGOL: ЯЗЫК И СИСТЕМА ФУНКЦИОНАЛЬНО-ЛОГИЧЕСКОГО ПРОГРАММИРОВАНИЯ 7
1. ВВЕДЕНИЕ В ТЕОРИЮ НАПРАВЛЕННЫХ ОТНОШЕНИЙ
Далее рассматриваются различные сигнатуры языков схем отношений и особенности классов d -отношений, порождаемых этими языками. Основ-
ное внимание будет уделено cигнатурам, в определенном смысле не зави-
сящим от выбора конкретного носителя D (некоторую роль будет играть только мощность множества D ). Более того, мы вообще ограничимся рас-
смотрением только наборов связок, отвечающих этому требованию: любая
перестановка |
на носителе |
D для присоединенных функций связок яв- |
|||||
ляется автоморфизмом, то есть для |
|
справедливо утверждение |
|
||||
( f F) x ,...,x . ( f (l ) (x ,...,x )) x ,..., x . f (l ) ( (x ),..., (x )), где |
|||||||
1 |
l |
1 |
l |
1 |
l |
1 |
l |
: D D распространяется на |
d -отношения общепринятым образом. |
Константы, удовлетворяющие условию независимости от выбора носите-
ля, назовем комбинаторными, и посвятим им отдельный параграф. В даль-
нейшем будут рассмотрены и языки, сигнатура которых связана со специ-
фикой носителя, а именно, когда в качестве носителя рассматривается эр-
брановский универсум.
1.5.Операции композиции d -отношений.
Операция последовательной композиции d -отношений. Последовательная
композиция d -отношений R1 и R2 |
обозначается через |
R1 R2 |
и опре- |
||||||
деляется как произведение графиков |
R1 и R2 : |
|
|
|
|
|
|||
R1 R2 |
{ , | ( , R1 & , R2 )}. |
|
|
|
|
||||
Если |
R1 |
и R2 – |
d -отношения арностей |
|
и |
|
, соот- |
||
n ,n |
n,n |
||||||||
ветственно, то |
R1 R2 |
– d -отношение арности |
|
|
. Операция после- |
||||
n ,n |
|
||||||||
довательной композиции ассоциативна. |
|
|
|
|
|
||||
Операция параллельной композиции |
d -отношений. Параллельная компо- |
||||||||
зиция d -отношений R1 и R2 обозначается через R1 # R2 |
и определяется |
||||||||
как раздельное декартово произведение компонентов графиков R1 |
и R2 : |
FLOGOL: ЯЗЫК И СИСТЕМА ФУНКЦИОНАЛЬНО-ЛОГИЧЕСКОГО ПРОГРАММИРОВАНИЯ 8
1. ВВЕДЕНИЕ В ТЕОРИЮ НАПРАВЛЕННЫХ ОТНОШЕНИЙ
R1 # R2 { 1 2 , 1 2 | 1 , 1 R1 & 2 , 2 R2 }. |
|
|
|
|||||||||
|
Если R1 |
и R2 |
– типизированные |
d -отношения арности |
n'1 , n"1 ) |
и |
||||||
|
|
R1 # R2 |
– |
|
|
|
|
|
|
|
|
|
n2 , n2 , то |
d -отношение арности n1 n2 |
,n1 n2 . Операция |
||||||||||
параллельной композиции ассоциативна. |
|
|
|
|
|
|
||||||
Операция объединения |
d -отношений. Объединение |
|
d -отношений R1 |
и |
||||||||
R2 |
обозначается |
через |
R1 R2 |
и |
определяется |
как |
теоретико- |
|||||
множественное объединение |
d -отношений |
R1 и R2 |
|
как графиков. |
|
|||||||
|
Для объединения требуется равенство арностей |
|
d -отношений R1 |
и |
||||||||
R2 , причем результат объединения будет иметь ту же самую арность. Опе- |
||||||||||||
рация объединения ассоциативна и коммутативна. |
|
|
|
|
|
|||||||
Операция пересечения |
d -отношений. Пересечение |
d -отношений R1 |
и |
|||||||||
R2 |
обозначается |
через |
R1 R2 |
и |
определяется |
как |
теоретико- |
|||||
множественное пересечение |
d -отношений |
R1 и R2 |
как графиков. |
|
||||||||
|
Для пересечения также требуется равенство арностей d -отношений |
|||||||||||
R1 |
и R2 , причем результат пересечения имеет ту же самую арность. Опе- |
|||||||||||
рация пересечения ассоциативна и коммутативна. |
|
|
|
|
|
|||||||
Операция конкатенации. Конкатенация |
d -отношений R1 |
и |
R2 опреде- |
ляется как декартово произведение вторых компонентов графиков при равных первых компонентах:
R1 R2 { , 1 2 | , 1 R1 & , 2 R2 }.
Конкатенация определена только для операндов арностей n,n1 и
n, n2 , |
соответственно. Результат операции |
будет иметь |
арность |
n,n1 n2 |
. |
|
|
Операция эквализации (унификации). Эквализация |
d -отношений |
R1 и R2 |
определяется как декартово произведение первых компонентов графиков при равных вторых компонентах:
FLOGOL: ЯЗЫК И СИСТЕМА ФУНКЦИОНАЛЬНО-ЛОГИЧЕСКОГО ПРОГРАММИРОВАНИЯ 9
1. ВВЕДЕНИЕ В ТЕОРИЮ НАПРАВЛЕННЫХ ОТНОШЕНИЙ
R1 R2 { 1 2 , | 1 , R1 & 2 , R2 }. |
|
|
Эквализация определена только для операндов арностей |
n1 ,n |
и |
n2 , n . Результат операции будет иметь арность n1 n2 ,n . |
|
|
Условная композиция. Условная композиция d -отношений R1 |
и R2 обо- |
|
значается знаком и представляет собой проекцию R2 |
по первому |
|
компоненту графика на область определения d -отношения R1 : |
|
|
R1 R2 { , | , R2 & '( , ' R1 )}. |
|
|
Арности операндов условной композиции должны быть |
n,n1 |
и |
n, n2 , соответственно. Результат композиции, очевидно, имеет арность
второго операнда. |
|
|
|
|
|
|
|
|
Операция итерации. Итерация d -отношения R n,n |
обозначается |
{R} и |
||||||
определяется так: |
|
|
|
|
|
|
|
|
{R} R(k ) |
, где |
R(0) |
{ , | Dn } (тождественное |
d -отношение |
||||
k 0 |
|
|
|
|
|
|
|
|
|
арности |
n,n ), R(1) R и R(i 1) R(i) R .3 |
|
|||||
Очевидно, что итерация |
{R} d -отношения R |
является наименьшим |
||||||
решением уравнения |
x R(0) |
R x , т.е. {R} {x R(0) |
R x}. |
|
||||
Результат |
применения |
итерации будет иметь |
ту |
же |
арность |
|||
n,n , n 0, что и ее операнд. |
|
|
|
|
||||
Операция повторения. Повторение d -отношения |
R n,n |
обозначается |
||||||
[R] и определяется так: |
|
|
|
|
|
|
[R] R(k ) R {R}.
k 1
Результат применения операции повторения будет иметь ту же ар-
ность n,n , n 0, что и ее операнд.
FLOGOL: ЯЗЫК И СИСТЕМА ФУНКЦИОНАЛЬНО-ЛОГИЧЕСКОГО ПРОГРАММИРОВАНИЯ 10