Docsity
Docsity

Prepare for your exams
Prepare for your exams

Study with the several resources on Docsity


Earn points to download
Earn points to download

Earn points by helping other students or get them with a premium plan


Guidelines and tips
Guidelines and tips

Combinatorial Algorithms: Unate and Binate Covering, Graph Coloring, and Maximum Clique, Slides of Computer Science

Various combinatorial algorithms, including unate and binate covering, graph coloring, and maximum clique. How these algorithms can be used to solve problems in logic synthesis and provides examples of their applications. The document also touches upon the relationship between these algorithms and descartes' method and boole's proposal.

Typology: Slides

2012/2013

Uploaded on 03/27/2013

agarkar
agarkar 🇮🇳

4.3

(26)

387 documents

1 / 31

Toggle sidebar

Related documents


Partial preview of the text

Download Combinatorial Algorithms: Unate and Binate Covering, Graph Coloring, and Maximum Clique and more Slides Computer Science in PDF only on Docsity! Combinatorial Algorithms Unate Covering Binate Covering Graph Coloring Maximum Clique Docsity.com Example • As an Example, let’s consider the formula: F(x,y,z) = x′y′z′ + x′yz′ + x′yz + xyz + xy′z′ • The complete sum of formula: F(x,y,z) = x′y + x′z′ + y′z′ + yz • Let P1 = x′y P2 = x′z′ P3 = y′z′ P4 = yz ⇒ F(x,y,z) = P1 + P2 + P3 + P4 • These are the subset of primes that satisfy the given requirement and are called SOP COVER or COVER. • To Solve the equation for the minimum cost that covers all rows, we express the above equations in matrix form and that matrix is called CONSTRAINT MATRIX. Docsity.com Defining Set Covering Problem • Definition: The Set Covering problem <X,Y,Cost> consists of finding a minimal cost subset of Y that covers X. Where X is a Set , Y ⊆ 2X and Cost is the Cost of function defined on Y. • The covering matrix associated with the set covering problem < X,Y,Cost > has rows labeled with elements of X and columns labeled with elements of Y , such that the element [x,y] of the matrix is equal to 1 iff y covers x, where x , y are the elements of set X and Y respectively. X Y Docsity.com Unate Covering and Binate Covering • In the constraint equation for example: (P1 + P2)( P2 + P3 ) (P1 + P4) P3 P4 = 1 • All the variables appear in positive form (Nocomplement)--- – We have a Unate function and the kind of problem is called Unate covering(UCP). • In the constraint equation for example: f(x1,x2,x3,x4) = (x1+x3+x4)*(x1+x2+x4)*(x2+x3+x4)*(x2+x3+x4) • All the variables appear in positive form and negative form ----- – We have a Binate function and the kind of problem is called Binate covering(BCP). Docsity.com Methods that simplify the solution of CP • For any problems in logic synthesis(2-Level or Multilevel minimization) the general steps required are: (i)Finding a table of all prime implicants. (ii) Form a covering matrix (PI vs Minterm) and solve the covering problem. • For solving covering problem various techniques and algorithms are used. • The Quine’s theorem helps us in finding a minimum cover that is prime!. Docsity.com Applications of Covering Problem (Unate or Binate) • The Covering problems(CP) (Unate or Binate) has several important applications in logic synthesis such as: • (i) 2-level minimization(Logic or Boolean relation). • (ii) Three level NAND implementation. • (iii)Three level CDEC minimization(Conditional decoder). • (iv) Minimum test set generation. • (v) Boolean and multiple -valued Decomposition. • (vi) Physical and technology mapping. • (vii) State minimization. • (viii) Exact encoding • (ix) DAG covering Docsity.com Example of Set covering Problem in Testing • Problem: Finding the minimum test set to detect all possible stuck-at faults in a circuit that has 3 lines, each line can be stuck-at-0 or stuck -at-1. • Assumption : The gate is an EX_OR gate. • Logic Diagram of Gate: A B a b c C Circuit Under Test Docsity.com Problem • Explanation of the circuit: The circuit has two input lines (A,B) and the output(C ). • Truth Table: A B a 0 a 1 b 0 b 1 c 0 c 1 C 0 0 0 1 0 1 0 1 0 0 1 1 0 0 1 0 1 1 1 0 0 1 1 0 0 1 1 1 1 1 0 1 0 0 1 0 Docsity.com Problem • The Best Covering! • Many solution are present which has the same cost. • Here we take the solution to be T0T1T2 which would detect all the stuck at faults in the circuit. Docsity.com Binate Covering Problem • Definition: The Binate Covering Problem(BCP) consists of finding a minimal cost n -tuple that values f to 1. • The covering matrix M of the binate covering problem is a matrix made of m rows labeled with the sum si, and of n columns labeled with the variables xj. • An element M[i,j] of the matrix is equal to 1 if (xi ⇒ si), to 0 if (xj ⇒ si) and to -- otherwise. • Initially the BCP was known as COVERING WITH CLOSURE in which there was a restrictive assumption that one literal at most appeared complemented in the clause of the function. Docsity.com Binate Covering Problem • The binate covering matrix is represented as for function (x1+x3+x4)(x1’+x2+x4’)(x2+x3’+x4)(x2’+x3+x4’) x1 x2 x3 x4 x1+x3+x4 1 - 1 1 x1+x2’+x4’ 0 1 - 0 x2+x3’+x4 - 1 0 1 x2’+x3+x4’ - 0 1 0 Docsity.com Binate Covering Problem • Unate Covering always has a solution whereas Binate covering may or may not have a solution . • For Example: (x1+x2)(x1+x2’)(x1’+x2)(x1’+x2’) if simplified represents a function that is identically zero. Hence the problem has no solution. Docsity.com Graph Coloring • A Graph G(V,E) consists of a set of nodes V and a set of edges E. • Graph Coloring: Is an assignment of colors to the vertices of G, one color to each vertex, so that adjacent vertices are assigned different colors. • Chromatic number : Minimum number of colors needed for coloring. • Given a graph G = (V,E) a subgraph H=(U,F) can be constructed by setting U subset of V and F subset of E. • A Clique is complete subgraph of G. Docsity.com Graph Coloring • A Clique is maximal size clique or maximal clique if is is not a subgraph of another clique. • Maximum Clique is a clique whose size is the largest possible. • There are two graph coloring problems: – Exact Program (EXOC) and – approximate program DOM. Docsity.com Graph Coloring • Definition 2: if the above conditions (i) and (ii) are true and A and B have the same number of nodes , then it is called Pseudo- covering. • If there is a pseudo covering any one of the nodes A and B can be removed. Docsity.com Example of Graph Coloring • Graph: 2 3 1 6 5 4 Docsity.com Example of Graph Coloring • In the given graph 1 dominates 3 and 3 can be removed. We are left with the graph whose nodes are 1,2,4,5,6. • 2 and 5 are pseudo covering nodes ⇒ 2 and 5 of same color. and 4 and 6 are pseudo covering nodes ⇒ 4 and 6 of same color. the final graph contains nodes 1,2,4. It is a complete graph and can be colored with 3 colors. and since 2 and 5 are pseudo nodes they are given same color 4 and 6 are pseudo nodes ⇒ 4,6 are of same color. 2 3 1 6 5 4 Docsity.com Conclusions • All the four combinatorial algorithms can be used in logic synthesis for minimization of a function, • These four methods can also be used to finding the column multiplicity in functional decomposition. • Graph coloring can be used for FSM minimization. Docsity.com What to learn? • How to see the possibility of using any of these problem formulations as parts of new problems from real life that may be given to you • Descartes formulated the method:“Every problem can be converted to a set of equations. Next the set can be converted to one equation and solved.” • Boole proposed to use this method to logic problems. • The Petrick function, tautology, satisfiability are special problems within the area of Boolean Equations. • These methods, based on tree branchings or solving algebraically formulas, can be extended to multiple-valued and other types of logic, they are very general. • It is more important to understand how to convert any problems to these combinational problems than to remember efficient algorithms. Efficient algorithms can be found in hundreds of books and software collections, many in public domain. • The covering, coloring, maximum clique and Boolean equations are used in hundreds of industrial and academic programs not only in logic synthesis but also in test, communication, computer networking, robotics, industrial applications, image processing and pattern recognition. They are also solved using mathematical programming, Genetic Algorithm and Artificial Intelligence techniques Docsity.com
Docsity logo



Copyright © 2024 Ladybird Srl - Via Leonardo da Vinci 16, 10126, Torino, Italy - VAT 10816460017 - All rights reserved