SlideShare a Scribd company logo
1 of 26
K-MAP
TOOL
SOLVING EQUATIONS
MADE EASY…..
SUBMITTED BY
DEEPAK R

-

2SD08EE022
KUMAR PATIL

-

2SD08EE030
NAGAPPA D V
2SD08EE033

-
Problem statement
Development of an application
software called K-Map software tool
which gives the simplified Boolean
equation.
NEED TO SIMPLIFY EQUATIONS..?
prerequisite
• BOOLEAN ALGEBRA-

Boolean algebra is formal

way to express digital

logic equations and to represent a logical design in an
alpha-numeric way. It is a language of 0’s and 1’s.
• A Boolean function is an expression formed with
binary variables which makes use of logic gates based

on Boolean algebra
e.g.F1=xyz’ where F1=1 only if x=1,y=1,z=0
Sum-of-products form
(SOP)
•

– first

the product(AND)
terms are formed then
these are summed(OR)
– e.g.: ABC + DEF + GHI

Product-of-sum form
(POS)
•

– first the sum (OR) terms are formed then
are taken (AND)
– e.g.: (A+B+C) (D+E+F) (G+H+I)

the products

It is possible to convert between these two forms
using Boolean algebra (DeMorgan’s Laws)
•
Minimization by Karnaugh Map
The Karnaugh map is a theoretical method for
the simplification of any Boolean expressions
regardless of its number of variables.
It provides simple straightforward approach for
minimizing Boolean functions.

It either regarded as pictorial form of truth
table or as an extension of the Venn diagram.
Example: Let’s do this in relation to the 3input example
S A B

Y

0

0 0

0

0

0 1

0

0

1 0

1

0

1 1

1

1

0 0

0

1

0 1

1

1

1 0

0

1

1 1

1

result: Y = S.B + S’.A
Architectural design
main ( )
read
input
validate
input

derive
truth
table

generate
k-map

solve kmap

solve for
2 var

solve for
3 var

display
solve for
4 var

2var

quad

octet

1

3var

pair

quad

octet

4var

pair

quad
pair
Algorithm

int read input ()

// Input : No of variable n , Input
// Output : Formation Of Input Truth Table Array
{
step1:

read the no of variables
if it is 2, 3 or 4
go to step 2

step2:

read the type of input

case 1:
if minterm with literals
check validity of input
if valid form the input array
case 2:
if maxterm with literals
check validity of input
if valid form the input array
case 3:

if minterm with truth table values
check validity of input
if valid form the input array

case 4:

if maxterm with truth table values
check validity of input

if valid form the input array
} // end of Read Input
Algorithm

int

formKmap

(int n)

// input : no of variable (n) , Integer array input[2^n ]
//output : two dimensional matrix say
//Forms the k map depending on the type of input
{

k=0;
for (i=0;i < no. of rows ;i++)
for (j=0;j < no. of columns; j++)
{

k mat [ i ][ j ] = min[k];
k++;

}
if n is 3
Swap the columns 3 & 4 in the k mat
if n is 4
Swap the columns 3 & 4 and rows 3 and 4 in the k mat
} // end of form K-map
SolveKmap (k mat [ ][ ],n )
// input : no of variable (n) , k mat
// calls other functions depending on value of n
{

if n is 2
solve2var (k mat [ ][ ])
if n is 3

solve3var (k mat [ ][ ])
if n is 4
solve4var (k mat [ ][ ])
} // end
Algorithm

solve2var(k mat [ ][ ] )

// input : no of variable (n) , k_mat
// solves the given k_mat with n=2 and calls display function

{
check for all ones in k mat
if

True

push 1 to the linked list

else if
the group formed is in pairs then send the
group value to the list
else if

}

only one variable in the matrix is one then send
its group value to the list.

Display();
Algorithm

solve3var (k_mat [ ][ ])

// input : no of variable (n) , k mat
// solves the given k mat with n=2 and calls display function
{
check for all k mat [ i ] [ j ] =1
if true

o list.Push_front (1);
set all flag [ i ] [ j ] =1;
else

Quad;

Pair;
Single;
}

Display ( );
Algorithm

solve4var (k_mat [ ][ ])

// input : no of variable (n) , k_mat
// solves the given k_mat with n=2 and calls display function
{
check for all k mat [ i ] [ j ] =1
if true
o_list.Push_front (1);

set all flag [ i ] [ j ] as 1;
else

Octet;
Quad;

Pair ;
Single ;
Display ( );

} // end
Algorithm

