**1.** CLIQUE NP

To show CLIQUE in NP, we use set V' of vertices as a certificate.

Verifying is polynomial time, check whether for every pair u,v in V', the edge is in E ( pairs).

**2.** L' = 3-CNF-SAT

**3.** 3-CNF-SAT CLIQUE

Start with instance of 3-CNF-SAT (also called 3CNF).

Let f be 3CNF with k clauses, .

For r = 1,2,..,k, each clause has three distinct literals
*l*_{1}^{r}, *l*_{2}^{r}, *l*_{3}^{r}.

Construct a graph G such that f is satisfiable iff G has a clique of size k.

For each *C*_{r} in f, put triple of vertices *v*_{1}^{r}, *v*_{2}^{r}, *v*_{3}^{r} in V.

Add edge (*v*_{i}^{r}, *v*_{j}^{s}) if

- 1.
*v*_{i}^{r}and*v*_{j}^{s}are in different triples (r s), and- 2.
- their corresponding literals are consistent (
*l*_{i}^{r}is not the negation of*l*_{j}^{s}).