Кратчайший эквивалент формулы 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
Андрас Саламон
1
Также актуален
Саламон

Ответы:

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. нахождение минимума, по-видимому, сводится к перечислению всех простых импликатов, что может привести к значительному экспоненциальному взрыву в памяти / «пространстве» по сравнению с размером исходной формулы.

ВЗН
источник