Octet (k_mat , flag)

// input : no of variable (n) , k_mat
// find the respective quad and push its group value to the O_list
{
for (i=0;i < 4 ;i++)
for (j=0;j < 4; j++)
{

if ( k_mat [ i ][ j ] = 1 && flag [ i ] [ j ] =0)
{
search for a octet
if exist
//push the respective group value
outeq ( i, j);

set all positions in the flag matrix as 1
}
}
} // end of octet
Algorithm

Quad (k_mat , flag)

// input : K_mat , flag
// find the respective quad and push its group value to the O_list
{
for (i=0;i < 4 ;i++)
for (j=0;j < 4; j++)
{

if ( k_mat [ i ][ j ] = 1 && flag [ i ] [ j ] =0)
{
search for a Quad
if exist
push the respective group value

set all positions in the flag matrix as 1
}
}
} // end of Quad
Algorithm

Pair (k_mat , flag)

// input : K_mat , flag
// find the respective Pair and push its group value to the O_list
{
for (i=0;i < 4;i++)
for (j=0;j < 4; j++)
{

if ( k_mat[ i][ j ] = 1 && flag [ i ] [ j ] =0)
{
find a adjacent one
push the respective group value
set all positions in the flag matrix as 1

}
}
} // end of Pair
application
Tool can be a part of sequential circuit designing software.
Aids to practical method of designing sequential circuits with
multi input.
It can be included in systems which involve in process of
simplifying expressions frequently.
The tool can be incorporated in educational fields as in by
the text book designers, staff and students themselves to
verify their answers.
conclusion
 K-Tool can be used for reducing Boolean expressions.
 User specified Boolean expression is converted
to is simpler form through various stages.
 User is able to get output for 2,3,4 variable
CONCLUSION
equations
 Input is processed in various different forms of
input to achieve simplicity

 Its a tool for deductive reasoning in designing
logic circuits and machines

digital
FUTURE SCOPE
 Tool can be extended to handle more number of
variables.
 Tool can be modified to handle DON’T CARE
conditions.
 Can be enhanced to obtain possible alternate
solutions.
 The gate implementation of the input and output
equations can be shown for comparison.
REFERENCES
Books:
Digital Fundamentals -Thomas L. Floyd
Digital Principles and Applications -Albert Paul Malvino and
Donald P. Leach

Digital Logic and Computer Design -M. Morris Mano

Website:

http://en.wikipedia.org/wiki/Karnaugh_map
Any queries…??
Thank
you..

More Related Content

What's hot

Kmap..(karnaugh map)
Kmap..(karnaugh map)Kmap..(karnaugh map)
Kmap..(karnaugh map)Zain Jafri
 
Combinational circuits
Combinational circuits Combinational circuits
Combinational circuits DrSonali Vyas
 
KARNAUGH MAP(K-MAP)
KARNAUGH MAP(K-MAP)KARNAUGH MAP(K-MAP)
KARNAUGH MAP(K-MAP)mihir jain
 
Half adder & full adder
Half adder & full adderHalf adder & full adder
Half adder & full adderGaditek
 
Types of flip flops ppt
Types of flip flops pptTypes of flip flops ppt
Types of flip flops pptViraj Shah
 
Combinational Circuits & Sequential Circuits
Combinational Circuits & Sequential CircuitsCombinational Circuits & Sequential Circuits
Combinational Circuits & Sequential Circuitsgourav kottawar
 
DIGITAL ELECTRONICS- Logic Gates
DIGITAL ELECTRONICS- Logic GatesDIGITAL ELECTRONICS- Logic Gates
DIGITAL ELECTRONICS- Logic GatesTrinity Dwarka
 
Digital logic gates and Boolean algebra
Digital logic gates and Boolean algebraDigital logic gates and Boolean algebra
Digital logic gates and Boolean algebraSARITHA REDDY
 
BOOLEAN ALGEBRA AND LOGIC GATE
BOOLEAN ALGEBRA AND LOGIC GATE BOOLEAN ALGEBRA AND LOGIC GATE
BOOLEAN ALGEBRA AND LOGIC GATE Tamim Tanvir
 
Bcd to excess 3 code converter
Bcd to excess 3 code converterBcd to excess 3 code converter
Bcd to excess 3 code converterUshaswini Chowdary
 
