- Fleischer MREP
- CSE373
- NP, NP Complete, NP Hard - Armiwiki
- Phd Thesis Pedro So
- Example for N & NP
- Complexity Analysis
- hw5
- De_Jong
- Geometric Constraint Solving
- Documentation in Daa
- Optimization Problem
- 07. Taylor_forms – Use and Limits_Arnold
- CSE 101 Algorithm Lecture Notes 2
- Data Leakage Detection
- TongJin-2004-5
- A Distributed Algorithm for Finding All Best Swap Edges of a Minimum Diameter Spanning Tree
- Quantum xyz
- Full Text
- Detecting Cliques Using Degree and Connectivity Constraints
- 10.1.1.74
- Chp 2 - Crossings
- Shotgun
- Algorithms Solutions Ch 01
- Epp-SJC-98
- DS For 2014-17 - UNIT I.pdf
- Conjectures equivalent to the Borodin-Kostochka conjecture that appear weaker
- Setting Android IDE
- RM Presentation
- 2009 Android
- Ch05
- Sample Problems on Mean Median and Mode
- 3_Measures of Central Tendency, Dispersion and Skewness
- Standard Deviation-From Wikipedia
- UI Layout
- A Survey on Security for Mobile Devices
- Simple
- viper_err
- 1 Expression Trees
- 1 Expression Trees
- Mpi 1
- 1 Expression Trees
- dfs
- Mean Median Mode
- Lex

Chapter 8

The Theory of NP-Completeness

8- 2

P: the class of problems which can be solved

by a deterministic polynomial algorithm.

NP : the class of decision problem which can

be solved by a non-deterministic polynomial

algorithm.

NP-hard: the class of problems to which every

NP problem reduces.

NP-complete (NPC): the class of problems

which are NP-hard and belong to NP.

8- 3

Some concepts of NPC

Definition of reduction: Problem A reduces to

problem B (A · B) iff A can be solved by a

deterministic polynomial time algorithm using

a deterministic algorithm that solves B in

polynomial time.

Up to now, none of the NPC problems can be

solved by a deterministic polynomial time

algorithm in the worst case.

It does not seem to have any polynomial time

algorithm to solve the NPC problems.

8- 4

The theory of NP-completeness always

considers the worst case.

The lower bound of any NPC problem seems

to be in the order of an exponential function.

Not all NP problems are difficult. (e.g. the

MST problem is an NP problem.)

If A, B NPC, then A · B and B · A.

Theory of NP-completeness:

If any NPC problem can be solved in polynomial

time, then all NP problems can be solved in

polynomial time. (NP = P)

8- 5

Decision problems

The solution is simply ³Yes´ or ³No´.

Optimization problems are more difficult.

e.g. the traveling salesperson problem

Optimization version:

Find the shortest tour

Decision version:

Is there a tour whose total length is less than

or equal to a constant c ?

8- 6

Solving an optimization problem by a

decision algorithm :

Solving TSP optimization

problem by a decision algorithm :

Give c

1

and test (decision algorithm)

Give c

2

and test (decision algorithm)

Give c

n

and test (decision algorithm)

We can easily find the smallest c

i

8- 7

The satisfiability problem

The satisfiability problem

The logical formula :

x

1

v x

2

v x

3

& - x

1

& - x

2

the assignment :

x

1

ĸ F , x

2

ĸ F , x

3

ĸ T

will make the above formula true .

(-x

1

, -x

2

, x

3

) represents x

1

ĸ F , x

2

ĸ F , x

3

ĸ T

8- 8

If there is at least one assignment which

satisfies a formula, then we say that this

formula is satisfiable; otherwise, it is

unsatisfiable.

An unsatisfiable formula :

x

1

v x

2

& x

1

v -x

2

& -x

1

v x

2

& -x

1

v -x

2

8- 9

Definition of the satisfiability problem: Given

a Boolean formula, determine whether this

formula is satisfiable or not.

A literal : x

i

or -x

i

A clause : x

1

v x

2

v -x

3

÷ C

i

A formula : conjunctive normal form (CNF)

C

1

& C

2

& « & C

m

8- 10

Resolution principle

C

1

: x

1

v x

2

C

2

: -x

1

v x

3

÷ C

3

: x

2

v x

3

From C

1

&C

2

, we can

obtain C

3

, and C

3

can

be added into the

formula.

The formula becomes:

C

1

&C

2

&C

3

The resolution principle

x

1

x

2

x

3

C

1

&C

2

C

3

0 0 0 0 0

0 0 1 0 1

0 1 0 1 1

0 1 1 1 1

1 0 0 0 0

1 0 1 1 1

1 1 0 0 1

1 1 1 1 1

8- 11

Another example of resolution principle

C

1

: -x

1

v -x

2

v x

3

C

2

: x

1

v x

4

÷ C

3

: -x

2

v x

3

v x

4

If no new clauses can be deduced, then

it is satisfiable.

-x

1

v -x

2

v x

3

(1)

x

1

(2)

x

2

(3)

(1) & (2) -x

2

v x

3

(4)

(4) & (3) x

3

(5)

(1) & (3) -x

1

v x

3

(6)

8- 12

If an empty clause is deduced, then it is

unsatisfiable.

- x

1

v -x

2

v x

3

(1)

x

1

v -x

2

(2)

x

2

(3)

- x

3

(4)

¹ deduce

(1) & (2) -x

2

v x

3

(5)

(4) & (5) -x

2

(6)

(6) & (3) ș (7)

8- 13

Semantic tree

In a semantic tree, each

path from the root to a

leaf node represents a

class of assignments.

If each leaf node is

attached with a clause,

then it is unsatisfiable.

8- 14

Nondeterministic algorithms

A nondeterminstic algorithm consists of

phase 1: guessing

phase 2: checking

If the checking stage of a nondeterministic

algorithm is of polynomial time-complexity, then

this algorithm is called an NP (nondeterministic

polynomial) algorithm.

NP problems : (must be decision problems)

e.g. searching, MST

sorting

satisfiability problem (SAT)

traveling salesperson problem (TSP)

8- 15

Decision problems

Decision version of sorting:

Given a

1

, a

2

,«, a

n

and c, is there a

permutation of a

i

'

s ( a

1

'

, a

2

'

, « ,a

n

'

)

such thatפa

2

'

±a

1

'

פ+פa

3

'

±a

2

'

פ+ « +פa

n

'

±a

n-

1

'

