NAE clause splitting with a fresh variable

4NAE ≤p 3NAE

4NAE≤p3NAE\mathrm{4NAE}\le_p\mathrm{3NAE}, so 3NAE\mathrm{3NAE} is NP-hard.

The construction

On a 4CNF formula φ\varphi, give every clause C=ℓ1∨ℓ2∨ℓ3∨ℓ4C=\ell_1\vee\ell_2\vee\ell_3\vee\ell_4 its own fresh auxiliary variable zCz_C and replace it with the pair (ℓ1∨ℓ2∨zC)  ∧  (zˉC∨ℓ3∨ℓ4).(\ell_1\vee\ell_2\vee z_C)\;\wedge\;(\bar z_C\vee\ell_3\vee\ell_4).

Return the resulting formula. This is exactly the splitting step of SAT≤p3SAT\mathrm{SAT}\le_p\mathrm{3SAT} — the identical construction — but here it must be re-proved under NAE semantics, which is a stronger requirement than ordinary satisfiability.

Visualization

Guided construction

4NAE → 3NAE

Step 1 of 7
4NAE reduced to 3NAE by splitting every clauseTwo four-literal clauses are each split into two three-literal clauses joined by a fresh variable and its negation; literal values are shown as circles for true and squares for false, followed by the three forward cases and the backward extraction of a true and a false literal.φ — 4CNF, read under NAEC₁xℓ₁yℓ₂zℓ₃¬wℓ₄C₂¬xℓ₁wℓ₂zℓ₃yℓ₄each clause is about to be split in twoeach clause is about to be split in two

Correctness — both directions

4NAE ∈ ⟹ 3NAE ∈

Suppose vv NAE-satisfies φ\varphi. Let C=ℓ1∨ℓ2∨ℓ3∨ℓ4C=\ell_1\vee\ell_2\vee\ell_3\vee\ell_4; under vv it holds both a true and a false literal. Set zCz_C as follows:

  • if v(ℓ1)≠v(ℓ2)v(\ell_1)\ne v(\ell_2) — the first pair already has both values, so use zCz_C to fix the second: if v(ℓ3)=v(ℓ4)v(\ell_3)=v(\ell_4) set v(zC)=v(ℓ3)v(z_C)=v(\ell_3), whereupon zˉC\bar z_C supplies the opposite value in (zˉC∨ℓ3∨ℓ4)(\bar z_C\vee\ell_3\vee\ell_4); otherwise any choice works.
  • if v(ℓ1)=v(ℓ2)=:bv(\ell_1)=v(\ell_2)=:b — since CC has both a true and a false literal, some t∈{3,4}t\in\{3,4\} has v(ℓt)=¬bv(\ell_t)=\lnot b. Set v(zC)=¬bv(z_C)=\lnot b. Then in the first clause ℓ1,ℓ2\ell_1,\ell_2 give bb and zCz_C gives ¬b\lnot b — both values; and in the second zˉC\bar z_C gives bb while ℓt\ell_t gives ¬b\lnot b — both values again.

In every case both clauses are NAE-satisfied, and zCz_C occurs nowhere else. So the output is NAE-satisfiable.

3NAE ∈ ⟹ 4NAE ∈

Suppose vv NAE-satisfies the output; restrict it to the variables of φ\varphi. Let C=ℓ1∨ℓ2∨ℓ3∨ℓ4C=\ell_1\vee\ell_2\vee\ell_3\vee\ell_4; we show it holds both values.

Write c=v(zC)c=v(z_C). The clause (ℓ1∨ℓ2∨zC)(\ell_1\vee\ell_2\vee z_C) is NAE-satisfied, so it holds a literal valued ¬c\lnot c — and that literal must be ℓ1\ell_1 or ℓ2\ell_2, since the third is zCz_C, valued cc. So some s∈{1,2}s\in\{1,2\} has v(ℓs)=¬cv(\ell_s)=\lnot c.

Likewise (zˉC∨ℓ3∨ℓ4)(\bar z_C\vee\ell_3\vee\ell_4) is NAE-satisfied and zˉC\bar z_C is valued ¬c\lnot c; so it holds a literal valued cc, necessarily ℓ3\ell_3 or ℓ4\ell_4. So some t∈{3,4}t\in\{3,4\} has v(ℓt)=cv(\ell_t)=c.

Thus CC holds literals valued ¬c\lnot c and cc — both a true and a false one. So CC is NAE-satisfied, and as CC was arbitrary, φ∈4NAE\varphi\in\mathrm{4NAE}.

Cost of the reduction

TimeO(|φ|)
SpaceO(|φ|)
Output sizeO(|φ|)

Each clause is handled once: mm clauses become 2m2m, with mm new variables. Unlike SAT≤p3SAT\mathrm{SAT}\le_p\mathrm{3SAT} there is no loop here — the clause length is a fixed 44, so a single split suffices.

What it buys

3NAE\mathrm{3NAE} is NP-hard, which licenses it as the starting point for 3NAE≤pMAXCUT\mathrm{3NAE}\le_p\mathrm{MAXCUT} and 3NAE≤p3COL\mathrm{3NAE}\le_p\mathrm{3COL}.

Pitfalls

  • "Same construction as SAT≤p3SAT\mathrm{SAT}\le_p\mathrm{3SAT}, therefore correct" is not an argument. NAE semantics differ, and the proof above uses zˉC\bar z_C in a completely different way — there it satisfied a clause, here it forces the opposite value.

The chain

Where this was read from

  • Lesson 10משפט 3: 3NAE\mathrm{3NAE} ו-4NAE\mathrm{4NAE} הן NP-קשות
  • 2024 '1 מועד 2"One of the course exercises described a reduction from 4-NAE to 3-NAE" — counting the output.
  • 2024The kNAEk\mathrm{NAE} family and the reductions inside it.
  • As with 3SAT≤p4NAE\mathrm{3SAT}\le_p\mathrm{4NAE}: the lesson assigns it as homework without writing the construction. The 2024 paper confirms it was given as a course exercise, so it is marked corpus-backed; the full write-up here is a completion.