2020-1ํ•™๊ธฐ, ๋Œ€ํ•™์—์„œ โ€˜์•Œ๊ณ ๋ฆฌ์ฆ˜โ€™ ์ˆ˜์—…์„ ๋“ฃ๊ณ  ๊ณต๋ถ€ํ•œ ๋ฐ”๋ฅผ ์ •๋ฆฌํ•œ ๊ธ€์ž…๋‹ˆ๋‹ค. ์ง€์ ์€ ์–ธ์ œ๋‚˜ ํ™˜์˜์ž…๋‹ˆ๋‹ค :)

7 minute read

2020-1ํ•™๊ธฐ, ๋Œ€ํ•™์—์„œ โ€˜์•Œ๊ณ ๋ฆฌ์ฆ˜โ€™ ์ˆ˜์—…์„ ๋“ฃ๊ณ  ๊ณต๋ถ€ํ•œ ๋ฐ”๋ฅผ ์ •๋ฆฌํ•œ ๊ธ€์ž…๋‹ˆ๋‹ค. ์ง€์ ์€ ์–ธ์ œ๋‚˜ ํ™˜์˜์ž…๋‹ˆ๋‹ค :)

๋ฏธ๋ฆฌ ๋ฐํžˆ์ž๋ฉด ์ด๋ฒˆ ๋‚ด์šฉ์€ ์ข€ ์–ด๋ ต๋‹ค! ํ๋ฆ„์„ ์ž˜ ๋”ฐ๋ผ๊ฐ€๋ณด์ž!


3-SAT โ†’ 3D-Matching

Claim. 3-SAT $\le_P$ 3D-Matching

์•„๋ž˜์™€ ๊ฐ™์€ 3-SAT ๋ฌธ์ œ๋ฅผ 3D-Matching ๋ฌธ์ œ๋กœ ํ™˜์›ํ•ด๋ณด์ž.

\[(\bar{x} \lor y \lor z)(x \lor \bar{y} \lor z)(\bar{x} \lor y \lor w)\]

Gadget

๋จผ์ € 4๊ฐœ์˜ triplet์ด ๋ชจ์—ฌ ๋งŒ๋“ค์–ด์ง„ gadget์ด๋ผ๋Š” ๋…€์„์„ ์‚ดํŽด๋ณด์ž. ์˜ค๋ฅธ์ชฝ ๊ทธ๋ฆผ์„ ๋ณด๋ฉด ์•Œ ์ˆ˜ ์žˆ๋“ฏ, ์ด ๋…€์„์€ ์œ„-์•„๋ž˜, ๋˜๋Š” ์ขŒ-์šฐ๋กœ๋ฐ–์— 3D-Matching์„ ํ•  ์ˆ˜ ๋ฐ–์— ์—†๋‹ค. ๋…€์„์˜ ์ด๋ถ„์ ์ธ ํŠน์ง•์„ ๋ฐ”ํƒ•์œผ๋กœ gadget์„ ์ผ์ข…์˜ boolean variable๋กœ ์ทจ๊ธ‰ํ•  ๊ฒƒ์ด๋‹ค! ๋งŒ์•ฝ $b_0$๊ฐ€ $g_1$์™€ ๋งค์นญ๋œ๋‹ค๋ฉด, $\text{true}$๋กœ $b_0$๊ฐ€ $g_0$์™€ ๋งค์นญ๋œ๋‹ค๋ฉด, $\text{false}$๋กœ ์ทจ๊ธ‰ํ•˜๊ฒ ๋‹ค.

Proof

Given an instance $\Phi$ of 3-SAT, we construct an instance of 3D-Matching that has a perfect matching iff $\Phi$ is satisfiable.

* โ€œperfect matchingโ€์ด๋ž€ ์„œ๋กœ ์ข‹์•„ํ•˜๋Š”(preference)๊ฐ€ ์žˆ๋Š” ์ •์ ๋ผ๋ฆฌ ๋งค์นญ๋œ ๊ฒฝ์šฐ๋ฅผ ๋งํ•œ๋‹ค. Bipartite Matching์˜ Solution์€ perfect matching์ด๋‹ค.

[Problem Transformation]

1. 3-SAT์— ์กด์žฌํ•˜๋Š” ๋ชจ๋“  ๋ณ€์ˆ˜ $x_i$๋ฅผ gadget์œผ๋กœ ๋งŒ๋“ ๋‹ค.

2. 3-SAT์— ์กด์žฌํ•˜๋Š” Clause $C_j$๋ฅผ ํ‘œํ˜„ํ•˜๋Š” clause gadget์„ ๋งŒ๋“ ๋‹ค.