פŚc ?

Not all decision problems are NP problems

E.g. halting problem :

Given a program with a certain input data, will

the program terminate or not?

NP-hard

Undecidable

8- 16

Nondeterministic operations

and functions

[Horowitz 1998]

Choice(S) : arbitrarily chooses one of the elements in set

S

Failure : an unsuccessful completion

Success : a successful completion

Nonderministic searching algorithm:

j ĸ choice(1 : n) /* guessing */

if A(j) = x then success /* checking */

else failure

8- 17

A nondeterministic algorithm terminates

unsuccessfully iff there does not exist a set of

choices leading to a success signal.

The time required for choice(1 : n) is O(1).

A deterministic interpretation of a non-

deterministic algorithm can be made by

allowing unbounded parallelism in computation.

8- 18

Nondeterministic sorting

B Ƹ 0

/* guessing */

for i = 1 to n do

j Ƹ choice(1 : n)

if B[j] ύ 0 then failure

B[j] = A[i]

/* checking */

for i = 1 to n-1 do

if B[i] !B[i+1] then failure

success

8- 19

Nondeterministic SAT

/* guessing */

for i = 1 to n do

x

i

Ƹ choice( true, false )

/* checking */

if E(x

1

, x

2

, « ,x

n

) is true then success

else failure

8- 20

Cook¶s theorem

NP = P iff the satisfiability

problem is a P problem.

SAT is NP-complete.

It is the first NP-complete

problem.

Every NP problem reduces

to SAT.

Stephen Arthur Cook

8- 21

Transforming searching to SAT

Does there exist a number in { x(1),

x(2), Ʀ, x(n) }, which is equal to 7?

Assume n = 2.

nondeterministic algorithm:

i = choice(1,2)

if x(i)=7 then SUCCESS

else FAILURE

8- 22

i=1 v i=2

& i=1 ƺ iύ2

& i=2 ƺ iύ1

& x(1)=7 & i=1 ƺ SUCCESS

& x(2)=7 & i=2 ƺ SUCCESS

& x(1)ύ7 & i=1 ƺ FAILURE

& x(2)ύ7 & i=2 ƺ FAILURE

& FAILURE ƺ -SUCCESS

& SUCCESS (Guarantees a successful

termination)

& x(1)=7 (Input Data)

& x(2)ύ

8- 23

CNF (conjunctive normal form) :

i=1 v i=2 (1)

iύ1 v iύ2 (2)

x(1)ύ7 v iύ1 v SUCCESS (3)

x(2)ύ7 v iύ2 v SUCCESS (4)

x(1)=7 v iύ1 v FAILURE (5)

x(2)=7 v iύ2 v FAILURE (6)

-FAILURE v -SUCCESS (7)

SUCCESS (8)

x(1)=7 (9)

x(2)ύ7 (10)

8- 24

Satisfiable at the following assignment :

i=1 satisfying (1)

iύ2 satisfying (2), (4) and (6)

SUCCESS satisfying (3), (4) and (8)

FAILURE satisfying (7)

x(1)=7 satisfying (5) and (9)

x(2)ύ7 satisfying (4) and (10)

8- 25

The semantic tree

i=1 v i=2 (1)

iƽ1 v iƽ2 (2)

x(1)ƽ7 v iƽ1 v SUCCESS (3)

x(2)ƽ7 v iƽ2 v SUCCESS (4)

x(1)=7 v iƽ1 v FAILURE (5)

x(2)=7 v iƽ2 v FAILURE (6)

-FAILURE v -SUCCESS (7)

SUCCESS (8)

x(1)=7 (9)

x(2)ƽ7 (10)

8- 26

Searching for 7, but x(1)=7, x(2)=7

CNF (conjunctive normal form) :

i=1 v i=2 (1)

i=1 v i=2 (2)

x(1)=7 v i=1 v SUCCESS ( 3)

x(2)=7 v i=2 v SUCCESS ( 4)

x(1)=7 v i=1 v FAI LURE ( 5)

x(2)=7 v i=2 v FAI LURE ( 6)

SUCCESS (7)

-SUCCESS v -FAILURE (8)

x(1) = 7 (9)

x(2) = 7 (10)

8- 27

Apply resolution principle :

(9) & (5) i =1 v FAILURE (11)

(10) & (6) i=2 v FAILURE (12)

(7) & (8) -FAILURE (13)

(13) & (11) i=1 (14)

(13) & (12) i=2 (15)

(14) & (1) i=2 (11)

(15) & (16)

ș

(17)

We get an empty clause ÷ unsatisfiable

÷ 7 does not exit in x(1) or x(2).

8- 28

CNF:

i=1 v i=2 (1)

i=1 v i=2 (2)

x(1)=7 v i=1 v S UCCES S ( 3 )

x(2)=7 v i=2 v S UCCES S ( 4 )

x(1)=7 v i=1 v FAI LURE ( 5 )

x(2)=7 v i=2 v FAI LURE ( 6 )

SUCCESS (7)

-SUCCESS v -FAILURE (8)

x(1)=7 (9)

x(2)=7 (10)

Searching for 7, where x(1)=7, x(2)=7

8- 29

The semantic

tree

It implies that both assignments (i=1, i=2) satisfy the

clauses.

8- 30

The node cover problem

Def: Given a graph G=(V, E), S is the node

cover if S _ V and for every edge (u, v) E,

either u S or v S.

node cover :

{1, 3}

{5, 2, 4}

Decision problem : n S + ¸ S ¸ · K :

8- 31

Transforming the node cover

problem to SAT

BEGIN

i

1

n choice({1, 2, «, n})

i

2

n choice({1, 2, «, n} ± {i

1

})

/

i

k

n choice({1, 2, «, n} ± {i

1

, i

2

, «, i

k-1

}).

For j=1 to m do

BEGIN

if e

j

is not incident to one of R

i

t

(1·t·k)

then FAILURE

END

SUCCESS

8- 32

i

1

= 1 v i

1

= 2« v i

1

= n

(i

1

ǎ

1p i

1

ś

2

v

i

1

ś

3«v i

1

= n)

i

2

= 1 v i

2

= 2« v i

2

= n

/

i

k

= 1 v i

k

= 2« v i

k

= n

i

1

= 1 v i

2

= 1 (i

1

=1 p i

2

=1 & ... & i

k

=1)

i

1

= 1 v i

3

= 1

/

i

k-1

= n v i

k

= n

R

i

1

e

1