Lec 04 - Gate-level Minimization
Lec 04 - Gate-level MinimizationLec 04 - Gate-level Minimization
Lec 04 - Gate-level MinimizationVajira Thambawita
 
decoder and encoder
 decoder and encoder decoder and encoder
decoder and encoderUnsa Shakir
 
Vector calculus
Vector calculusVector calculus
Vector calculusKumar
 
Digital Logic & Design (DLD) presentation
Digital Logic & Design (DLD) presentationDigital Logic & Design (DLD) presentation
Digital Logic & Design (DLD) presentationfoyez ahammad
 

What's hot (20)

Kmap..(karnaugh map)
Kmap..(karnaugh map)Kmap..(karnaugh map)
Kmap..(karnaugh map)
 
KMAP
KMAPKMAP
KMAP
 
Combinational circuits
Combinational circuits Combinational circuits
Combinational circuits
 
Multiplexers
MultiplexersMultiplexers
Multiplexers
 
Introduction of digital system
Introduction of digital systemIntroduction of digital system
Introduction of digital system
 
KARNAUGH MAP(K-MAP)
KARNAUGH MAP(K-MAP)KARNAUGH MAP(K-MAP)
KARNAUGH MAP(K-MAP)
 
Half adder & full adder
Half adder & full adderHalf adder & full adder
Half adder & full adder
 
Types of flip flops ppt
Types of flip flops pptTypes of flip flops ppt
Types of flip flops ppt
 
Combinational Circuits & Sequential Circuits
Combinational Circuits & Sequential CircuitsCombinational Circuits & Sequential Circuits
Combinational Circuits & Sequential Circuits
 
DIGITAL ELECTRONICS- Logic Gates
DIGITAL ELECTRONICS- Logic GatesDIGITAL ELECTRONICS- Logic Gates
DIGITAL ELECTRONICS- Logic Gates
 
Combinational Logic Circuits
Combinational Logic CircuitsCombinational Logic Circuits
Combinational Logic Circuits
 
Digital logic gates and Boolean algebra
Digital logic gates and Boolean algebraDigital logic gates and Boolean algebra
Digital logic gates and Boolean algebra
 
BOOLEAN ALGEBRA AND LOGIC GATE
BOOLEAN ALGEBRA AND LOGIC GATE BOOLEAN ALGEBRA AND LOGIC GATE
BOOLEAN ALGEBRA AND LOGIC GATE
 
Bcd to excess 3 code converter
Bcd to excess 3 code converterBcd to excess 3 code converter
Bcd to excess 3 code converter
 
BOOLEAN ALGEBRA & LOGIC GATE
BOOLEAN ALGEBRA & LOGIC GATEBOOLEAN ALGEBRA & LOGIC GATE
BOOLEAN ALGEBRA & LOGIC GATE
 
Lec 04 - Gate-level Minimization
Lec 04 - Gate-level MinimizationLec 04 - Gate-level Minimization
Lec 04 - Gate-level Minimization
 
decoder and encoder
 decoder and encoder decoder and encoder
decoder and encoder
 
Vector calculus
Vector calculusVector calculus
Vector calculus
 
Digital Logic & Design (DLD) presentation
Digital Logic & Design (DLD) presentationDigital Logic & Design (DLD) presentation
Digital Logic & Design (DLD) presentation
 
Logic Gates
Logic GatesLogic Gates
Logic Gates
 

Viewers also liked

Viewers also liked (20)

Karnaugh Mapping Explained
Karnaugh Mapping ExplainedKarnaugh Mapping Explained
Karnaugh Mapping Explained
 
Karnaugh map
Karnaugh mapKarnaugh map
Karnaugh map
 
Karnaugh Graph or K-Map
Karnaugh Graph or K-MapKarnaugh Graph or K-Map
Karnaugh Graph or K-Map
 
Karnaugh Maps
Karnaugh MapsKarnaugh Maps
Karnaugh Maps
 
Basics of K map
Basics of K mapBasics of K map
Basics of K map
 
Kmap Slideshare
Kmap SlideshareKmap Slideshare
Kmap Slideshare
 
K-map method
K-map methodK-map method
K-map method
 
Karnaugh Map
Karnaugh MapKarnaugh Map
Karnaugh Map
 
Karnaugh maps
Karnaugh mapsKarnaugh maps
Karnaugh maps
 
