Вирівняність може бути досягнута наступним чином (скорочення від 2SAT до HornSAT). Отже можна таким чином звести до формули Горна. Дякую Джошуа Горхову за те, що він вказав на це зменшення.(p∨q)
Введення: Формула 2-SAT , з пунктами C 1 , ..., C k на змінних x 1 , ..., x n .ϕC1Ckx1xn
Побудуйте формулу Горна таким чином:Q
Буде 4 ( n вибрати 2 ) + 2 n + 1 нових змінних, по одній для всіх
можливих пропозицій 2-cnf на×n2+2n+1 змінних з не більше 2 літералів (не тількив С I положень в ф ) - цетому числі окремих статей і порожній п .. новий зміннийвідповідна п D буде позначати г D .xCiϕDzD
4 ( n вибрати 2 ) походить від того, що кожна пара ( x i , x j )
породжує чотири 2-cnf пропозиції. 2 п виходить з того , що кожна х я можу створити 2 одиниці положення. І, нарешті, "один" походить із порожнього пункту .. Отже, загальна кількість можливих 2-cnf-пропозицій становить =
4 × ( n виберіть 2 ) + 2 n + 1 .×n2(xi, xj)2nxi=×n2+2n+1
Якщо 2-cnf пункт випливає з двох інших 2-cnf пунктів D і E одним кроком роздільної здатності, то додаємо
до Q додаток Horn
( z D ∧ z E → z F ). Знову робимо це для всіх можливих пропозицій 2-cnf - всі 4 × (FDE(zD∧zE→zF)Q×
вибрати 2 ) + 2 п + 1 з них - не тількив с я .n2+2n+1Ci
Потім ми додамо блок пункти до Q , для кожного п З я
з'являтимуться у вхідній ф ... Нарешті, ми додамо пункт блоку ( ¬ г е т р т у ) на Q .zCiQCiϕ(¬zempty)Q
Формула Горна тепер завершена. Зауважте, що змінні, які використовуються в Q , повністю відрізняються від використаних у ϕ .QQϕ