SlideShare a Scribd company logo
Minimization of
Switching Functions
Unit-II
Topics:
1. Karnaugh Map Method
2. Prime Implicants
3. Don’t Care Combinations
4. Minimal SOP and POS forms
5. Quine Mc Cluskey Tabular Method
6. Prime Implicant Chart
7. Simplification Rules
Simplifying Switching Functions
 SOP and POS expressions
==> 2-level circuits
Minimum SOP/POS expression:
 Minimize the number of literals
 Minimum number of terms
How?
 Algebraically: I.e. using the axioms and theorems of
Boolean algebra.
 Karnaugh Map
 McCluskey Method
Simplifying Switching Functions:
K-Map
Simplifying Theorem:
XY + X’Y = Y
Definition: Logical Adjacency
Two terms are logically adjacent if they differ in only one literal: the
literal is complemented in one term and non-complemented in the other.
Two Logically adjacent terms can be combined into one term consisting
of only the common literals
1. Karnaugh-Map (K-Map)
2-dimensional representation of a truth table.
Logically adjacent terms are physically adjacent in the map.
2-Variable Functions: F(X,Y) = XY + X’Y
X Y
0 0
0 1
1 0
1 1
F(X,Y)
m0
m1
m2
m3
2-Variable K-Map
X
Y
0 1
0
1
X
Y
0 1
0
1
00
01
10
11
X’Y’
X’Y
XY’
XY
Note:Note:
• Logically adjacent cells are
physically adjacent in the k-map
• Each cells has two adjacent cells
X
Y
0 1
0
1
m0 m2
m1 m3
Function Minimization Using K-Maps
1. Each square (minterm) in a k-map of 2 variables has 2 logically
adjacent squares, each square in a 3-variable k-map has 3
adjacent squares, etc.
2. Combine only the minterms for which the function is 1.
3. When combining terms on a k-map, group adjacent squares in
groups of powers of 2 (I.e. 2, 4, 8, etc.). Grouping two squares
eliminates one variables, grouping 4 squares eliminates 2
variables, etc.
 Can't combine a group of 3 minterms
