Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Брошюры / Брошюра FLOGOL.2 / Часть 2. СЕТЕВЫЕ ЯЗЫКИ ФУНКЦИОНАЛЬНОГО И ЛОГИЧЕСКОГО ПРОГРАММИРОВАНИЯ.doc
Скачиваний:
18
Добавлен:
28.06.2014
Размер:
2.38 Mб
Скачать
    1. Формализация отношений реляционного включения и эквивалентности сетевых языков.

Определение 2.18. Если и– сетевые языки одинаковой арности в базисе , то язык включает языкв сильном смысле, обозначается, (соответственно, языкэквивалентен в сильном смысле языку, обозначается), если для любой интерпретациисортов элементов базиса  (соответственно, , т.е. выполняется включение в обе стороны). В случае, когда исодержат в точности по одной сети:и, будем писатьи.

Теорема 2.5. Если и -языки, то , тогда и только тогда, когда для всех сетейсуществует сеть, такая, что.

Теорема 2.6. Если и -языки, то , тогда и только тогда, когда для всех сетейсуществует сеть, такая, что.

Теорема 2.7. Если и– сети одинаковой арности в базисе , то , тогда и только тогда, когда.Следствие. Если и -сети, то , тогда и только тогда, когда– подсеть сети.

Вернемся теперь к описанному в первой части статьи исчислениюсильного включения схем -отношений. Введение сетевой интерпретации схем -отношений позволяет раздельно рассмотреть два существенно более простых исчисления – исчисление сетевой эквивалентности (включения) схем -отношений и исчисление сильного реляционного включения сетевых языков. Первое из этих исчислений обозначим (). В него войдут аксиомы, кроме аксиом 16,17,18,19, и те же правила вывода. Доказательство правильности аксиом, связанных с константами (остальные, определяющие схемы как множества сетей, очевидны), легко осуществляется путем рассмотрения- и -представлений схем -отношений. Например, аксиома

15.

проверяется согласно рис. 2.17 (в центре изображена сеть, представляющая правую и левую части равенства).

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

Перейдем теперь к доказательству полноты исчисления эквивалентности ациклических схем -отношений.

Теорема 2.8. Если 4 , то для любого  – пустое -отношение, иначе  (– основа сети).

Напомним, что для связанной сети .

Теорема 2.9. Две различные связанные основные безэлементные сети одинаковой арности представляют ортогональные -отношения.

Доказательство. Если основные сети иодинаковой арностиразличны, то существуют разные индексы, такие, чтои, либои. Так как сетии– связанные, то любая пара,не может быть одновременно и элементом –отношения , и элементом -отношения , что и требовалось доказать.

Пусть и– конечные множества сетей, представляющие ациклические схемы -отношений и:, . Базис этих сетей есть , и так как в ациклических схемах нет связанных переменных, то переменные этих схем одновременно являются и сортами элементов рассматриваемых сетей.

Определение 2.19. Нормализованным представлением конечного множества сетейназовем эквивалентное ему, т.е. имеющее ту же реляционную интерпретацию при любой реляционной интерпретации базиса, множество связанных сетей (напомним, что, по определению, связанные сети имеют полные-графы на множествах точек этих сетей).

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

Теорема 2.10. Для любого сетевого языка существует эквивалентный ему в сильном смысле-язык .

Доказательство следует по индукции из существования нормализованного представления конечных сетевых языков.

Определение 2.20. Нормализованным представлением ациклической схемы -отношений назовем эквивалентную ей схему , где все – простые схемы, такие, что – различные сети – элементы нормализованного представления .

Следствие 1(теоремы 2.9). Все возможные пары простых комбинаторных -отношений в нормализованном представлении комбинаторного -отношения либо сравнимы (по отношению сильного включения), либо ортогональны.

Определение 2.21. Каноническим представлением комбинаторного -отношения назовем такое его нормализованное представление , что всепопарно ортогональны (существование такого представления непосредственно выводится из следствия 1).

Следствие 2.Каноническое представление любого комбинаторного -отношения – единственно.

Обозначим через множество всех связанных подсетей связанной сети. Построить его можно, например, выбирая в качестве множеств точек этих подсетей всевозможные подмножества точек сети, содержащие все ее входные и выходные точки, и исключая при этом произвольное подмножество элементов(включающее, как минимум, все те элементы, которые имеют в качестве своей некоторой входной либо выходной точки хотя бы одну точку, не включенную в выбранное подмножество). Очевидно, что. Более того, любая связанная сетьимеет единственную связанную безэлементную подсеть, причемпредставляет собой решетку по отношению порядкас наименьшим элементоми наибольшим элементом.

Теорема 2.11. Необходимым и достаточным условием сильного реляционного включения является существование для всякой сетиизтакой сетив, что, т.е.

