Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Равенство P и NP классов

.pdf
Скачиваний:
13
Добавлен:
15.03.2016
Размер:
949.32 Кб
Скачать

О ПОДХОДЕ К РЕШЕНИЮ ПРОБЛЕМЫ РАВЕНСТВА P И NP КЛАССОВ В РАМКАХ РЕШЕНИЯ ЗАДАЧИ ВЫПОЛНИМОСТИ БУДЕВЫХ ФУНКЦИЙ

Романова М.А., Тисовский Д.Ю.

СПФ МГУ ИТРЭ (МГУПИ) (Сергиево-Посадский филиал Московского Государственного Университета Информационных технологий, Радиотехники и Электроники (бывший Московский Государственный Университет Приборостроения и Информатики)) Романова М. А., Тисовский Д. Ю. – студенты 2 курса кафедры СПФ-1 группы ИТ4-230100, научные руководители - старший преподаватель Смирнов А.М., кандидат технических наук , доцент Зайцев Е.И.

Постановка задачи

В теории алгоритмов классом P называют множество задач, время работы которых полиномиально зависит от размера входных данных, а классом NP - множество задач, решение которых при наличии некоторых дополнительных сведений можно за время, не превосходящее полинома от размера данных проверить на недетерминированной машине Тьюринга.

Из определения классов P и NP сразу вытекает следствие: P C NP Однако, до сих пор ничего не известно о строгости этого включения, то есть, существует ли задача, лежащая в NP, но не лежащая в P.

Задача выполнимости булевых формул: узнать по данной булевой формуле, существует ли набор входящих в неё переменных, обращающий её в 1. Сертификат — такой набор.

Данные

Пусть А - входной алфавит некоторой формулы Ф;

А= {К, О}, где элемент О = { v, ʌ , ¬, (, ) } - множество допустимых операций; элемент К = { Q , Z} - это множество всех переменных,

входящих в формулу Ф, где Q = { x1, x2, ... xn }, - множество элементов без отрицания: а Z={ ¬х1, ¬х3, ... ¬хm} - множество элементов с отрицанием: при том, |Q|+|Z|=|K|, где |Q|, |Z|, |K| - мощности множеств Q, Z, К; |Q| может быть как равна |Z|, так и не равна, m и n є N , но хотя бы n или m > 0, т.е. по крайней мере, одно множество

должно быть не пустым.

Преобразуем К а К' , такое, что |Q|=|Z|, а именно, элементы множества примут вид упорядоченных двоек:

K'={ х1, ¬х1, х2, ¬х2, ... хn, ¬хn }.

Составим матрицу М, такую, что

М= (х1, ¬х1, х2, ¬х2, ... хn, ¬хn), где х взяты из К'.

Рассчёт параметров для матрицы М

1)Горизонтальный коэффициент l = 2^(|К|) , где |К| - мощность множества K;

2)Частота появления 0 относительно первого столбца матрицы: f ' = 2^(|К| - 1), где |К| - мощность множества К;

Частота появления 0 будет изменяться следующим образом: f '=^(|K| - 1), f '' = 2^(|К| - 2) ... f ^ s = 1, где s - номер столбца

Это означает, что в последнем случае, 0 будет встречаться после каждой 1 и частота примет вид: (010101...01), в следующем случае, что 0 будет встречаться два раза, после двух единиц: (001100110011...0011) и так далее, до первого столбца.

Универсальная матрица

1.С = (х1, х2, ... , хn, ¬х1, ¬х2, … , ¬хn)

2.С = (f ', f '' , ..., f ^ s , - f ', - f '', ... , - f ^ s )

3.С = (f ', f '' , ... , f , -f ', -f '' , ... , -f ^ s , х1 v х2, х1 v х3, … , х1 v

xn, x2 v х3, … , х2 v xn, … , x n-1 v xn, ¬ х1 v ¬х2, ¬ х1 v ¬х3, … , ¬ х1 v ¬xn, ¬x2 v ¬х3, … , ¬ х2 v ¬xn, … , ¬x n-1 v ¬xn, х1 v ¬ х1, х1 v ¬х2, … , х1 v ¬xn, х2 v ¬ х2, х2 v ¬х3… , х2 v ¬xn, … , x n-1 v ¬xn, х1 ʌ х2, х1 ʌ х3, … , х1 ʌ xn, x2 ʌ х3, … , х2 ʌ xn, … , x n-1 ʌ xn, ¬ х1 ʌ ¬х2, ¬ х1 ʌ ¬х3, … , ¬ х1 ʌ ¬xn, ¬x2 ʌ ¬х3, … , ¬ х2 ʌ ¬xn, … , ¬x n-1 ʌ ¬xn, х1 ʌ ¬ х1, х1 ʌ ¬х2, … , х1 ʌ ¬xn, х2 ʌ ¬ х2, х2 ʌ ¬х3… , х2 ʌ ¬xn, … , x n-1 ʌ ¬xn)

Формула с 4 переменными и их

отрицаниями (как наглядный пример)

Метод деревьев

Метод частот

Преобразуем матрицу М= (х1, ¬х1, х2, ¬х2, ... хn, ¬хn) к виду М’= (х1, х2,... хn,) и запишем, как множество М’=(х1, х2,... хn,).

Пусть i= 2^|М’|, – кол-во строк в фактической матрице и рассчитывается по формуле j - кол-во столбцов матрицы С, соответствующее количеству всевозможных комбинаций операций конъюнкции, которое можно выразить с помощью ряда вида:

I - количество переменных, |K| - мощность множества К, а n - номер столбца матрицы М.