clause gadget์„ ๋งŒ๋“ค๊ธฐ ์œ„ํ•ด ์ƒˆ๋กœ์šด boy $b_c$, girl $g_c$๋ฅผ ๋„์ž…ํ•œ๋‹ค. ์ด $b_c$, $g_c$์™€ ๊ฐ variable gadget์˜ pet ์ค‘ ํ•˜๋‚˜์™€ ์—ฐ๊ฒฐํ•ด ์ƒˆ๋กœ์šด triplet๋“ค์„ ๋งŒ๋“ค ๊ฒƒ์ด๋‹ค. clause $C_j$๊ฐ€ satisfying ํ•˜๋ ค๋ฉด, 3๊ฐ€์ง€ $(b_c, g_c, p)$ triplet ์ค‘ ์ ์–ด๋„ ํ•˜๋‹ค๊ฐ€ ๋งค์นญ ๋˜์–ด์•ผ ํ•œ๋‹ค. ๊ทธ๋Ÿฐ๋ฐ $b_c$, $g_c$์— ์—ฐ๊ฒฐํ•  pet $p$๋Š” ์–ด๋–ป๊ฒŒ ๊ฒฐ์ •ํ•ด์•ผ ํ• ๊นŒ?

$C_1 = (x \lor \bar{y} \lor z)$๋ผ๋Š” clause๋ฅผ ๋งŒ์กฑํ•˜๋ ค๋ฉด, (1) $x = \text{true}$ (2) $y = \text{false}$ (3) $z = \text{true}$, ์…‹ ์ค‘ ํ•˜๋‚˜์—ฌ์•ผ ํ•œ๋‹ค. ๋งŒ์•ฝ (1) $x = \text{true}$์„ ๋งŒ์กฑํ•ด์„œ clause $C_1$์ด ๋งŒ์กฑ๋œ๋‹ค๊ณ  ํ•˜์ž. ๊ทธ๋Ÿผ gadget $x$๋Š” ์ขŒ์šฐ ๋งค์นญ, $(b_{x0}, g_{x1}, p_{x0})$, $(b_{x1}, g_{x0}, p_{x2})$์ธ ์ƒํƒœ์ผ ๊ฒƒ์ด๋‹ค. ์ด ๊ฒฝ์šฐ๋ผ๋ฉด, $b_c, g_c$๊ฐ€ ๋งค์นญ์ด ์ƒ๊ธฐ๊ธฐ ์œ„ํ•ด์„  $x$์˜ gadget๊ณผ ์—ฐ๊ฒฐ๋œ triplet์ด ๋งค์นญ ๋˜์–ด์•ผ ํ•œ๋‹ค. ๊ทธ๋ž˜์„œ ์•„์ง ๋งค์นญ์ด ๋˜์ง€ ์•Š์€ $p_{x1}, p_{x3}$ ์ค‘ ํ•˜๋‚˜๋ฅผ ์„ ํƒํ•ด $(b_c, g_c, p)$ triplet์„ ์ƒ์„ฑํ•œ๋‹ค.

๊ทธ๋Ÿฌ๋‚˜ $x$์— $\text{false}$๊ฐ€ ํ• ๋‹น๋  ์ˆ˜๋„ ์žˆ๊ธฐ์— $x = \text{false}$์ธ ์ƒํ™ฉ์„ ์ƒ๊ฐํ•ด๋ณด์ž. ๊ทธ๋Ÿฌ๋ฉด, $p_{x1}, p_{x3}$๊ฐ€ ์ด๋ฏธ ์ทจํ•ด์กŒ๊ธฐ ๋•Œ๋ฌธ์— $C_1$์˜ clause gadget์—์„œ $x$ gadget์˜ pet๊ณผ ์—ฐ๊ฒฐ๋œ triplet์€ ๋งค์นญ๋  ์ˆ˜ ์—†๋‹ค.

3-SAT โ†’ Constrained 3-SAT