v R

i

2

e

1

v « v R

i

k

e

1

v FAILURE

( R

i

1

e

1

R

i

2

e

1

ƥ

R

i

k

e

1

ƺ

Failure)

R

i

1

e

2

v R

i

2

e

2

v « v R

i

k

e

2

v FAILURE

/

R

i

1

e

m

v

R

i

2

e

m

v « v

R

i

k

e

m

v FAILURE

SUCCESS

CNF:

(To be continued)

8- 33

-SUCCESS v -FAILURE

R

r

1

e

1

R

s

1

e

1

R

r

2

e

2

R

s

2

e

2

/

R

r

m

e

m

R

s

m

e

m

8- 34

SAT is NP-complete

(1) SAT has an NP algorithm.

(2) SAT is NP-hard:

Every NP algorithm for problem A can be

transformed in polynomial time to SAT

[Horowitz 1998] such that SAT is satisfiable

if and only if the answer for A is ³YES´.

That is, every NP problem · SAT .

By (1) and (2), SAT is NP-complete.

8- 35

Proof of NP-Completeness

To show that A is NP-complete

(I) Prove that A is an NP problem.

(II) Prove that n B NPC, B · A.

÷ A NPC

Why ?

8- 36

3-satisfiability problem (3-SAT)

Def: Each clause contains exactly three

literals.

(I) 3-SAT is an NP problem (obviously)

(II) SAT · 3-SAT

Proof:

(1) One literal L

1

in a clause in SAT :

in 3-SAT :

L

1

v y

1

v y

2

L

1

v -y

1

v y

2

L

1

v y

1

v -y

2

L

1

v -y

1

v -y

2

8- 37

(2) Two literals L

1

, L

2

in a clause in SAT :

in 3-SAT :

L

1

v L

2

v y

1

L

1

v L

2

v -y

1

(3) Three literals in a clause : remain unchanged.

(4) More than 3 literals L

1

, L

2

, «, L

k

in a clause :

in 3-SAT :

L

1

v L

2

v y

1

L

3

v -y

1

v y

2

L

k-2

v -y

k-4

v y

k-3

L

k-1

v L

k

v -y

k-3

8- 38

SAT

transform

3-SAT

S S'

The instance S' in 3-

SAT :

x

1

v x

2

v y

1

x

1

v x

2

v -y

1

-x

3

v y

2

v y

3

-x

3

v -y

2

v y

3

-x

3

v y

2

v -y

3

-x

3

v -y

2

v -y

3

x

1

v -x

2

v y

4

x

3

v -y

4

v y

5

-x

4

v -y

5

v y

6

x

5

v x

6

v -y

6

An instance S in SAT :

x

1

v x

2

-x

3

x

1

v -x

2

v x

3

v -x

4

v x

5

v x

6

Example of transforming SAT to 3-SAT

8- 39

Proof : S is satisfiable S' is satisfiable

³÷´

· 3 literals in S (trivial)

consider u 4 literals

S : L

1

v L

2

v « v L

k

S': L

1

v L

2

v y

1

L

3

v -y

1

v y

2

L

4

v -y

2

v y

3

L

k-2

v -y

k-4

v y

k-3

L

k-1

v L

k

v -y

k-3

8- 40

S is satisfiable ÷ at least L

i

= T

Assume : L

j

= F V j = i

assign : y

i-1

= F

y

j

= T V j · i-1

y

j

= F V j > i-1

( L

i

v -y

i-2

v y

i-1

)

÷ S' is satisfiable.

³´

If S' is satisfiable, then assignment satisfying

S' can not contain y

i

¶s only.

÷ at least one L

i

must be true.

(We can also apply the resolution principle).

Thus, 3-SAT is NP-complete.

8- 41

Comment for 3-SAT

If a problem is NP-complete, its special cases

may or may not be NP-complete.

8- 42

Chromatic number decision

problem (CN)

Def: A coloring of a graph G=(V, E) is a function f :

V p { 1, 2, 3,«, k } such that if (u, v) E, then

f(u)=f(v). The CN problem is to determine if G has a

coloring for k.

E.g.

<Theorem> Satisfiability with at most 3 literals per

clause (SATY) · CN.

3-colorable

f(a)=1, f(b)=2, f(c)=1

f(d)=2, f(e)=3

8- 43

Proof :

instance of SATY :

variable : x

1

, x

2

, «, x

n

, n

u

4

clause : c

1

, c

2

, «, c

r

instance of CN :

G=(V, E)

V={ x

1

, x

2

, «, x

n

}

{ -x

1

, -x

2

, «, -x

n

}

{ y

1

, y

2

, «, y

n

}

{ c

1

, c

2

, «, c

r

}

newly added

E={ (x

i

, -x

i

)

¸

1

·

i

·

n }

{ (y

i

, y

j

)

¸

i

=

j }

{ (y

i

, x

j

)

¸

i

=

j }

{ (y

i

, -x

j

)

¸

i

=

j }

{ (x

i

, c

j

)

¸

x

i

c

j

}

{ (-x

i

, c

j

)

¸

-x

i

c

j

}

SATY · CN

8- 44

x

1

v x

2

v x

3

(1)

-x

3

v -x

4

v x

2

(2)

¹

Example of SATY · CN

True assignment:

x

1

=T

x

2

=F

x

3

=F

x

4

=T

E={ (x

i

, -x

i

) ¸ 1· i · n }{ (y

i

, y

j

) ¸ i =

j }

{ (y

i

, x

j

) ¸ i = j }{ (y

i

, -x

j

) ¸ i =

j }

{ (x

i

, c

j

) ¸ x

i

c

j

}{ (-x

i

, c

j

) ¸

-x

i

c

j

}

8- 45

Satisfiable n+1 colorable

³÷´

(1) f(y

i

) = i

(2) if x

i

= T, then f(x

i

) = i, f(-x

i

) = n+1

else f(x

i

) = n+1, f(-x

i

) = i

(3)if x

i

in c

j

and x

i

= T, then f(c

j

) = f(x

i

)

if -x

i

in c

j

and -x

i

= T, then f(c

j

) = f(-x

i

)

( at least one such x

i

)

Proof of SATY · CN

8- 46

³´

(1) y

i

must be assigned with color i.

(2) f(x

i

) = f(-x

i

)

either f(x

i

) = i and f(-x

i

) = n+1

or f(x

i

) = n+1 and f(-x

i

) = i

(3) at most 3 literals in c

