Кратчайший эквивалент формулы CNF


18

Пусть F1 - выполнимая формула CNF с n переменными и m предложениями. Пусть SF1 - пространство решений F1 .

Рассмотрим проблему определения для данной F1 другой формулы CNF F2с тем же набором переменных, что и для F1 , с SF2=SF1 (то же пространство решений, что и для F1 ), но с как можно меньшим количеством предложений ( единственная цель состоит в том, чтобы минимизировать количество предложений, поэтому количество литералов в каждом предложении не имеет значения).

Вопрос

Кто-нибудь уже исследовал эту проблему? Есть ли какие-либо результаты в литературе по этому поводу?

В качестве примера рассмотрим следующую формулу CNF (каждая строка является предложением): F1

х 2х 3х 4 ¬ х 1х 2х 4 ¬ х 1х 2¬ х 3 ¬ х 1х 3х 5 ¬ х 1х 2¬x1x2x3
x2x3x4
¬x1x2x4
¬x1x2¬x3
¬x1x3x5
¬x1x2¬x5

и следующая формула : F2

х 2х 3х 4 ¬ х 1х 3х 5 ¬ х 1х 2x1x2x3
x2x3x4
¬x1x3x5
¬x1x2

оба имеют одинаковое пространство решений, но в то время как имеет 6 предложений, F 2 имеет только 4 . F16F24

Наконец, рассмотрим следующую формулу : F3

¬ х 1х 3х 5 ¬ х 1x2x3
¬x1x3x5
¬x1x2

Пространство решений опять то же самое, но только с предложениями.3


2
@tsuyoshi Я думаю, что он хочет получить формулу cnf, которая состоит из минимального числа предложений с одинаковым пространством решения
Tayfun Pay

1
@TsuyoshiIto: Да, я хочу минимизировать количество статей. Я не налагаю никаких ограничений на количество литералов, которые могут иметь каждое предложение.
Джорджио Камерани

1
Для любого разумного определения «маленький» проблема NP-трудна. Формула CNF выполнима тогда и только тогда, когда она не эквивалентна формуле «Ложь», которая имеет нулевые предложения.
Джефф

1
В разделе 6 citeseerx.ist.psu.edu/viewdoc/… упоминается, что проблема определения, существует ли эквивалентная формула CNF с не более чем заданным числом литералов, является -полной. Я не уверен, что понимаю, почему ваша версия, минимизирующая количество предложений, интересна, поскольку она находится в пределах коэффициента n от размера формулы, где n - количество переменных. Π2pnn
Андрас Саламон

Ответы:


10

Задача определения того , существует ли эквивалентная формула КНФА с не более заданным числом литералов -полный. Версия, минимизирующая количество предложений, находится в пределах коэффициента n от размера формулы, где nΠ2pnn - количество переменных. Смотрите раздел 6 из:

  • Кристофер Уманс, Минимально эквивалентная проблема DNF и кратчайшие импликанты , JCSS 63 (4), 597–611, 2001. doi: 10.1006 / jcss.2001.1775 ( препринт )

Недавний результат показывает, что вычисление конкретной нижней границы для размера самой короткой эквивалентной формулы CNF (измеряемой количеством предложений, как вы указываете) является NP-полным. В этой статье также говорится, что ваша задача минимизации количества предложений Π2p -полной, ссылаясь на статью Уманса, приведенную выше, хотя почему это не сразу понятно для меня.

  • Ондржей Чепек, Петр Кучера и Петр Савицкий, Булевы функции с простым сертификатом сложности CNF , DAM 160 (4–5), 365–382, 2012. doi: 10.1016 / j.dam.2011.05.013

8

Проблема минимизации схемы неразрешима (см. Комментарии ниже). Кроме того, я думаю, что вас может заинтересовать метод, используемый некоторыми решателями SAT (по крайней мере, в некоторой степени), который называется предварительной обработкой SAT. Например, хорошо известный решатель MiniSAT использует минимизатор CNF SatELite для предварительной обработки экземпляра. Google Scholar также дает много результатов для "предварительной обработки".


2
Я думал, что Бухфюрер и Умань в 2008 году решили проблему минимизации схемы, будучи -полной, при сокращениях Тьюринга? Π2p
Андрас Саламон

1
Уманс уже показал в 1998 году, что нахождение минимальной эквивалентной формулы CNF является -hard ( dx.doi.org/10.1006/jcss.2001.1775 ). В статье Андраса упоминается, что это обобщается на схемы большей глубины. Σ2P
Ян Йоханнсен

6

основным стандартным / известным решением минимизации CNF в EE является алгоритм Куайна-МакКласки который имеет множество реализаций, в том числе публичный домен. однако я понимаю, что (не упомянутое в текущей статье в википедии) большинство возвращается к эвристике и жадным алгоритмам для поиска решений, особенно для больших формул, т.е. найти оптимальное решение, особенно для больших входных данных.

Quine-MCluskey - это обобщение работы с картами Карно, диаграммы которых могут быть успешными для небольших случаев.

и обратите внимание, что может быть несколько оптимальных решений в терминах эквивалентных формул с одинаковым (минимальным) размером предложения, это будет указано в хорошей ссылке на subj. нахождение минимума, по-видимому, сводится к перечислению всех простых импликатов, что может привести к значительному экспоненциальному взрыву в памяти / «пространстве» по сравнению с размером исходной формулы.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.