๊ทธ๋Ÿฌ๋‚˜ ์œ„์™€ ๊ฐ™์ด Clause Gadget์œผ๋กœ 3-SAT ๋ฌธ์ œ๋ฅผ 3D-Matching์œผ๋กœ ๋ฐ”๊พธ๊ฒŒ ๋˜๋ฉด, ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•œ๋‹ค! ์˜ˆ๋ฅผ ๋“ค์–ด, boolean variable $x$๊ฐ€ 3-SAT์—์„œ 3๊ฐœ ์ด์ƒ์˜ Clause์—์„œ ๋“ฑ์žฅํ•œ๋‹ค๋ฉด, 3D-Matching ์ธ์Šคํ„ด์Šค๋ฅผ ๋งŒ๋“ค ์ˆ˜ ์—†๋‹ค!! ์˜ˆ๋ฅผ ๋“ค์–ด ์•„๋ž˜ 3-SAT์„ 3D-Matching ๋ฌธ์ œ๋กœ ๋ณ€ํ™˜ํ•ด๋ณด์ž.

\[\Phi = (x \lor y \lor z)(x \lor \bar{y} \lor z)(x \lor y \lor \bar{z})\]

๋งˆ์ง€๋ง‰ clause $(x \lor y \lor \bar{z})$๋ฅผ $p_3$์— ๋ถ™์—ฌ triplet์„ ๋งŒ๋“ค์—ˆ๋‹ค๊ณ  ํ•˜์ž. ๊ทธ๋Ÿฐ๋ฐ ๋งŒ์•ฝ $(x \lor \bar{y} \lor z)$๋„ $(x \lor y \lor \bar{z})$๋„ $x=\text{true}$๋ผ์„œ $x$์™€ ์—ฐ๊ฒฐ๋œ triplet์ด ๋งค์นญ ๋˜์–ด์•ผ ํ•œ๋‹ค๊ณ  ํ•ด๋ณด์ž. ๊ทธ๋Ÿผ $p_3$์— ๋ถ™์€ triplet 2๊ฐœ ๋ชจ๋‘ ๋งค์นญ์ด ๋˜์–ด์•ผ ํ•˜๋Š”๋ฐ, ์ด๊ฒƒ์€ pet $p_3$๊ฐ€ ์ค‘๋ณตํ•ด์„œ ๋งค์นญ๋˜๊ธฐ ๋•Œ๋ฌธ์— ๋”์ด์ƒ perfect matching์ด ์•„๋‹ˆ๋‹ค!

์ •ํ™•ํ•˜๊ฒŒ ๋งํ•˜์ž๋ฉด, variable์ด 3๊ฐœ ์ด์ƒ์˜ Clause์— ๋“ฑ์žฅํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹Œ literal์ด 3๊ฐœ ์ด์ƒ์˜ Clause์— ๋“ฑ์žฅํ•˜์ง€ ์•Š์•„์•ผ ํ•œ๋‹ค. ์ด๋•Œ, literal์ด๋ž€ negation์„ ๊ตฌ๋ถ„ํ•˜๋Š” ๊ฒƒ์œผ๋กœ $x$์™€ $\bar{x}$๋ฅผ ์„œ๋กœ ๋‹ค๋ฅธ literal์ด๋ผ๊ณ  ํ•œ๋‹ค.

์œ„์™€ ๊ฐ™์ด literal์ด 3๊ฐœ ์ด์ƒ ๋“ฑ์žฅํ•˜๋Š” ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด, 3-SAT ๋ฌธ์ œ๋ฅผ <Constrained 3-SAT> ๋ฌธ์ œ๋กœ Reduction ํ•ด์•ผ ํ•œ๋‹ค. <Constrained 3-SAT> ๋ฌธ์ œ๋ž€ โ€œ๊ฐ literal์ด ์ตœ๋Œ€ 2๋ฒˆ ๋“ฑ์žฅํ•˜๋Š” 3-SAT ๋ฌธ์ œโ€์ด๋‹ค.

Proof

Let $\Phi$ be an instance of 3-SAT. For each literal $x$ appearing in $\Phi$ more than three times, replace each appearance of $x$ by a new literal, say $x_1, x_2, โ€ฆ, x_k$. Then add the clause

\[(\bar{x_1} \lor x_2)(\bar{x_2} \lor x_3) \cdots (\bar{x_k} \lor x_1)\]

$k$ is the number of appearance of $x$ in $\Phi$. Then, replace each appearance of $x$ into $x_i$.

Then, the transformed 3-SAT problem is Constrained 3-SAT!