j

and n u 4

÷ at least one x

i

, + x

i

and -x

i

are not in c

j

÷ f(c

j

) = n+1

(4) if f(c

j

) = i = f(x

i

), assign x

i

to T

if f(c

j

) = i = f(-x

i

), assign -x

i

to T

(5) if f(c

j

) = i = f(x

i

) ÷ (c

j

, x

i

) E

÷ x

i

in c

j

÷ c

j

is true

if f(c

j

) = i = f(-x

i

) ÷ similarly

8- 47

Set cover decision problem

Def: F = {S

i

} = { S

1

, S

2

, «, S

k

}

= { u

1

, u

2

, «, u

n

}

T is a set cover of F if T _ F and

The set cover decision problem is to determine if F has

a cover T containing no more than c sets.

Example

F = {(u

1

, u

3

), (u

2

, u

4

), (u

2

, u

3

), (u

4

), (u

1

, u

3

, u

4

)}

s

1

s

2

s

3

s

4

s

5

T = { s

1

, s

3

, s

4

} set cover

T = { s

1

, s

2

} set cover, exact cover

7

F S

i

i

S

7 7

F S

i

T S

i

i i

S S

=

8- 48

Exact cover problem

(Notations same as those in set cover.)

Def: To determine if F has an exact cover T,

which is a cover of F and the sets in T are

pairwise disjoint.

<Theorem> CN · exact cover

(No proof here.)

8- 49

Sum of subsets problem

Def: A set of positive numbers A = { a

1

,

a

2

, «, a

n

}

a constant C

Determine if n A' _ A +

e.g. A = { 7, 5, 19, 1, 12, 8, 14 }

C = 21, A' = { 7, 14 }

C = 11, no solution

<Theorem> Exact cover · sum of subsets.

C a

A a

i

i

=

¿

'

8- 50

Proof :

instance of exact cover :

F = { S

1

, S

2

, «, S

k

}

instance of sum of subsets :

A = { a

1

, a

2

, «, a

k

} where

where e

ij

= 1 if u

j

S

i

e

ij

= 0 if otherwise.

Why k+1? (See the example on the next page.)

Exact cover · sum of subsets

, ¦

7

F S

n i

i

u u u S

= ...,

, 2 , 1

j

n j

ij i