K-Map Solver Circuit
K-Map Solver CircuitK-Map Solver Circuit
K-Map Solver Circuit
 
KARNAUGH MAP using OpenGL (KMAP)
KARNAUGH MAP using OpenGL (KMAP)KARNAUGH MAP using OpenGL (KMAP)
KARNAUGH MAP using OpenGL (KMAP)
 
The Karnaugh Map
The Karnaugh MapThe Karnaugh Map
The Karnaugh Map
 
K Map Simplification
K Map SimplificationK Map Simplification
K Map Simplification
 
SEQUENTIAL AND COMBINATIONAL CIRCUITS,DIGITAL LOGIC DESIGN
SEQUENTIAL AND COMBINATIONAL CIRCUITS,DIGITAL LOGIC DESIGNSEQUENTIAL AND COMBINATIONAL CIRCUITS,DIGITAL LOGIC DESIGN
SEQUENTIAL AND COMBINATIONAL CIRCUITS,DIGITAL LOGIC DESIGN
 
Sequential circuits in digital logic design
Sequential circuits in digital logic designSequential circuits in digital logic design
Sequential circuits in digital logic design
 
Boolean algebra
Boolean algebraBoolean algebra
Boolean algebra
 
Seminar on polymorphism
Seminar on polymorphismSeminar on polymorphism
Seminar on polymorphism
 
CBSE XII Boolean Algebra
CBSE XII Boolean AlgebraCBSE XII Boolean Algebra
CBSE XII Boolean Algebra
 
Karnaugh maps
Karnaugh mapsKarnaugh maps
Karnaugh maps
 
KARNAUGH MAPS
KARNAUGH MAPSKARNAUGH MAPS
KARNAUGH MAPS
 

Similar to K map

Python High Level Functions_Ch 11.ppt
Python High Level Functions_Ch 11.pptPython High Level Functions_Ch 11.ppt
Python High Level Functions_Ch 11.pptAnishaJ7
 
The concept of stack is extremely important in computer science and .pdf
The concept of stack is extremely important in computer science and .pdfThe concept of stack is extremely important in computer science and .pdf
The concept of stack is extremely important in computer science and .pdfarihantsherwani
 
A brief introduction to apply functions
A brief introduction to apply functionsA brief introduction to apply functions
A brief introduction to apply functionsNIKET CHAURASIA
 
chapter1.ppt
chapter1.pptchapter1.ppt
chapter1.pptebinazer1
 
Introduction to Data Science With R Lab Record
Introduction to Data Science With R Lab RecordIntroduction to Data Science With R Lab Record
Introduction to Data Science With R Lab RecordLakshmi Sarvani Videla
 
The what over the how (another way on android development with kotlin)
The what over the how (another way on android development with kotlin)The what over the how (another way on android development with kotlin)
The what over the how (another way on android development with kotlin)Jose Manuel Pereira Garcia
 
Computer Science CS Project Matrix CBSE Class 12th XII .pdf
Computer Science CS Project Matrix CBSE Class 12th XII .pdfComputer Science CS Project Matrix CBSE Class 12th XII .pdf
Computer Science CS Project Matrix CBSE Class 12th XII .pdfPranavAnil9
 
Functional Programming You Already Know - Kevlin Henney - Codemotion Rome 2015
Functional Programming You Already Know - Kevlin Henney - Codemotion Rome 2015Functional Programming You Already Know - Kevlin Henney - Codemotion Rome 2015
Functional Programming You Already Know - Kevlin Henney - Codemotion Rome 2015Codemotion
 
14-sorting (3).ppt
14-sorting (3).ppt14-sorting (3).ppt
14-sorting (3).pptyasser3omr
 
Problem solving using computers - Unit 1 - Study material
Problem solving using computers - Unit 1 - Study materialProblem solving using computers - Unit 1 - Study material
Problem solving using computers - Unit 1 - Study materialTo Sum It Up
 

Similar to K map (20)

Python High Level Functions_Ch 11.ppt
Python High Level Functions_Ch 11.pptPython High Level Functions_Ch 11.ppt
Python High Level Functions_Ch 11.ppt
 
The concept of stack is extremely important in computer science and .pdf
The concept of stack is extremely important in computer science and .pdfThe concept of stack is extremely important in computer science and .pdf
The concept of stack is extremely important in computer science and .pdf
 
A brief introduction to apply functions
A brief introduction to apply functionsA brief introduction to apply functions
A brief introduction to apply functions
 