Function Minimization Using K-Maps
4. Group as many squares together as possible; the larger the group is
the fewer the number of literals in the resulting product term
5. Select as few groups as possible to cover all the minterms of the
functions. A minterm is covered if it is included in at least one
group. Each minterm may be covered as many times as it is
needed; however, it must be covered at least once.
6. In combining squares on the map, always begin with those squares
for which there are the fewest number of adjacent squares (the
“loneliest" squares on the map).
2. Prime Implicants
Definitions:
 Implicant: a product term that could be used to cover one or more
minterms
 Prime Implicant: A product term obtained by combining the
maximum number of adjacent squares in the map.
 Essential Prime Implicant: A prime implicant that covers at least
one minterm that is not covered by any other prime implicant.
 All essential prime implicants must be included in the final
minimal expression.
Definitions (Cont.)
 Cover of function: is a set of prime implicants for which
each minterm of the function is covered by at least one
prime implicant.
 All essential prime implicants must be included in the
cover of a function.
3. Don’t care conditions
 In practice there are some applications where the function is not
specified for certain combinations of the variables.
 In most applications we simply don’t care what value is assumed by
the function for the unspecified min terms.
 It is customary to call the unspecified min terms of a function don’t-
care conditions.
 These don’t-care conditions can be used on a map to provide
further simplification of the Boolean Expression.
4. Algorithm for Deriving the
Minimal SOP
1. Circle all prime implicants on the k-map.
2. 2. Identify and select all essential prime implicants.
3. Select a minimum subset of the remaining prime implicants to cover
those minterms not covered by the essential prime implicants.
00 01
00
01
11
10
11 10
Four Variable K-map
ABC
DE
000 001
00
01
11
10
011 010 100 101 111 110
m16
m17
m19
m18
m20
m21
m23
m22
m28
m29
m31
m30
m24
m25
m27
m26
ABC
DE
00
01
11
10
m0
m1
m3
m2
m4
m5
m7
m6
m12
m13
m15
m14
m8
m9
m11
m10
Five Variable K-map
More Examples
Find min. SOP and POS expression for each of the
following functions
1. F(A,B,C,D) = Σ m(2,3,5,7,10,11,13,14,15)
2. G(W,X,Y,Z)= Π M(1,3,4,5,7)
3. H(A,B,C,D) = Σm(1,3,4,7,11)+d(5,12,13,14,15)
4. F2(A,B,C,D)= Σ m(1,2,7,12,15)+d(5,9,10,11,13)
5. F3(A,B,C,D,E) = Σ
m(0,1,2,4,5,6,13,15,16,18,22,24,26,29)
TabulationTabulation
MethodMethod
5. Tabulation Method
 Map method is a trial-and-error procedure
 Tabulation method performs thorough search
 It starts with SOM and consists of 2 steps:
 PIs generation
 group minterms by number of 1s
 compare minterms & find pairs that differ in 1 variable
 generate subcubes
 repeat the above 3 steps to generate subcubes until no more
subcubes can be generated
 Minimal cover generation
 find EPIs through a selection table
 find minimal cover through the POS of PIs
 K-map representation:
 PIs generation:
 0-subcubes
Example: simplify w’y’z’ + wz + xyz + w’y
00 01 11 10
00 1 0 1 1
01 1 0 1 1
11 0 1 1 0
10 0 1 1 0
yz
wx
 1-subcubes
 2-subcubes
Example: simplify w’y’z’ + wz + xyz + w’y (cont.)
 Minimal cover generation:
 EPIs selection
 PI list: w’z’, w’y, yz, wz
 EPI list: w’z’, wz
 POS: (P2 + P3)(P2 + P3) = P2 + P3
 Minimal cover expressions:
 F1 = w’z’ + wz + w’y
 F2 = w’z’ + wz + yz
Example: simplify w’y’z’ + wz + xyz + w’y (cont.)
 K-map representation:
 PIs generation:
 0-subcubes, 1-subcubes
Another example
00 01 11 10
00 0 0 0 1
01 0 0 1 1
11 0 1 1 0
10 1 1 0 0
yz
wx
 Minimal cover generation:
 EPIs selection
 PI list: w’yz’, x’y’z, w’xy, wx’z, xyz, wyz
 EPI list: w’yz’, x’y’z
 POS: (P3 + P5)(P4 + P6)(P5 + P6) =
(P3 + P5)(P4P5 + P5P6 + P4P6 + P6) =
P3P4P5 + P4P5 + P3P6 + P5P6
 Minimal cover expressions:
 F1 = w’yz’ + x’y’z + wx’z + xyz
 F2 = w’yz’ + x’y’z + w’xy + wyz
 F3 = w’yz’ + x’y’z + xyz + wyz
Another example (cont.)
EXAMPLE
f on
= {m0, m1, m2, m3, m5, m8, m10, m11, m13, m15} = ∑ (0, 1, 2, 3, 5, 8, 10, 11, 13,
15)
Minterm Cube
0 0 0 0 0 
1 0 0 0 1 
2 0 0 1 0 
8 1 0 0 0 
3 0 0 1 1 
5 0 1 0 1 
10 1 0 1 0 
11 1 0 1 1 
13 1 1 0 1 
15 1 1 1 1 
Minterm Cube
0,1 0 0 0 - 
0,2 0 0 - 0 
0,8 - 0 0 0 
1,3 0 0 - 1 
1,5 0 - 0 1 PI=D
2,3 0 0 1 - 
2,10 - 0 1 0 
8,10 1 0 - 0 
3,11 - 0 1 1 
5,13 - 1 0 1 PI=E
10,11 1 0 1 - 
11,15 1 - 1 1 PI=F
13,15 1 1 - 1 PI=G
Minterm Cube
0,1,2,3 0 0 - - PI=A
0,8,2,10 - 0 - 0 PI=C
2,3,10,11 - 0 1 - PI=B
f on
= {A,B,C,D,E,F,G} = {00--, -01-, -0-0, 0-01, -101, 1-11, 11-1}
6. Construct Cover Table
 PIs Along Vertical Axis (in order of # of literals)
 Minterms Along Horizontal Axis
0 1 2 3 5 8 10 11 13 15
A x x x x
B x x x x
C x x x x
D x x
E x x
F x x
G x x
Finding the Minimum Cover
 Extract All Essential Prime Implicants, EPI
 EPIs are the PI for which a Single x Appears in a Column
0 1 2 3 5 8 10 11 13 15
A x x x x
B x x x x
C x x x x
D x x
E x x
F x x
G x x
• C is an EPI .
• Row C and Columns 0, 2, 8, and 10 can be Eliminated
Giving Reduced Cover Table
• Examine Reduced Table for New EPIs
Reduced Table
0 1 2 3 5 8 10 11 13 15
A x x x x
B x x x x
C x x x x
D x x
E x x
F x x
G x x
1 3 5 11 13 15
A x x
B x x
D x x
E x x
F x x
G x x
Essential row
Distinguished Column
•The Row of an EPI is an
Essential row
•The Column of the Single x in
the Essential Row is a
Distinguished Column
The Reduced Cover Table
 Initially, Columns 0, 2, 8 and 10 Removed
1 3 5 11 13 15
A x x
B x x
D x x
E x x
F x x
G x x
• No EPIs are Present
• No Row Dominance Exists
• No Column Dominance Exists
• This is Cyclic Cover Table
• Must Solve Exactly OR Use a Heuristic
Unit 1(stld)

More Related Content

PPTX
Computability - Tractable, Intractable and Non-computable Function
PPTX
Booths algorithm for Multiplication
PPTX
Finite state machines
PPTX
Multiplexers
PPTX
Finite State Machine.ppt.pptx
PPTX
FSM and ASM
PPTX
Floating point representation
PPTX
Computer Organization and Architecture.pptx
Computability - Tractable, Intractable and Non-computable Function
Booths algorithm for Multiplication
Finite state machines
Multiplexers
Finite State Machine.ppt.pptx
FSM and ASM
Floating point representation
Computer Organization and Architecture.pptx

What's hot (20)

PPTX
Combinational circuits
PPT
Matlab Basic Tutorial
PPTX
DLD Lecture No 18 Analysis and Design of Combinational Circuit.pptx
PPTX
Greedy Algorithm - Knapsack Problem
PPTX
Matrix chain multiplication
PPTX
Knapsack problem using greedy approach
PPTX
Matlab ppt
PPTX
Architecture of 8085 microprocessor
PPT
boolean algebra and logic simplification
PPTX
Pumping lemma
PPTX
Verilog presentation final
PPTX
Unit 4-booth algorithm
PPTX
Design and Analysis of Algorithms.pptx
PPT
Arithmetic Logic Unit (ALU)
PPTX
Booth’s algorithm.(a014& a015)
PDF
UNIT-V.pdf daa unit material 5 th unit ppt
PPTX
Unit 3 combinational circuits
PPTX
Moore and mealy machine
PPTX
Microprocessor 8085 complete
PPT
EULER AND FERMAT THEOREM
Combinational circuits
Matlab Basic Tutorial
DLD Lecture No 18 Analysis and Design of Combinational Circuit.pptx
Greedy Algorithm - Knapsack Problem
Matrix chain multiplication
Knapsack problem using greedy approach
Matlab ppt
Architecture of 8085 microprocessor
boolean algebra and logic simplification
Pumping lemma
Verilog presentation final
Unit 4-booth algorithm
Design and Analysis of Algorithms.pptx
Arithmetic Logic Unit (ALU)
Booth’s algorithm.(a014& a015)
UNIT-V.pdf daa unit material 5 th unit ppt
Unit 3 combinational circuits
Moore and mealy machine
Microprocessor 8085 complete
EULER AND FERMAT THEOREM
Ad

Viewers also liked (15)

PPT
Karnaugh
DOC
STLD Unit 1
PPTX
Environment protection act
PPT
Unit 1(stld)
PPTX
Environment Protection Act
PPTX
Switching theory and logic design.
PPT
Environmental Pollution, protective measures of pollution
PPT
Use of water
PPT
Environmental Pollution and its control measures
PPTX
100 uses of water
PPTX
HOT SPOTS OF BIODIVERSITY
PPT
Environmental pollution control
DOCX
Water resource management
PPT
Water Resources Power Point Presentation
PPTX
The environmental (protection) act, 1986
Karnaugh
STLD Unit 1
Environment protection act
Unit 1(stld)
Environment Protection Act
Switching theory and logic design.
Environmental Pollution, protective measures of pollution
Use of water
Environmental Pollution and its control measures
100 uses of water
HOT SPOTS OF BIODIVERSITY
Environmental pollution control
Water resource management
Water Resources Power Point Presentation
The environmental (protection) act, 1986
Ad

Similar to Unit 1(stld) (20)

PPT
STLD- Switching functions
PPTX
PRINCIPLES OF COMBINATIONAL LOGIC-2
PPT
ECE 3rd_Unit No. 1_K-Map_DSD.ppt
PPTX
chapter3-Tacghmgc fu ftubular method DELETED.pptx
PPTX
quine mc cluskey method
PPTX
3aquine-mccluskeymethod-191016140548 (2)[1].pptx
PPT
Karnaugh maps
PDF
Digital electronics k map comparators and their function
PDF
Lecture6 Chapter3- Function Simplification using Quine-MacCluskey Method.pdf
PPT
Digital Logic design. Chapter 3, Karnaugh maps
PPT
Chapter-3.ppt
PPT
Minimization Technique .ppt
PDF
FYBSC IT Digital Electronics Unit II Chapter II Minterm, Maxterm and Karnaugh...
PPT
KARNAUGH MAP(K-MAP)
PDF
Chapter-3-INTRODUCTION TO LOGIC DESIGN .pdf
PPT
Principles of Combinational Logic-1
PDF
tabulation method.pdf
PPT
05 karnaugh maps
PPTX
De EE unit-2.pptx
PPTX
Karnaugh Map
STLD- Switching functions
PRINCIPLES OF COMBINATIONAL LOGIC-2
ECE 3rd_Unit No. 1_K-Map_DSD.ppt
chapter3-Tacghmgc fu ftubular method DELETED.pptx
quine mc cluskey method
3aquine-mccluskeymethod-191016140548 (2)[1].pptx
Karnaugh maps
Digital electronics k map comparators and their function
Lecture6 Chapter3- Function Simplification using Quine-MacCluskey Method.pdf
Digital Logic design. Chapter 3, Karnaugh maps
Chapter-3.ppt
Minimization Technique .ppt
FYBSC IT Digital Electronics Unit II Chapter II Minterm, Maxterm and Karnaugh...
KARNAUGH MAP(K-MAP)
Chapter-3-INTRODUCTION TO LOGIC DESIGN .pdf
Principles of Combinational Logic-1
tabulation method.pdf
05 karnaugh maps
De EE unit-2.pptx
Karnaugh Map

More from Abhinay Potlabathini (20)

DOCX
A11 microprocessors & microcontrollers (common to eee, ece and ecm)
DOC
A10 microprocessor & microcontrollers ( eee, ece & ecm )
DOC
A12 microprocessors & microcontrollers (common to eee & ecm)
DOC
A10 a11-microprocessor & microcontrollers (common to eee, ece & ecm)
PPTX
GME - Unit 1
PDF
Op amps-and-linear-integrated-circuits-pdf
PDF
Op-amp & its characteristics
PPT
Underground cables
PPTX
Underground cables (1)
PDF
Proximity effect
PDF
PDF
PPT
Coulombs law
PPT
PPT
maxwells equation
PPT
Emf applications
PPT
Magnetic circuits (EMF)
PPT
Poynting vector
PDF
electric field, (dipoles)
A11 microprocessors & microcontrollers (common to eee, ece and ecm)
A10 microprocessor & microcontrollers ( eee, ece & ecm )
A12 microprocessors & microcontrollers (common to eee & ecm)
A10 a11-microprocessor & microcontrollers (common to eee, ece & ecm)
GME - Unit 1
Op amps-and-linear-integrated-circuits-pdf
Op-amp & its characteristics
Underground cables
Underground cables (1)
Proximity effect
Coulombs law
maxwells equation
Emf applications
Magnetic circuits (EMF)
Poynting vector
electric field, (dipoles)

Unit 1(stld)

  • 2. Topics: 1. Karnaugh Map Method 2. Prime Implicants 3. Don’t Care Combinations 4. Minimal SOP and POS forms 5. Quine Mc Cluskey Tabular Method 6. Prime Implicant Chart 7. Simplification Rules
  • 3. Simplifying Switching Functions  SOP and POS expressions ==> 2-level circuits Minimum SOP/POS expression:  Minimize the number of literals  Minimum number of terms How?  Algebraically: I.e. using the axioms and theorems of Boolean algebra.  Karnaugh Map  McCluskey Method
  • 4. Simplifying Switching Functions: K-Map Simplifying Theorem: XY + X’Y = Y Definition: Logical Adjacency Two terms are logically adjacent if they differ in only one literal: the literal is complemented in one term and non-complemented in the other. Two Logically adjacent terms can be combined into one term consisting of only the common literals
  • 5. 1. Karnaugh-Map (K-Map) 2-dimensional representation of a truth table. Logically adjacent terms are physically adjacent in the map. 2-Variable Functions: F(X,Y) = XY + X’Y X Y 0 0 0 1 1 0 1 1 F(X,Y) m0 m1 m2 m3
  • 6. 2-Variable K-Map X Y 0 1 0 1 X Y 0 1 0 1 00 01 10 11 X’Y’ X’Y XY’ XY Note:Note: • Logically adjacent cells are physically adjacent in the k-map • Each cells has two adjacent cells X Y 0 1 0 1 m0 m2 m1 m3
  • 7. Function Minimization Using K-Maps 1. Each square (minterm) in a k-map of 2 variables has 2 logically adjacent squares, each square in a 3-variable k-map has 3 adjacent squares, etc. 2. Combine only the minterms for which the function is 1. 3. When combining terms on a k-map, group adjacent squares in groups of powers of 2 (I.e. 2, 4, 8, etc.). Grouping two squares eliminates one variables, grouping 4 squares eliminates 2 variables, etc.  Can't combine a group of 3 minterms
  • 8. Function Minimization Using K-Maps 4. Group as many squares together as possible; the larger the group is the fewer the number of literals in the resulting product term 5. Select as few groups as possible to cover all the minterms of the functions. A minterm is covered if it is included in at least one group. Each minterm may be covered as many times as it is needed; however, it must be covered at least once. 6. In combining squares on the map, always begin with those squares for which there are the fewest number of adjacent squares (the “loneliest" squares on the map).
  • 9. 2. Prime Implicants Definitions:  Implicant: a product term that could be used to cover one or more minterms  Prime Implicant: A product term obtained by combining the maximum number of adjacent squares in the map.  Essential Prime Implicant: A prime implicant that covers at least one minterm that is not covered by any other prime implicant.  All essential prime implicants must be included in the final minimal expression.
  • 10. Definitions (Cont.)  Cover of function: is a set of prime implicants for which each minterm of the function is covered by at least one prime implicant.  All essential prime implicants must be included in the cover of a function.
  • 11. 3. Don’t care conditions  In practice there are some applications where the function is not specified for certain combinations of the variables.  In most applications we simply don’t care what value is assumed by the function for the unspecified min terms.  It is customary to call the unspecified min terms of a function don’t- care conditions.  These don’t-care conditions can be used on a map to provide further simplification of the Boolean Expression.
  • 12. 4. Algorithm for Deriving the Minimal SOP 1. Circle all prime implicants on the k-map. 2. 2. Identify and select all essential prime implicants. 3. Select a minimum subset of the remaining prime implicants to cover those minterms not covered by the essential prime implicants.
  • 14. ABC DE 000 001 00 01 11 10 011 010 100 101 111 110 m16 m17 m19 m18 m20 m21 m23 m22 m28 m29 m31 m30 m24 m25 m27 m26 ABC DE 00 01 11 10 m0 m1 m3 m2 m4 m5 m7 m6 m12 m13 m15 m14 m8 m9 m11 m10 Five Variable K-map
  • 15. More Examples Find min. SOP and POS expression for each of the following functions 1. F(A,B,C,D) = Σ m(2,3,5,7,10,11,13,14,15) 2. G(W,X,Y,Z)= Π M(1,3,4,5,7) 3. H(A,B,C,D) = Σm(1,3,4,7,11)+d(5,12,13,14,15) 4. F2(A,B,C,D)= Σ m(1,2,7,12,15)+d(5,9,10,11,13) 5. F3(A,B,C,D,E) = Σ m(0,1,2,4,5,6,13,15,16,18,22,24,26,29)
  • 17. 5. Tabulation Method  Map method is a trial-and-error procedure  Tabulation method performs thorough search  It starts with SOM and consists of 2 steps:  PIs generation  group minterms by number of 1s  compare minterms & find pairs that differ in 1 variable  generate subcubes  repeat the above 3 steps to generate subcubes until no more subcubes can be generated  Minimal cover generation  find EPIs through a selection table  find minimal cover through the POS of PIs
  • 18.  K-map representation:  PIs generation:  0-subcubes Example: simplify w’y’z’ + wz + xyz + w’y 00 01 11 10 00 1 0 1 1 01 1 0 1 1 11 0 1 1 0 10 0 1 1 0 yz wx
  • 19.  1-subcubes  2-subcubes Example: simplify w’y’z’ + wz + xyz + w’y (cont.)
  • 20.  Minimal cover generation:  EPIs selection  PI list: w’z’, w’y, yz, wz  EPI list: w’z’, wz  POS: (P2 + P3)(P2 + P3) = P2 + P3  Minimal cover expressions:  F1 = w’z’ + wz + w’y  F2 = w’z’ + wz + yz Example: simplify w’y’z’ + wz + xyz + w’y (cont.)
  • 21.  K-map representation:  PIs generation:  0-subcubes, 1-subcubes Another example 00 01 11 10 00 0 0 0 1 01 0 0 1 1 11 0 1 1 0 10 1 1 0 0 yz wx
  • 22.  Minimal cover generation:  EPIs selection  PI list: w’yz’, x’y’z, w’xy, wx’z, xyz, wyz  EPI list: w’yz’, x’y’z  POS: (P3 + P5)(P4 + P6)(P5 + P6) = (P3 + P5)(P4P5 + P5P6 + P4P6 + P6) = P3P4P5 + P4P5 + P3P6 + P5P6  Minimal cover expressions:  F1 = w’yz’ + x’y’z + wx’z + xyz  F2 = w’yz’ + x’y’z + w’xy + wyz  F3 = w’yz’ + x’y’z + xyz + wyz Another example (cont.)
  • 23. EXAMPLE f on = {m0, m1, m2, m3, m5, m8, m10, m11, m13, m15} = ∑ (0, 1, 2, 3, 5, 8, 10, 11, 13, 15) Minterm Cube 0 0 0 0 0  1 0 0 0 1  2 0 0 1 0  8 1 0 0 0  3 0 0 1 1  5 0 1 0 1  10 1 0 1 0  11 1 0 1 1  13 1 1 0 1  15 1 1 1 1  Minterm Cube 0,1 0 0 0 -  0,2 0 0 - 0  0,8 - 0 0 0  1,3 0 0 - 1  1,5 0 - 0 1 PI=D 2,3 0 0 1 -  2,10 - 0 1 0  8,10 1 0 - 0  3,11 - 0 1 1  5,13 - 1 0 1 PI=E 10,11 1 0 1 -  11,15 1 - 1 1 PI=F 13,15 1 1 - 1 PI=G Minterm Cube 0,1,2,3 0 0 - - PI=A 0,8,2,10 - 0 - 0 PI=C 2,3,10,11 - 0 1 - PI=B f on = {A,B,C,D,E,F,G} = {00--, -01-, -0-0, 0-01, -101, 1-11, 11-1}
  • 24. 6. Construct Cover Table  PIs Along Vertical Axis (in order of # of literals)  Minterms Along Horizontal Axis 0 1 2 3 5 8 10 11 13 15 A x x x x B x x x x C x x x x D x x E x x F x x G x x
  • 25. Finding the Minimum Cover  Extract All Essential Prime Implicants, EPI  EPIs are the PI for which a Single x Appears in a Column 0 1 2 3 5 8 10 11 13 15 A x x x x B x x x x C x x x x D x x E x x F x x G x x • C is an EPI . • Row C and Columns 0, 2, 8, and 10 can be Eliminated Giving Reduced Cover Table • Examine Reduced Table for New EPIs
  • 26. Reduced Table 0 1 2 3 5 8 10 11 13 15 A x x x x B x x x x C x x x x D x x E x x F x x G x x 1 3 5 11 13 15 A x x B x x D x x E x x F x x G x x Essential row Distinguished Column •The Row of an EPI is an Essential row •The Column of the Single x in the Essential Row is a Distinguished Column
  • 27. The Reduced Cover Table  Initially, Columns 0, 2, 8 and 10 Removed 1 3 5 11 13 15 A x x B x x D x x E x x F x x G x x • No EPIs are Present • No Row Dominance Exists • No Column Dominance Exists • This is Cyclic Cover Table • Must Solve Exactly OR Use a Heuristic