k e a ) 1 (

1

=

¿

· ·

k k k k C

n

n j

j

/ ) 1 ) 1 )(( 1 ( ) 1 (

1

= =

¿

· ·

8- 51

Example of Exact cover · sum of

subsets

Valid transformation:

u

1

=6, u

2

=8, u

3

=9, n=3

EC: S

1

={6,8}, S

2

={9},

S

3

={6,9}, S

4

={8,9}

k=4

SS: a

1

=5

1

+5

2

=30

a

2

=5

3

=125

a

3

=5

1

+5

3

=130

a

4

=5

2

+5

3

=150

C=5

1

+5

2

+5

3

=155

Invalid transformation:

EC: S

1

={6,8}, S

2

={8}, S

3

={8},

S

4

={8,9}. K=4

Suppose k-2=2 is used.

SS: a

1

=2

1

+2

2

=6

a

2

=2

2

=4

a

3

=2

2

=4

a

4

=2

2

+2

3

=12

C=2

1

+2

2

+2

3

=14

, ¦ , ¦ 9 , 8 , 6 ...,

, 2 , 1

= =

7

F S

n i

i

u u u S

8- 52

Partition problem

Def: Given a set of positive numbers A =

{ a

1

,a

2

,«,a

n

},

determine if n a partition P, +

e. g. A = {3, 6, 1, 9, 4, 11}

partition : {3, 1, 9, 4} and {6, 11}

<Theorem> sum of subsets · partition

¿ ¿

=

P a

i

P a

i

i i

a a

8- 53

Sum of subsets · partition

proof :

instance of sum of subsets :

A = { a

1

, a

2

, «, a

n

}, C

instance of partition :

B = { b

1

, b

2

, «, b

n+2

}, where b

i

= a

i

, 1· i · n

b

n+1

= C+1

b

n+2

= ( ¿ a

i

)+1C

1·i·n

C = ¿a

i

( ¿a

i

)+b

n+2

= ( ¿a

i

)+b

n+1

a

i

S a

i

S a

i

S

partition : { b

i

¸ a

i

S ¦{b

n+2

}

and { b

i

¸ a

i

S }{b

n+1

}

S

S¶

A

C

8- 54

Why b

n+1

= C+1 ? why not b

n+1

= C ?

To avoid b

n+1

and b

n+2

to be partitioned

into the same subset.

8- 55

Bin packing problem

Def: n items, each of size c

i

, c

i

> 0

Each bin capacity : C

Determine if we can assign the items into

k bins, + ¿c

i

· C , 1·j·k.

ibin

j

<Theorem> partition · bin packing.

8- 56

VLSI discrete layout problem

Given: n rectangles, each with height h

i

(integer)

width w

i

and an area A

Determine if there is a placement of the n

rectangles within the area A according to the rules :

1. Boundaries of rectangles parallel to x axis or y

axis.

2. Corners of rectangles lie on integer points.

3. No two rectangles overlap.

4. Two rectangles are separated by at least a unit

distance.

(See the figure on the next page.)

8- 57

A Successful Placement

<Theorem> bin packing · VLSI discrete layout.

8- 58

Max clique problem

Def: A maximal complete subgraph of a graph

G=(V,E) is a clique. The max (maximum) clique

problem is to determine the size of a largest

clique in G.

e. g.

<Theorem> SAT · clique decision problem.

maximal cliques :

{a, b}, {a, c, d}

{c, d, e, f}

maximumclique :

(largest)

{c, d, e, f}

8- 59

Node cover decision problem

Def: A set S _ V is a node cover for a graph

G = (V, E) iff all edges in E are incident to at

least one vertex in S. n S, + ¸S¸ · K ?

<Theorem> clique decision problem ·

node cover decision problem.

(See proof on the next page.)

8- 60

Clique decision · node cover

decision

G=(V,E) : clique Q of size k (Q_V)

G¶=(V,E¶) : node cover S of size n-k, S=V-Q

where E¶={(u,v)|uV, v V and (u,v)E}

8- 61

Hamiltonian cycle problem

Def: A Hamiltonian cycle is a round trip path

along n edges of G which visits every vertex

once and returns to its starting vertex.

e.g.

Hamiltonian cycle : 1, 2, 8, 7, 6, 5, 4, 3, 1.

<Theorem> SAT · directed Hamiltonian cycle

( in a directed graph )

8- 62

Traveling salesperson problem

Def: A tour of a directed graph G=(V, E)

is a directed cycle that includes every

vertex in V. The problem is to find a tour

of minimum cost.

<Theorem> Directed Hamiltonian cycle ·

traveling salesperson decision problem.

(See proof on the next page.)

8- 63

Proof of Hamiltonian · TSP

8- 64

0/1 knapsack problem

Def: n objects, each with a weight w

i

> 0

a profit p

i

> 0

capacity of knapsack : M

Maximize ¿p

i

x

i

1·i·n

Subject to ¿w

i

x

i

· M

1·i·n

x

i

= 0 or 1, 1· i ·n

Decision version :

Given K, n ¿p

i

x

i

u K ?

1·i·n

Knapsack problem : 0 · x

i

· 1, 1· i ·n.

<Theorem> partition · 0/1 knapsack decision

problem.

8- 65

Refer to Sec. 11.3, Sec. 11.4 and its exercises

of [Horowitz 1998] for the proofs of more NP-

complete problems.

[[Horowitz 1998] E. Howowitz, S. Sahni and S.

Rajasekaran, Computer Algorithms, Computer

Science Press, New York, 1998,ȵשռߧሬȶ˩,

02-23625376

P: the class of problems which can be solved by a deterministic polynomial algorithm. NP : the class of decision problem which can be solved by a non-deterministic polynomial algorithm. NP-hard: the class of problems to which every NP problem reduces. NP-complete (NPC): the class of problems which are NP-hard and belong to NP.

8- 2

Some concepts of NPC

Definition of reduction: Problem A reduces to problem B (A w B) iff A can be solved by a deterministic polynomial time algorithm using a deterministic algorithm that solves B in polynomial time. Up to now, none of the NPC problems can be solved by a deterministic polynomial time algorithm in the worst case. It does not seem to have any polynomial time algorithm to solve the NPC problems.

8- 3

the MST problem is an NP problem. (NP = P) 8. The theory of NP-completeness always considers the worst case.4 . B NPC. Not all NP problems are difficult. (e.g. Theory of NP-completeness: If any NPC problem can be solved in polynomial time. then all NP problems can be solved in polynomial time. then A w B and B w A. The lower bound of any NPC problem seems to be in the order of an exponential function.) If A.

e.Decision problems The solution is simply ³Yes´ or ³No´. Optimization problems are more difficult. the traveling salesperson problem Optimization version: Find the shortest tour Decision version: Is there a tour whose total length is less than or equal to a constant c ? 8.5 .g.

6 .Solving an optimization problem by a decision algorithm : Solving TSP optimization problem by a decision algorithm : Give c1 and test (decision algorithm) Give c2 and test (decision algorithm) Give cn and test (decision algorithm) We can easily find the smallest ci 8.

x2 F .x2 the assignment : x1 F .7 . x2 F . x3 T F .x1 & . x3 T will make the above formula true . x3) represents x1 8.The satisfiability problem The satisfiability problem The logical formula : x1 v x2 v x3 & . (-x1. -x2 .

8 . it is unsatisfiable. If there is at least one assignment which satisfies a formula. An unsatisfiable formula : x1 v x2 & x1 v -x2 & -x1 v x2 & -x1 v -x2 8. then we say that this formula is satisfiable. otherwise.

determine whether this formula is satisfiable or not. Definition of the satisfiability problem: Given a Boolean formula. A literal : xi or -xi A clause : x1 v x2 v -x3 | Ci A formula : conjunctive normal form (CNF) C1& C2 & « & Cm 8.9 .

we can obtain C3. and C3 can be added into the formula.The resolution principle Resolution principle C1 : x 1 v x 2 C2 : -x1 v x3 C3 : x 2 v x 3 From C1 & C2.10 . The formula becomes: C1 & C2 & C3 x1 0 0 0 0 1 1 1 1 x2 0 0 1 1 0 0 1 1 x3 0 1 0 1 0 1 0 1 C1 & C2 0 0 1 1 0 1 0 1 C3 0 1 1 1 0 1 1 1 8.

then it is satisfiable. Another example of resolution principle C1 : -x1 v -x2 v x3 C2 : x1 v x4 C3 : -x2 v x3 v x4 If no new clauses can be deduced. -x1 v -x2 v x3 x1 x2 (1) & (2) -x2 v x3 (4) & (3) x3 (1) & (3) -x1 v x3 (1) (2) (3) (4) (5) (6) 8.11 .

x1 v -x2 v x3 x1 v -x2 x2 .x3 ¡ deduce (1) & (2) -x2 v x3 (4) & (5) -x2 (6) & (3) (1) (2) (3) (4) (5) (6) (7) 8. If an empty clause is deduced. then it is unsatisfiable.12 . .

8. then it is unsatisfiable.Semantic tree In a semantic tree. each path from the root to a leaf node represents a class of assignments.13 . If each leaf node is attached with a clause.

g.14 . then this algorithm is called an NP (nondeterministic polynomial) algorithm. searching. NP problems : (must be decision problems) e. MST sorting satisfiability problem (SAT) traveling salesperson problem (TSP) 8.Nondeterministic algorithms A nondeterminstic algorithm consists of phase 1: guessing phase 2: checking If the checking stage of a nondeterministic algorithm is of polynomial time-complexity.

and ) such that a2d±a1d + a3d±a2d + « + and±and c? 1 Not all decision problems are NP problems E.g. a2d . halting problem : Given a program with a certain input data. is there a permutation of aids ( a1d. will the program terminate or not? NP-hard Undecidable 8.«.Decision problems Decision version of sorting: Given a1. an and c. « . a2.15 .

Nondeterministic operations and functions [Horowitz 1998] Choice(S) : arbitrarily chooses one of the elements in set S Failure : an unsuccessful completion Success : a successful completion Nonderministic searching algorithm: j choice(1 : n) /* guessing */ if A(j) = x then success /* checking */ else failure 8.16 .

A nondeterministic algorithm terminates unsuccessfully iff there does not exist a set of choices leading to a success signal. The time required for choice(1 : n) is O(1).17 . 8. A deterministic interpretation of a nondeterministic algorithm can be made by allowing unbounded parallelism in computation.

18 .Nondeterministic sorting B 0 /* guessing */ for i = 1 to n do j choice(1 : n) if B[j] 0 then failure B[j] = A[i] /* checking */ for i = 1 to n-1 do if B[i] !B[i+1] then failure success 8.

Nondeterministic SAT /* guessing */ for i = 1 to n do xi choice( true. false ) /* checking */ if E(x1. « .xn) is true then success else failure 8. x2.19 .

Stephen Arthur Cook 8.Cook¶s theorem NP = P iff the satisfiability problem is a P problem. Every NP problem reduces to SAT. SAT is NP-complete.20 . It is the first NP-complete problem.

x(2).2) if x(i)=7 then SUCCESS else FAILURE 8. . nondeterministic algorithm: i = choice(1.Transforming searching to SAT Does there exist a number in { x(1).21 . x(n) }. which is equal to 7? Assume n = 2.

22 .i=1 v i=2 & i=1 i 2 & i=2 i 1 & x(1)=7 & i=1 SUCCESS & x(2)=7 & i=2 SUCCESS FAILURE & x(1) 7 & i=1 & x(2) 7 & i=2 FAILURE & FAILURE -SUCCESS & SUCCESS (Guarantees a successful termination) & x(1)=7 (Input Data) & x(2) 8.

23 . CNF (conjunctive normal form) : i=1 v i=2 i 1vi 2 x(1) 7 v i 1 v SUCCESS x(2) 7 v i 2 v SUCCESS x(1)=7 v i 1 v FAILURE x(2)=7 v i 2 v FAILURE -FAILURE v -SUCCESS SUCCESS x(1)=7 x(2) 7 (1) (2) (3) (4) (5) (6) (7) (8) (9) (10) 8.

(4) and (8) (7) (5) and (9) (4) and (10) 8. (4) and (6) (3). Satisfiable at the following assignment : i=1 i 2 SUCCESS FAILURE x(1)=7 x(2) 7 satisfying satisfying satisfying satisfying satisfying satisfying (1) (2).24 .

The semantic tree i=1 v i=2 i 1vi 2 x(1) 7 v i 1 v SUCCESS x(2) 7 v i 2 v SUCCESS x(1)=7 v i 1 v FAILURE x(2)=7 v i 2 v FAILURE -FAILURE v -SUCCESS SUCCESS x(1)=7 x(2) 7 (1) (2) (3) (4) (5) (6) (7) (8) (9) (10) 8.25 .

26 i=1 v i=2 i{1 v i{2 x(1){7 v i{1 v x(2){7 v i{2 v x(1)=7 v i{1 v x(2)=7 v i{2 v SUCCESS -SUCCESS v -FAILURE x(1) { 7 x(2) { 7 . x(2){7 CNF (conjunctive normal form) : SUCCESS SUCCESS FA I L U R E FA I L U R E (1) (2) (3) (4) (5) (6) (7) (8) (9) (10) 8. but x(1){7.Searching for 7.

Apply resolution principle : i{1 v FAILURE i{2 v FAILURE -FAILURE i{1 i{2 i=2 (11) (12) (13) (14) (15) (11) (17) (9) & (5) (10) & (6) (7) & (8) (13) & (11) (13) & (12) (14) & (1) (15) & (16) We get an empty clause unsatisfiable 7 does not exit in x(1) or x(2). 8.27 .

Searching for 7. where x(1)=7. x(2)=7 CNF: i=1 v i=2 i{1 v i{2 x(1){7 v i{1 v x(2){7 v i{2 v x(1)=7 v i{1 v x(2)=7 v i{2 v SUCCESS -SUCCESS v -FAILURE x(1)=7 x(2)=7 (1) (2) (3) (4) (5) (6) (7) (8) (9) (10) 8.28 SUCCESS SUCCESS FA I L U R E FA I L U R E .

8. i=2) satisfy the clauses.The semantic tree It implies that both assignments (i=1.29 .

30 . node cover : {1. S is the node cover if S V and for every edge (u. either u S or v S. 4} Decision problem : S ` S ` e K # 8. 2.The node cover problem Def: Given a graph G=(V. v) E. E). 3} {5.

«.Transforming the node cover problem to SAT BEGIN choice({1. i2. «. n} ± {i1. n} ± {i1}) / choice({1. 2.31 . n}) i1 n i2 n choice({1. ik-1}). «. 2. ik n For j=1 to m do BEGIN if ej is not incident to one of R i t (1etek) then FAILURE END SUCCESS 8. 2. «.

..32 . & ik{1) / ik { n ik-1 { n v R i1 e1 v R i 2 e1 v « v R i k e1 v FAILURE Failure) ( R i1 e1 R i 2 e1 R i k e1 R i1 e2 v R i 2 e2 v « v R i k e2 v FAILURE / R i1 em v R i 2 em v « v R i k em v FAILURE SUCCESS (To be continued) 8.CNF: i1 = 1 i2 = 1 ik = 1 i1 { 1 i1 { 1 v v v v / v i1 = 2« (i1 v 1p i1 i1 = n 2 v i1 3«v i1 = n) i2 = 2« ik = 2« i2 { 1 i3 { 1 v v i2 = n ik = n (i1=1 p i2{1 & .

-SUCCESS v -FAILURE R r1 e1 R s1 e1 R r2 e2 R s2 e2 / R rm em R s m em 8.33 .

(2) SAT is NP-hard: Every NP algorithm for problem A can be transformed in polynomial time to SAT [Horowitz 1998] such that SAT is satisfiable if and only if the answer for A is ³YES´.SAT is NP-complete (1) SAT has an NP algorithm. That is.34 . SAT is NP-complete. By (1) and (2). every NP problem w SAT . 8.

A NPC Why ? 8.Proof of NP-Completeness To show that A is NP-complete (I) Prove that A is an NP problem. B w A.35 . (II) Prove that B NPC.

3-satisfiability problem (3-SAT) Def: Each clause contains exactly three literals.36 . (I) 3-SAT is an NP problem (obviously) (II) SAT w 3-SAT Proof: (1) One literal L1 in a clause in SAT : in 3-SAT : L1 v y1 v y2 L1 v -y1 v y2 L1 v y1 v -y2 L1 v -y1 v -y2 8.

37 . «. (4) More than 3 literals L1. L2 in a clause in SAT : in 3-SAT : L1 v L2 v y1 L1 v L2 v -y1 (3) Three literals in a clause : remain unchanged.(2) Two literals L1. Lk in a clause : in 3-SAT : L1 v L2 v y1 L3 v -y1 v y2 Lk-2 v -yk-4 v yk-3 Lk-1 v Lk v -yk-3 8. L2.

38 S Sd .Example of transforming SAT to 3-SAT The instance Sd in An instance S in SAT : SAT : x1 v x2 x1 v x2 v -x3 x1 v x2 v x1 v -x2 v x3 v -x4 v x5 v x6 -x3 v y2 v -x3 v -y2 v -x3 v y2 v -x3 v -y2 v x1 v -x2 v x3 v -y4 v -x4 v -y5 v transform x5 v3-SAT v x6 SAT 3y1 -y1 y3 y3 -y3 -y3 y4 y5 y6 -y6 8.

Proof : S is satisfiable Sd is satisfiable ³ ´ e 3 literals in S (trivial) consider u 4 literals S : L1 v L2 v « v Lk Sd: L1 v L2 v y1 L3 v -y1 v y2 L4 v -y2 v y3 Lk-2 v -yk-4 v yk-3 Lk-1 v Lk v -yk-3 8.39 .

(We can also apply the resolution principle). 8. Thus. S is satisfiable at least Li = T Assume : Lj = F j { i assign : yi-1 = F yj = T j i-1 yj = F j " i-1 ( Li v -yi-2 v yi-1 ) Sd is satisfiable. at least one Li must be true. ³´ If Sd is satisfiable. 3-SAT is NP-complete.40 . then assignment satisfying Sd can not contain yi¶s only.

Comment for 3-SAT If a problem is NP-complete. 8.41 . its special cases may or may not be NP-complete.

f(e)=3 <Theorem> Satisfiability with at most 3 literals per clause (SATY) w CN. k } such that if (u. E) is a function f : V p { 1.g. 3-colorable f(a)=1. then f(u){f(v). The CN problem is to determine if G has a coloring for k. v) E. 8.Chromatic number decision problem (CN) Def: A coloring of a graph G=(V.«. 2. 3.42 . f(c)=1 f(d)=2. f(b)=2. E.

SATY w CN Proof : instance of SATY : variable : x1. xn }{ -x1.43 . n u 4 clause : c1. «. cr } newly added E={ (xi. c2. -xj) ` i { j } { (xi. yn }{ c1. cj) ` xi cj }{ (-xi. E) V={ x1. «. x2. x2. -xn } { y1. xn . «. cr instance of CN : G=(V. -xi) ` 1e i e n }{ (yi. -x2. cj) ` -xi cj } 8. y2. xj) ` i { j }{ (yi. «. «. c2. «. yj) ` i { j } { (yi.

Example of SATY w CN x1 v x2 v x3 -x3 v -x4 v x2 ¡ (1) (2) True assignment: x1=T x2=F x3=F x4=T E={ (xi. 44) ` 8. yj) ` i { j} { (yi. xj) ` i { j }{ (yi. -xj) ` i { j} { (xi. cj) ` xi cj }{ (-xi. -xi) ` 1e i e n }{ (yi.cj -xi cj } .

f(-xi) = i (3)if xi in cj and xi = T.Proof of SATY w CN Satisfiable n+1 colorable ³ ´ (1) f(yi) = i (2) if xi = T. then f(cj) = f(xi) if -xi in cj and -xi = T. then f(cj) = f(-xi) ( at least one such xi ) 8.45 . then f(xi) = i. f(-xi) = n+1 else f(xi) = n+1.

assign xi to T if f(cj) = i = f(-xi). xi) E xi in cj cj is true if f(cj) = i = f(-xi) similarly 8. assign -xi to T (5) if f(cj) = i = f(xi) (cj.46 . xi and -xi are not in cj f(cj) { n+1 (4) if f(cj) = i = f(xi). ³´ (1) yi must be assigned with color i. (2) f(xi) { f(-xi) either f(xi) = i and f(-xi) = n+1 or f(xi) = n+1 and f(-xi) = i (3) at most 3 literals in cj and n u 4 at least one xi.

Set cover decision problem Def: F = {Si} = { S1. exact cover 8. u3 . u2. u4). Sk } 7Si = { u1. s3. u4)} s2 s3 s4 s5 s1 T = { s1. s4 } set cover T = { s1. «. u3). S2. un } Si F T is a set cover of F if T F and Si T 7S ! 7S i Si F i The set cover decision problem is to determine if F has a cover T containing no more than c sets. u3). Example F = {(u1. (u2. s2 } set cover. (u2. (u1.47 . «. (u4).

Exact cover problem (Notations same as those in set cover. <Theorem> CN w exact cover (No proof here. which is a cover of F and the sets in T are pairwise disjoint.) Def: To determine if F has an exact cover T.48 .) 8.

an } a constant C Determine if Ad A ai Ad §a i !C e.Sum of subsets problem Def: A set of positive numbers A = { a1. Ad = { 7. 8.49 . 1. 8. A = { 7. 14 } C = 21.g. no solution <Theorem> Exact cover w sum of subsets. 12. a2. 19. «. 5. 14 } C = 11.

Exact cover w sum of subsets

Proof : instance of exact cover : F = { S1, S2, «, Sk }

Si F

7S ! _u u

i

1, 2 ,

..., un a

instance of sum of subsets : A = { a1, a2, «, ak } where j ai ! § eij ( k 1) where eij = 1 if uj Si 1e j e n eij = 0 if otherwise. C!

1e j e n

( k 1) j ! (k 1)(( k 1) n 1) / k §

Why k+1?

**(See the example on the next page.)
**

8- 50

Example of Exact cover w sum of subsets

Valid transformation:

u1=6, u2=8, u3=9, n=3 EC: S1={6,8}, S2={9}, S3={6,9}, S4={8,9}

i

Invalid transformation:

EC: S1={6,8}, S2={8}, S3={8}, S4={8,9}. K=4 Suppose k-2=2 is used. 6 7Si ! _u1,u2, ..., un a! _ ,8,9a SS: a =21+22=6 S F 1 a2=22=4 k=4 SS: a1=51+52=30 a3=22=4 a2=53=125 a4=22+23=12 a3=51+53=130 C=21+22+23=14 a4=52+53=150 8- 51 C=51+52 +53 =155

Partition problem

**Def: Given a set of positive numbers A = { a1,a2,«,an }, determine if a partition P, § ai ! § ai a P a P e. g. A = {3, 6, 1, 9, 4, 11} partition : {3, 1, 9, 4} and {6, 11}
**

i i

**<Theorem> sum of subsets w partition
**

8- 52

C instance of partition : B = { b1.Sum of subsets w partition proof : instance of sum of subsets : A = { a1. «. 1e i e n bn+1 = C+1 bn+2 = ( § ai )+1C 1eien A C S S¶ C = §ai ( §ai )+bn+2 = ( §ai )+bn+1 aiS aiS aiS partition : { bi ` aiS a{bn+2} and { bi ` aiS }{bn+1} 8. «. where bi = ai.53 . an }. bn+2 }. b2. a2.

Why bn+1 = C+1 ? why not bn+1 = C ? To avoid bn+1 and bn+2 to be partitioned into the same subset. 8.54 .

Bin packing problem Def: n items. each of size ci . ibinj <Theorem> partition w bin packing. ci > 0 Each bin capacity : C Determine if we can assign the items into k bins. 1ejek. 8. §ci e C .55 .

4.56 . each with height hi (integer) width wi and an area A Determine if there is a placement of the n rectangles within the area A according to the rules : 1. Two rectangles are separated by at least a unit distance.) 8. (See the figure on the next page. 3.VLSI discrete layout problem Given: n rectangles. No two rectangles overlap. Boundaries of rectangles parallel to x axis or y axis. Corners of rectangles lie on integer points. 2.

A Successful Placement <Theorem> bin packing w VLSI discrete layout.57 . 8.

58 <Theorem> SAT w clique decision problem. e. g. e. e. b}. maximal cliques : {a.E) is a clique. c. The max (maximum) clique problem is to determine the size of a largest clique in G. f} maximum clique : (largest) {c.Max clique problem Def: A maximal complete subgraph of a graph G=(V. d. {a. . f} 8. d} {c. d.

S.Node cover decision problem Def: A set S V is a node cover for a graph G = (V.) 8. (See proof on the next page.59 . E) iff all edges in E are incident to at least one vertex in S. `S` e K ? <Theorem> clique decision problem w node cover decision problem.

E) : clique Q of size k (QV) G¶=(V.E¶) : node cover S of size n-k.Clique decision w node cover decision G=(V.60 .v)|uV.v)E} 8. v V and (u. S=V-Q where E¶={(u.

6.g. 5. 7.61 . 4. Hamiltonian cycle : 1. 8. 2. 3. 1.Hamiltonian cycle problem Def: A Hamiltonian cycle is a round trip path along n edges of G which visits every vertex once and returns to its starting vertex. <Theorem> SAT w directed Hamiltonian cycle ( in a directed graph ) 8. e.

) 8. <Theorem> Directed Hamiltonian cycle w traveling salesperson decision problem.Traveling salesperson problem Def: A tour of a directed graph G=(V. (See proof on the next page. The problem is to find a tour of minimum cost.62 . E) is a directed cycle that includes every vertex in V.

Proof of Hamiltonian w TSP 8.63 .

<Theorem> partition w 0/1 knapsack decision problem. each with a weight wi > 0 a profit pi > 0 capacity of knapsack : M Maximize §pixi 1eien Subject to §wixi e M 1eien xi = 0 or 1. 1e i en Decision version : Given K. 8. §pixi u K ? 1eien Knapsack problem : 0 e xi e 1.0/1 knapsack problem Def: n objects. 1e i en.64 .

Sahni and S. 1998. 11. 8.3. 02-23625376 .65 . [[Horowitz 1998] E. Refer to Sec.4 and its exercises of [Horowitz 1998] for the proofs of more NPcomplete problems. New York. Sec. S. 11. Rajasekaran. Computer Science Press. Howowitz. Computer Algorithms.

- Fleischer MREPUploaded byivan
- CSE373Uploaded bykhoalan
- NP, NP Complete, NP Hard - ArmiwikiUploaded byDineshKumar
- Phd Thesis Pedro SoUploaded byfredyaguirrem
- Example for N & NPUploaded byRaghuveer Raman
- Complexity AnalysisUploaded byKoutheyr Elbehy
- hw5Uploaded byAnonymous G3DRjDMk
- De_JongUploaded bySimon Tudge
- Geometric Constraint SolvingUploaded bymszlazak4179
- Documentation in DaaUploaded byjoyce_khenzie23
- Optimization ProblemUploaded byArie Trisna
- 07. Taylor_forms – Use and Limits_ArnoldUploaded byStruct DesignPro
- CSE 101 Algorithm Lecture Notes 2Uploaded byphulam146
- Data Leakage DetectionUploaded byaarthithi
- TongJin-2004-5Uploaded byRadu Tudorică
- A Distributed Algorithm for Finding All Best Swap Edges of a Minimum Diameter Spanning TreeUploaded byieeexploreprojects
- Quantum xyzUploaded byRenggana Dimas Prayogi Wiranata
- Full TextUploaded byRajesh Lingampally
- Detecting Cliques Using Degree and Connectivity ConstraintsUploaded byLewis Torres
- 10.1.1.74Uploaded byRaj Kumar
- Chp 2 - CrossingsUploaded byGaKeGui
- ShotgunUploaded byinigo
- Algorithms Solutions Ch 01Uploaded byRt
- Epp-SJC-98Uploaded byPhạm Đức Minh
- DS For 2014-17 - UNIT I.pdfUploaded byshashank shekhar
- Conjectures equivalent to the Borodin-Kostochka conjecture that appear weakerUploaded byWu Bia

- Setting Android IDEUploaded byBijal Patel
- RM PresentationUploaded byBijal Patel
- 2009 AndroidUploaded byBijal Patel
- Ch05Uploaded byBijal Patel
- Sample Problems on Mean Median and ModeUploaded byBijal Patel
- 3_Measures of Central Tendency, Dispersion and SkewnessUploaded byBijal Patel
- Standard Deviation-From WikipediaUploaded byBijal Patel
- UI LayoutUploaded byBijal Patel
- A Survey on Security for Mobile DevicesUploaded byBijal Patel
- SimpleUploaded byBijal Patel
- viper_errUploaded byBijal Patel
- 1 Expression TreesUploaded byBijal Patel
- 1 Expression TreesUploaded byBijal Patel
- Mpi 1Uploaded byBijal Patel
- 1 Expression TreesUploaded byBijal Patel
- dfsUploaded byBijal Patel
- Mean Median ModeUploaded byBijal Patel
- LexUploaded byBijal Patel