Как да донесе формулата за формата CNF

Мисля, че просто не разбирам какво CNF.

Така че нека да има Булева функция е. Това зависи от наш променливи x1, x2. хп. Променливи могат да бъдат 2 ^ п различни пермутации. В някои замествания функция връща една до друга - 0. Пожелаваме го по някакъв начин да кодира булева формула.

Има две общи начини да направите това. Първият - да се опише всички пермутации, като 1 - DNF. Вторият - да се опише всички пермутации, които дават 0 - CNF. Имаме нужда от втори.

Нека да разгледаме CNF. Тази връзка на дизюнкции, като това:
(Не е x1 или x2) и (x1 или не x2 или x3).
Какво е писано в скоби може да бъде пренаписана малко по-ясни:
(X1 = 0 или х2 = 1) и (х1 = 1 0 или Х2 = Х3 или = 1).
Сега можете да използвате логика, математически =) и отново да пренапише:
(Не (х1 = 1 и Х2 = 0)) и (не (х1 = 0 и х2 = 1, и x3 = 0)).
Какво прави последния израз? Тази характеристика позволява на устройството, ако заместването не съдържа модел (х1 = 1 и Х2 = 0) или (х1 = 0 и Х2 = Х3 = 1 и 0).

Общо, през всяка смяна, която функция дава 0, пише такова заместване в zapereschennye модели, а след това просто да ги напиша в CNF, както е описано по-горе.

Вашият отговор на въпрос

Влезте, за да отговорите в темата

  • София
  • Пълен работен ден
  • от 60 000 до 100 000 рубли.

Влезте в профила си

За да зададете въпрос и да получите експертен отговор.