Хорновские формулы и задача получения продукции
[14/100%]Доказать, что каждое множество хорновских формул имеет модель, то есть интерпретацию, в которой все они истинны.
Доказать, что если КНФ в каждой элементарной конъюнкции содержит в точности одну переменную без отрицания, то она эквивалентна конъюнкции хорновских формул.
Пусть — интерпретации. Назовём их пересечением интерпретацию такую, что для любой переменной выполнено тогда и только тогда, когда для всех . Доказать, что если хорновская формула имеет модели , то их пересечение тоже будет её моделью.
Доказать, что формула эквивалентна конъюнкции хорновских формул тогда и только тогда, когда её сокращённая КНФ содержит в каждой элементарной дизъюнкции в точности одну переменную без отрицания.
Доказать, что последовательность процессов в доказательстве теоремы 37 на стр. 121 определена корректно, то есть все исходные продукты каждого процесса в этой последовательности имеются перед его запуском.
Напомним построение из этого доказательства. Пусть . Последовательность вместе с множествами продуктов , получаемых из с помощью , строится по шагам:
-
Шаг : , .
-
Шаг : , .
-
Шаг : пусть уже определены и . Положим , и (процессы внутри упорядочиваются произвольным образом). Если или , то полагаем и заканчиваем процедуру.
Доказать теорему 38 на стр. 124.
Теорема 38: Алгоритм Замыкание возвращает множество , а алгоритм ПрямаяВолна выдаёт ответ «да» тогда и только тогда, когда .
Указание. Пусть — это значение после итераций основного цикла алгоритма Замыкание в строках . Показать, что для каждого продукта , который может быть получен из цепочкой процессов длины и менее, входит в .
Алгоритм ПрямаяВолна позволяет ответить на вопрос о возможности производства из исходных продуктов с помощью процессов , но не строит цепочку процессов, приводящую к . Изменить алгоритм Замыкание так, чтобы по его результату для любого продукта можно было построить цепочку процессов, приводящую к .
Назовём сложным технологическим процессом такой процесс , который по набору исходных продуктов одновременно производит некоторое множество продуктов (а не один продукт ). Доказать, что сложному технологическому процессу соответствует конъюнкция хорновских формул.
Обобщить алгоритм Замыкание так, чтобы он строил замыкание относительно системы сложных технологических процессов .
Определить, какая цепочка процессов в примере 25 на предшествующей странице приводит к получению .
Пример 25: , , а множество процессов состоит из следующих шести процессов:
Используя алгоритм Замыкание, вычислить замыкание для набора исходных продуктов и системы технологических процессов :
Определить, какая цепочка процессов приводит к получению .
Доказать теорему 39 на стр. 127.
Теорема 39: Алгоритм ОптЗам строит замыкание .
Указание. Пусть — это значение — значение , а — значение после итераций основного цикла алгоритма ОптЗам в строках . Показать, что
для каждого продукта , который может быть получен из цепочкой процессов длины не более , выполнено ;
условие выхода из основного цикла выполнено после -й итерации тогда и только тогда, когда .
Изменить алгоритм ОптЗам таким образом, чтобы по его результату для любого продукта можно было построить цепочку процессов, приводящую к .
Используя алгоритм ОптЗам, вычислить замыкание для набора исходных атрибутов и следующей системы зависимостей :
Определить, какая цепочка процессов приводит к получению .