Существует два способа представления Рассмотрим две формы, с помощью которых можно представить формулы,заданной заданные в конъюнктивной нормальной форме[[КНФ(КНФ,Conjunctive Normal Form,CNF)|конъюнктивной нормальной форме]],т.е имеющей вид конъюнкции выражений в скобках(clauses),каждое из которых представляет собой дизъюнкцию одного или нескольких литералов: *[[#КНФ в форме Крома|КНФ в форме Крома(2-КНФ,2-Sat,2-CNF)]] *[[#КНФ в форме Хорна|КНФ в форме Хорна(Horn clause)]]
{{Определение
|definition=
'''Конъюнктивной нормальной формой(КНФ) в форме Крома''' - это конъюнкция выражений в скобках,каждое из которых представляет собой дизъюнкцию нескольких литералов,количество которых не превышает 2х. Эта же такая форма называется 2-CNF (2-conjunctive normal form)двух.}}
'''Пример:'''
<math>(A \or \neg B) \and (\neg A \or C ) \and (\neg C \or B ) \and (\neg A \or \neg C ) \cdots </math>
В такой форме можно представить задачу 2-SAT <tex>(2-satisfiability,задача распределения значений булевым переменным таким образом, чтобы они удовлетворяли всем наложенным ограничениямx_1\vee\overline x_2) \wedge (\overline x_1 \vee x_3 ) \wedge (\overline x_3 \vee x_2 ) \wedge (\overline x_1 \vee \overline x_2) \wedge..Алгоритм для решения 2-SAT может быть применим во всех задачах, где есть набор величин, каждая из которых может принимать 2 возможных значения, и есть связи между этими величинами. </tex>
== КНФ в форме Хорна ==
{{Определение
|definition=
'''Конъюнктивной нормальной формой(КНФ) в форме Хорна''' - это конъюнкция выражений в скобках,каждое из которых представляет собой дизъюнкцию литералов(literal,переменная или ее отрицание),в которой присутствует не более одного неотрицательного литерала.}}
'''Пример:'''
<math> (\neg A \or \neg B \vee \cdots \or \neg C ) \and (A \or \neg B \vee \cdots \or \neg C)</math>
Каждая скобка состоит из,так называемых ''дизъюнктов Хорна''.Дизъюнкт с ровно одним положительным литералом называется ''определенным'' дизъюнктом.Дизъюнкт без положительных литералов иногда называется ''целью'' или ''запросом''(конкретно в логическом программировании).
Дизъюнкты Хорна могут быть пропозициональными формулами, либо формулами первого порядка, в зависимости от того, рассматриваются ли пропозициональные литералы<tex> (значением которых может быть логическое высказывание\overline x_1 \vee \overline x_2 \vee ... \vee \overline x_n ) или литералы первого порядка\wedge (x_1 \vee \overline x_2 \vee . Пропозициональные дизъюнкты Хорна также представляют интерес для теории сложности вычислений, где задача поиска множества истинностных значений, выполняющих КНФ в форме Хорна, является P-полной.Задача выполнимости дизъюнктов Хорна первого порядка не разрешима. Любую формулу можно представить в виде КНФ в форме Хорна\vee \overline x_n)\wedge ..Для этого любую формулу необходимо преобразовать в КНФ(конъюнкцию элементарных дизъюнкций) и далее каждую дизъюнкцию представить в форме Хорна. '''Пример:''' Пусть нам дано выражение ( ¬ A v (B ^ D) ≡ B → C )Тогда: ¬ A v (B ^ D) ≡(¬A v B) ^ (¬A v D)</tex>
B→C ≡¬B v C
(¬A v B) ^ (¬A v D) ≡ (¬B v C) - в форме Каждая скобка представляет собой ''дизъюнкт Хорна''.
== СмЛюбую формулу можно представить в виде КНФ в форме Хорна.Для этого любую формулу необходимо преобразовать в конъюнкцию элементарных дизъюнкций и далее каждую дизъюнкцию представить в форме дизьюнкта Хорна.также ==[[СКНФ]]