Professional Documents
Culture Documents
NP Hard and NP Complete Problems Basic Concepts
NP Hard and NP Complete Problems Basic Concepts
Basic Concepts
1
NP –HARD AND NP – COMPLETE PROBLEMS
Basic Concepts
NP –HARD AND NP – COMPLETE PROBLEMS
Basic Concepts
Decision Problems
To keep things simple, we will mainly concern ourselves with
decision problems. These problems only require a single bit output:
``yes'' and ``no''.
NP-hardness
NP-Complete
P
NP
DETERMINISTIC and NONDETERMINISTIC ALGORITHMS
20
The satisfiability problem
The Satisfiability problem
- The logical formula:
(X1 V X2 V X3 ) Ʌ V X2 V X3 )Ʌ(X1 V X3 )
Clauses C1 ɅC2 Ʌ C3
conjunctive normal form (CNF)
23
NP-HARD GRAPH PROBLEMS
Clique Decision Problem(CDP)
• a clique is a complete sub-graph of the given graph.
• Complete sub-graph means, all the vertices of this sub-graph is connected to all other
vertices of this sub-graph.
• The Max-Clique problem is the computational problem of finding maximum clique of the
graph.
NP-HARD GRAPH PROBLEMS
Clique Decision Problem(CDP)
Consider F= (X1 V X2 V X3 ) Ʌ ( V V )
Graph G=(V,E) , V={ < X1, 1 > ,< X2, 1 >, < X3, 1 >,< ,2>,< ,2>,< ,2>}
NP-HARD GRAPH PROBLEMS
Clique Decision Problem(CDP)
1. CNF Satisfiability ≤ρ Clique
is NP- Hard
Consider F= (X1 V X2 V X3 ) Ʌ ( V V )
Graph G=(V,E) , V={ < X1, 1 > ,< X2, 1 >, < X3, 1 >,< ,2>,< ,2>,< ,2>}
A translation of an expression E
into the machine or assembly
language of a given machine is
optimal if and only if it has a
minimum number of
instructions
NP-HARD CODE GENERATION PROBLEMS
NP-HARD CODE GENERATION PROBLEMS
(a+b)/(c*d)
The minimum number of registers needed to evaluate this dag without any STOREs is two.
Tree Nodes
Leaf Nodes
NP-HARD CODE GENERATION PROBLEMS
n-1 tree
nodes
NP-HARD CODE GENERATION PROBLEMS
r4 value
should be
stored in
memory . So
that r3 can
LOAD it.
R1
NP-HARD CODE GENERATION PROBLEMS
R1 R2
NP-HARD CODE GENERATION PROBLEMS
R3 R1 R2
NP-HARD CODE GENERATION PROBLEMS
R4 R2
NP-HARD CODE GENERATION PROBLEMS
R5 R4 R2
NP-HARD CODE GENERATION PROBLEMS
R6 R4 R2
NP-HARD CODE GENERATION PROBLEMS
R7
R2
NP-HARD CODE GENERATION PROBLEMS
R7
R2 R8
NP-HARD CODE GENERATION PROBLEMS
R7
R9
R2
NP-HARD CODE GENERATION PROBLEMS
R7
R10
R2
NP-HARD CODE GENERATION PROBLEMS
t2 value
should be
stored in
memory . So
that s1 can
LOAD it.
R7
R10
R2 R11
NP-HARD CODE GENERATION PROBLEMS
R7
R10
R12
R2
NP-HARD CODE GENERATION PROBLEMS
R13
R7
R2
NP-HARD CODE GENERATION PROBLEMS
R13
R7
R1
4
NP-HARD CODE GENERATION PROBLEMS
R15 R13
R7
R1
4
NP-HARD CODE GENERATION PROBLEMS
R16 R13
R7
R1
4
NP-HARD CODE GENERATION PROBLEMS
R17
R13
R7
R1
4
NP-HARD CODE GENERATION PROBLEMS
R13
R7 R18
NP-HARD CODE GENERATION PROBLEMS
R19 R13
NP-HARD CODE GENERATION PROBLEMS
t2 value
should be
stored in
memory . So
that s1 can
LOAD it.
t2 value
should be
stored in
memory . So
R19 R13 that s1 can
LOAD it.
NP-HARD CODE GENERATION PROBLEMS