.

Доказательство.

Достаточность. Очевидно, что если для всякой сети из всуществует сеть, не меньшая ее в сильном реляционном смысле, то.

Необходимость. Если связанные безэлементные основные подсети исетейи, соответственно, не совпадают, то, согласно теореме 2.9,, и, т.к.и, то идля всех. Отсюда для этого случая следует и условие необходимости, т.к. для любой безэлементной сети. Если же, то для доказательстванеобходимости нам потребуется понятие интерпретации, индивидуальной для произвольной связанной сети . Обозначим задающую ее интерпретацию элементов базиса через. Пусть, где– полный-граф.

Определение 2.22. для всех сортовэлементов базиса, полагая, что в качестве носителя выбрано множествоточек сети.

Определение 2.23. Точка сети называется либеральной, если она не является ни входом, ни выходом одного из элементов сети.

Пусть – подмножество либеральных точек сети.

Лемма 1. .

Доказательство. Полагая, что для любой разметки (см. определение реляционной интерпретации сети)для всех, а проекцияна подмножество либеральных точек – произвольная перестановкана, получим, что. Для всех других разметок условия в определении реляционной интерпретации сети не выполняются, и, следовательно, выполняется утверждение леммы.

Лемма 2. Для произвольной связанной сети той же арности, что и,, если и только если – подсеть.

Доказательство. Очевидно, что для выполнения условия леммы необходимо, чтобы в было не меньше точек, чем в, иначе при мощности носителя, равной,, а. Так как– связанная сеть, то равенство разметок точекиозначает, что ии– одна и та же точка, а неравенство разметок – чтои– различные точки. Отсюда следует, что для того, чтобы -отношение  не оказалось пустым, все элементы сети должны быть элементами сети(с точностью до точечного изоморфизма). Это означает выполнение первого условия того, что– подсеть. Второе условие – совпадение входов и, соответственно, выходов сетейи– также будет выполнено, т.к. рассматривается случай, когда.

Из леммы 2 следует и требуемое доказательство необходимости для рассматриваемой теоремы 2.11. Действительно, для каждой сети следует рассмотреть индивидуальную интерпретацию. В соответствии с леммой 1, для любой перестановкина множестве либеральных точек сети и, следовательно, . Так как , то, а согласно лемме 2, это возможно только в случае, если существует сеть , являющаяся подсетью, что и требовалось доказать.

Следствие. Исчисление полно на множестве ациклических схем.

Обобщенные правила вывода второго исчисления – сильного реляционного включения произвольных сетевых языков – формулируются в графической (сетевой) форме. Первое правило равносильно аксиомам 18,19 :

Если и– сетевые языки одинаковой арности, то

.

Второе правило равносильно аксиоме 17:

.

Аксиома 16 «работает» в процессе отождествления точек сети при выполнении операций последовательной композиции сетей и подстановки сети в сеть вместо ее некоторого элемента.

  1. Примеры индуктивных доказательств эквивалентности сетевых языков в конструктивных базисах.

Пусть и– сетевые языки в некотором конструктивном базисе, заданные с помощью сетевых КС-грамматик с аксиомамии, соответственно, и нам требуется доказать, что для эрбрановской интерпретации элементов терминального базиса этих грамматик. Так как деструкторы выразимы в рекурсивном языке с основной сигнатуройс помощью конструкторов и комбинаторных констант, то можно считать, что терминальный базис содержит только элементы, интерпретируемые как конструкторы:. Не ограничивая общности, будем считать, чтоиимеют арность. Так как комбинаторная константаможет быть определена как , то, согласно правилу вывода по индукции (правило П4 для языков рекурсивных схем), для сетевых представлений получим следующие правила для отношений и(рис. 2.19):

Воспользуемся этим правилом для доказательство коммутативности сложения, определенного в примере 1 (рис. 2.7) в базисе. Вначале докажем равенство (задача 1), показанное на рис. 2.20. Доказательствоиллюстрирует рис. 2.21, откуда непосредственно следует искомый результат. При доказательстве используются свойства конструкторов (тотальность, функциональность, функциональность деструкторов, ортогональность разных конструкторов) и рекурсивная подстановка правых частей правил грамматики вместо элементов нетерминальных сортов.

Докажем также, что имеет место эквивалентность, представленная на рис. 2.22 (задача 2). Доказательство представлено на рис. 2.23.

Наконец мы уже можем доказать коммутативность сложения (задача 3, рис.2.24). Доказательство иллюстрирует рис. 2.25. Приводить сети к одному входу в явном виде нет необходимости – просто доказательство по индукции следует проводить по одному из входов. В общем случае, в дальнейшем может потребоваться индукция еще по одному входу или выходу сети и т.д.