chapter1.ppt
chapter1.pptchapter1.ppt
chapter1.ppt
 
Chap05alg
Chap05algChap05alg
Chap05alg
 
Chap05alg
Chap05algChap05alg
Chap05alg
 
Introduction to Data Science With R Lab Record
Introduction to Data Science With R Lab RecordIntroduction to Data Science With R Lab Record
Introduction to Data Science With R Lab Record
 
The what over the how (another way on android development with kotlin)
The what over the how (another way on android development with kotlin)The what over the how (another way on android development with kotlin)
The what over the how (another way on android development with kotlin)
 
Array
ArrayArray
Array
 
Array
ArrayArray
Array
 
Computer Science CS Project Matrix CBSE Class 12th XII .pdf
Computer Science CS Project Matrix CBSE Class 12th XII .pdfComputer Science CS Project Matrix CBSE Class 12th XII .pdf
Computer Science CS Project Matrix CBSE Class 12th XII .pdf
 
Functional Programming You Already Know - Kevlin Henney - Codemotion Rome 2015
Functional Programming You Already Know - Kevlin Henney - Codemotion Rome 2015Functional Programming You Already Know - Kevlin Henney - Codemotion Rome 2015
Functional Programming You Already Know - Kevlin Henney - Codemotion Rome 2015
 
14-sorting.ppt
14-sorting.ppt14-sorting.ppt
14-sorting.ppt
 
14-sorting (3).ppt
14-sorting (3).ppt14-sorting (3).ppt
14-sorting (3).ppt
 
14-sorting.ppt
14-sorting.ppt14-sorting.ppt
14-sorting.ppt
 
14-sorting.ppt
14-sorting.ppt14-sorting.ppt
14-sorting.ppt
 
Matlab1
Matlab1Matlab1
Matlab1
 
Programming
ProgrammingProgramming
Programming
 
algorithm Unit 3
algorithm Unit 3algorithm Unit 3
algorithm Unit 3
 
Problem solving using computers - Unit 1 - Study material
Problem solving using computers - Unit 1 - Study materialProblem solving using computers - Unit 1 - Study material
Problem solving using computers - Unit 1 - Study material
 

Recently uploaded

"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESmohitsingh558521
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 

Recently uploaded (20)

"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 