์œ„์˜ ๋ณ€ํ™˜ ๊ณผ์ •์—์„œ ๋„์ž…ํ•œ $(\bar{x_1} \lor x_2)(\bar{x_2} \lor x_3) \cdots (\bar{x_k} \lor x_1)$ clause ์ ˆ์€ ๊ฐ literal $x_i$๊ฐ€ ๋ชจ๋‘ ๊ฐ™์€ ๊ฐ’์„ ๊ฐ€์ง€๋„๋ก ๋งŒ๋“ ๋‹ค: $x_1 = x_2 = \cdots = x_k$. ์–ด๋–ค variable $x_i$ ํ•˜๋‚˜์˜ ๊ฐ’์„ ์ •ํ–ˆ์„ ๋•Œ, ์œ„์˜ clause ์ ˆ์ด ์–ด๋–ป๊ฒŒ ๋งŒ์กฑ๋˜๋Š”์ง€๋ฅผ ์‚ดํŽด๋ณด๋ฉด ์ด ์‚ฌ์‹ค์„ ๊ธˆ๋ฐฉ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.

Constrained 3-SAT โ†’ 3D-Matching

๋‹ค์‹œ ๋ณธ๋ž˜์˜ ๋ฌธ์ œ๋กœ ๋Œ์•„์™€๋ณด์ž. ์ž, ์ด์ œ ํ•˜๋‚˜์˜ literal์ด ์ตœ๋Œ€ 2๋ฒˆ ๋“ฑ์žฅํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์•ž์—์„œ ์‚ดํŽด๋ณธ perfect matching์ด ์•ˆ ๋˜๋Š” ๊ทธ๋Ÿฐ ๋ฌธ์ œ๋ฅผ ๊ฑฑ์ •ํ•˜์ง€ ์•Š์•„๋„ ๋œ๋‹ค! ๊ทธ๋Ÿฐ๋ฐ, ์•„์ง ํ•˜๋‚˜์˜ ์ž‘์—…์ด ๋‚จ์•˜๋‹ค.

๋งŒ์•ฝ 3-SAT ๋ฌธ์ œ์— $n$๊ฐœ์˜ variable, ๊ทธ๋ฆฌ๊ณ  $m$๊ฐœ์˜ clause๊ฐ€ ์žˆ๋‹ค๋ฉด, ํ•ด๋‹น 3-SAT ๋ฌธ์ œ๊ฐ€ satisfying ๋œ ํ›„, ์ฆ‰ ์ ์ ˆํ•œ 3D-Matching์„ ์ฐพ์€ ํ›„์—๋Š” $2n - m$๊ฐœ์˜ ๋งค์นญ๋˜์ง€ ์•Š์€ ๋‚จ์€ pet๋“ค์ด ์žˆ๋‹ค. ์ด๋“ค์„ ์œ„ํ•ด์„œ triplet์„ ๋งŒ๋“ค์–ด์ค˜์•ผ perfact 3D-Matching์ด ๊ฐ€๋Šฅํ•˜๋‹ค๊ณ  ํ•œ๋‹ค. ์ด๋ฅผ ์œ„ํ•ด โ€œgeneric animal-loverโ€์ธ boy-girl ์ปคํ”Œ์„ ๋งŒ๋“ค์–ด pet๋“ค์„ ๋ชจ๋‘ ์—ฐ๊ฒฐํ•ด์ค€๋‹ค. (generic animal-lover์ด๊ธฐ์— triplet์ด ์—†๋Š” pet, ์žˆ๋Š” pet ๋ชจ๋‘ ์—ฐ๊ฒฐ๋œ ์ปคํ”Œ์ด๋‹ค.)

์ „์ฒด 3-SAT ๋ฌธ์ œ์— ๋Œ€ํ•ด์„œ ๋ณด๋ฉด ์•„๋ž˜์™€ ๊ฐ™๋‹ค.

๋ณด๋ฉด, ์œ„ ๊ทธ๋ฆผ์—๋Š” ํ•˜๋‚˜์˜ generic animal-lover couple๋งŒ ํ‘œํ˜„๋˜์–ด ์žˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๊ทธ๋ฆผ์˜ ์˜ค๋ฅธ์ชฝ ์•„๋ž˜๋ฅผ ๋ณด๋ฉด, boy-girl couple์ด ๋” ์กด์žฌํ•˜๋Š”๋ฐ, ์ด๋“ค ๋ชจ๋‘ generic animal-lover๋‹ค! ์ด๋Ÿฐ couple์ด $2n-m$๊ฐœ ์กด์žฌํ•œ๋‹ค๊ณ  ๋ณด๋ฉด ๋œ๋‹ค. ์ด๋“ค์€ ๋งค์นญ๋˜์ง€ ์•Š์€ pet๋“ค์„ ๋งค์นญํ•˜๊ธฐ ์œ„ํ•œ ์กด์žฌ๋“ค์ด๋‹ค.


ํ•จ๊ป˜๋ณด๊ธฐ

Reference

Categories:

Updated: