2SAT — различия между версиями
м (→Источники информации:  Добавлена википедия)  | 
				м (→См. также:  Переделано в интервики)  | 
				||
| Строка 41: | Строка 41: | ||
== См. также ==  | == См. также ==  | ||
| − | *[  | + | *[[КНФ | КНФ]]  | 
| − | *[  | + | *[[Специальные_формы_КНФ | Специальные формы КНФ. КНФ в форме Крона (2-КНФ)]]  | 
| − | *[  | + | *[[Основные_определения_теории_графов#.D0.9E.D1.80.D0.B8.D0.B5.D0.BD.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.BD.D1.8B.D0.B5_.D0.B3.D1.80.D0.B0.D1.84.D1.8B | Ориентированные графы]]  | 
| − | *[  | + | *[[3CNFSAT | NP-полнота задачи о выполнимости булевой формулы в форме 3-КНФ]]  | 
| + | |||
== Источники информации ==  | == Источники информации ==  | ||
Версия 20:15, 3 декабря 2015
Рассмотрим функцию, записанную в виде 2-КНФ (КНФ Крома).
| Определение: | 
| 2-SAT выполнимость данной функции — эта задача распределения аргументов таким образом, чтобы результат данной функции был равен 1. | 
Алгоритм Решения
Рассмотрим любой дизъюнкт функции:  
Несложно заметить, что это равнозначно записи  
Построим ориентированный граф, где вершинами будут аргументы и их отрицание, а ребрами будут ребра вида:  и  для каждого дизъюнкта функции  
| Теорема: | 
Для того, чтобы данная задача 2-SAT имела решение, необходимо и достаточно, чтобы для любой переменной  из вершины  нельзя достичь  и из вершины  нельзя достичь  одновременно.   | 
| Доказательство: | 
| 
 Пусть 2-SAT имеет решение.  Пусть для любой переменной  из вершины  нельзя достичь  и из вершины  нельзя достичь  одновременно.   | 
Применение 2-SAT задач
Алгоритм для решения 2-SAT может быть применим во всех задачах, где есть набор величин, каждая из которых может принимать 2 возможных значения, и есть связи между этими величинами:
- Расположение текстовых меток на карте или диаграмме. Имеется в виду нахождение такого расположения меток, при котором никакие две не пересекаются. Стоит заметить, что в общем случае, когда каждая метка может занимать множество различных позиций, мы получаем задачу general satisfiability, которая является NP-полной. Однако, если ограничиться только двумя возможными позициями, то полученная задача будет задачей 2-SAT.
 - Расположение рёбер при рисовании графа. Аналогично предыдущему пункту, если ограничиться только двумя возможными способами провести ребро, то мы придём к 2-SAT.
 - Составление расписания игр. Имеется в виду такая система, когда каждая команда должна сыграть с каждой по одному разу, а требуется распределить игры по типу домашняя-выездная, с некоторыми наложенными ограничениями.
 
См. также
- КНФ
 - Специальные формы КНФ. КНФ в форме Крона (2-КНФ)
 - Ориентированные графы
 - NP-полнота задачи о выполнимости булевой формулы в форме 3-КНФ