K map

  • 2. SUBMITTED BY DEEPAK R - 2SD08EE022 KUMAR PATIL - 2SD08EE030 NAGAPPA D V 2SD08EE033 -
  • 3. Problem statement Development of an application software called K-Map software tool which gives the simplified Boolean equation.
  • 4. NEED TO SIMPLIFY EQUATIONS..?
  • 5. prerequisite • BOOLEAN ALGEBRA- Boolean algebra is formal way to express digital logic equations and to represent a logical design in an alpha-numeric way. It is a language of 0’s and 1’s. • A Boolean function is an expression formed with binary variables which makes use of logic gates based on Boolean algebra e.g.F1=xyz’ where F1=1 only if x=1,y=1,z=0
  • 6. Sum-of-products form (SOP) • – first the product(AND) terms are formed then these are summed(OR) – e.g.: ABC + DEF + GHI Product-of-sum form (POS) • – first the sum (OR) terms are formed then are taken (AND) – e.g.: (A+B+C) (D+E+F) (G+H+I) the products It is possible to convert between these two forms using Boolean algebra (DeMorgan’s Laws) •
  • 7. Minimization by Karnaugh Map The Karnaugh map is a theoretical method for the simplification of any Boolean expressions regardless of its number of variables. It provides simple straightforward approach for minimizing Boolean functions. It either regarded as pictorial form of truth table or as an extension of the Venn diagram.
  • 8. Example: Let’s do this in relation to the 3input example S A B Y 0 0 0 0 0 0 1 0 0 1 0 1 0 1 1 1 1 0 0 0 1 0 1 1 1 1 0 0 1 1 1 1 result: Y = S.B + S’.A
  • 9. Architectural design main ( ) read input validate input derive truth table generate k-map solve kmap solve for 2 var solve for 3 var display solve for 4 var 2var quad octet 1 3var pair quad octet 4var pair quad pair
  • 10.
  • 11. Algorithm int read input () // Input : No of variable n , Input // Output : Formation Of Input Truth Table Array { step1: read the no of variables if it is 2, 3 or 4 go to step 2 step2: read the type of input case 1: if minterm with literals check validity of input if valid form the input array case 2: if maxterm with literals check validity of input if valid form the input array
  • 12. case 3: if minterm with truth table values check validity of input if valid form the input array case 4: if maxterm with truth table values check validity of input if valid form the input array } // end of Read Input
  • 13. Algorithm int formKmap (int n) // input : no of variable (n) , Integer array input[2^n ] //output : two dimensional matrix say //Forms the k map depending on the type of input { k=0; for (i=0;i < no. of rows ;i++) for (j=0;j < no. of columns; j++) { k mat [ i ][ j ] = min[k]; k++; } if n is 3 Swap the columns 3 & 4 in the k mat if n is 4 Swap the columns 3 & 4 and rows 3 and 4 in the k mat } // end of form K-map
  • 14. SolveKmap (k mat [ ][ ],n ) // input : no of variable (n) , k mat // calls other functions depending on value of n { if n is 2 solve2var (k mat [ ][ ]) if n is 3 solve3var (k mat [ ][ ]) if n is 4 solve4var (k mat [ ][ ]) } // end
  • 15. Algorithm solve2var(k mat [ ][ ] ) // input : no of variable (n) , k_mat // solves the given k_mat with n=2 and calls display function { check for all ones in k mat if True push 1 to the linked list else if the group formed is in pairs then send the group value to the list else if } only one variable in the matrix is one then send its group value to the list. Display();
  • 16. Algorithm solve3var (k_mat [ ][ ]) // input : no of variable (n) , k mat // solves the given k mat with n=2 and calls display function { check for all k mat [ i ] [ j ] =1 if true o list.Push_front (1); set all flag [ i ] [ j ] =1; else Quad; Pair; Single; } Display ( );
  • 17. Algorithm solve4var (k_mat [ ][ ]) // input : no of variable (n) , k_mat // solves the given k_mat with n=2 and calls display function { check for all k mat [ i ] [ j ] =1 if true o_list.Push_front (1); set all flag [ i ] [ j ] as 1; else Octet; Quad; Pair ; Single ; Display ( ); } // end
  • 18. Algorithm Octet (k_mat , flag) // input : no of variable (n) , k_mat // find the respective quad and push its group value to the O_list { for (i=0;i < 4 ;i++) for (j=0;j < 4; j++) { if ( k_mat [ i ][ j ] = 1 && flag [ i ] [ j ] =0) { search for a octet if exist //push the respective group value outeq ( i, j); set all positions in the flag matrix as 1 } } } // end of octet
  • 19. Algorithm Quad (k_mat , flag) // input : K_mat , flag // find the respective quad and push its group value to the O_list { for (i=0;i < 4 ;i++) for (j=0;j < 4; j++) { if ( k_mat [ i ][ j ] = 1 && flag [ i ] [ j ] =0) { search for a Quad if exist push the respective group value set all positions in the flag matrix as 1 } } } // end of Quad
  • 20. Algorithm Pair (k_mat , flag) // input : K_mat , flag // find the respective Pair and push its group value to the O_list { for (i=0;i < 4;i++) for (j=0;j < 4; j++) { if ( k_mat[ i][ j ] = 1 && flag [ i ] [ j ] =0) { find a adjacent one push the respective group value set all positions in the flag matrix as 1 } } } // end of Pair
  • 21. application Tool can be a part of sequential circuit designing software. Aids to practical method of designing sequential circuits with multi input. It can be included in systems which involve in process of simplifying expressions frequently. The tool can be incorporated in educational fields as in by the text book designers, staff and students themselves to verify their answers.
  • 22. conclusion  K-Tool can be used for reducing Boolean expressions.  User specified Boolean expression is converted to is simpler form through various stages.  User is able to get output for 2,3,4 variable CONCLUSION equations  Input is processed in various different forms of input to achieve simplicity  Its a tool for deductive reasoning in designing logic circuits and machines digital
  • 23. FUTURE SCOPE  Tool can be extended to handle more number of variables.  Tool can be modified to handle DON’T CARE conditions.  Can be enhanced to obtain possible alternate solutions.  The gate implementation of the input and output equations can be shown for comparison.
  • 24. REFERENCES Books: Digital Fundamentals -Thomas L. Floyd Digital Principles and Applications -Albert Paul Malvino and Donald P. Leach Digital Logic and Computer Design -M. Morris Mano Website: http://en.wikipedia.org/wiki/Karnaugh_map