300 likes | 396 Views
“High Dimension CNF To DNF Conversion in Grid Computing”. Presented By: Mayuresh S. Pardeshi FY M.Tech CSE – 23.
E N D
“High Dimension CNF To DNF Conversion in Grid Computing” Presented By: Mayuresh S. Pardeshi FY M.Tech CSE – 23 Walchand College of Engineering, Sangli.
Contents • Introduction of Topic • Literature Survey I. GrADSAT II. DPLL SAT • Applications • Summary
I. GrADSAT : A Parallel SAT Solver for Grid • SAT • Concept • “Hard Problems” • Parallelization (PaSAT) • Techniques: i. Scalable distributed ii. Adaptive resource scheduling GrADS: Grid application development software.
Concepts: Literals, terms and clauses. CNF and DNF succinctly. CNF – DNF –
Functions CNF with m clauses with k literals converted to DNF with K m . dnfsize(f) and cnfsize(f) are fundamental complexity measures. Algorithm decides SAT of a CNF with n variables and m clauses in time mo(1)2cn .
Monotone case: f : {0,1}n -> {0,1} No. of prime clauses of f is equal to cnfsize(f) and prime implicants of f is equal to dnfsize(f). Vertex cover Blow-up when going from CNF to DNF is large:
2. Functions with large blow-up Functions with small cnfsize but large dnfsize. Functions with conjunction of small parity and majority functions. Lemma - to estimate cnfsize and dnfsize of such functions.
Corollary 1 Let 2n≤m≤2n-1. There is a function f with cnfsize(f) ≤ m and dnfsize(f)≥2[n-2n/log(m/n) ] Let 4n ≤ m ≤ (n / [n/2]). Then, there is a monotone function h with cnfsize(h) ≤ m and dnfsize(h) ≥ 2[n-nloglog(m/n) ]/log(m/n) – log(m/n) .
3. Upper Bounds and Blow-up Lemma-2: For all S c V and all boolean functions f with variable V, dnfsize(f) ≤ ΣpєRS ^V dnfsize(fp).
3.2 Small DNFs from Small CNFs Theorem 2: There is a constant c > 0, ST for all large n, and m є [104n,210^4n], dnfsize(m,n)≤ 2n-c[n/log(m/n)] .
Various algorithms: 1. CNF Algorithm: 1. Elimination of ! and $ by means of: • A $ B (A ! B) ^ (B ! A), • A ! B ¬A _ B 2. push ¬ inwards by means of (a) ¬(A ^ B) ¬A _ ¬B (De Morgan) (b) ¬(A _ B) ¬A ^ ¬B (De Morgan) (c) ¬¬A A (double negation) 3. use the distributive law A_(B^C) (A_B)^(A_C) to effect the conversation to CNF. 2. DNF Algorithm: 1.Use inverters to generate all possible literals (the six vertical wires on the left in Fig. 1). 2.Draw an AND gate for each minterm. The fan-in (number of inputs) of each AND gate is equal to the number of input variables. 3. Connect the outputs of all the AND gates to a single OR gate. 4. Connect the inputs of each AND gate to a pattern of literals in such a way that it will generate a 1 when the pattern of input values matches the particular minterm assigned to it.
3. Boole algorithm: Draw AND, OR, INVERTER implementation. First draw out an implementation of the booleanfunction using AND gates, OR gates and INVERTERS. Any implementation that uses only those three gate types will work. One way to implement a boolean function using AND's, OR's and INVERTERS is to build the DNF of the boolean function from the truth table that describes the function DNF, is also called Sum of Products form. Propositional Logic: Normal Forms gives a succinct treatment of normal forms and of how to go from a truth table to DNF. Apply DeMorgan's Law. Apply DeMorgan's Law to the circuit by using the equivalences in the first two rows of the Figure above. To create a NAND only circuit, use the transforms in the left box, and for a NOR only circuit use the transforms in the right-hand box. Remove redundant inverters: Any time that two inverters are in series (an inverted output goes directly in to an inverted input), remove both of them, since they cancel each other out. Replace remaining inverters. Replace any remaining inverters with the equivalent NAND or NOR implementation (the third row of the Figure).
4. Simplification Algorithm: 1. Evaluation of all vertices (computing weights). 2. Arrangement of all vertices into a hash table. 3. Selection of the most proper vertex for removal. 4. Removal of the selected vertex from the hash table and triangular mesh. 5. Removal of the surrounding triangles of the removed vertex. 6. Triangulation of an empty space; empty space is a consequence of removed triangles. 7. Reevaluation of neighbouring vertices of the removed vertex. 8. Rearrangement of reevaluated vertices in the hash table. Returning to step 3 until the final condition is reached. 5. K- Mean Algorithm: Place K points into the space represented by the objects that are being clustered. These points represent initial group centroids. Assign each object to the group that has the closest centroid. When all objects have been assigned, recalculate the positions of the K centroids. Repeat Steps 2 and 3 until the centroids no longer move. This produces a separation of the objects into groups from which the metric to be minimized can be calculated.
zChaff and GrADSAT : I. Partitioning a problem space. II. Sharing a learned clauses. III. GrADSAT Implementation.
Independent testbed of Grid • Degree of Sharing • Benchmarks: • - 22 industrial instances • - 15 random instances • Group of Clusters • Time-Out II. Experimental Setup and Results:
III. Results: Figure 2. Problems solved by zChaff and GrADSAT
II. Decision Heuristic for DPLL-SAT Solving Based on Cube Substraction. • Cube • Concept • zChaff solver with instances from DiMAC, IBM_CNF • Effective algorithm
DPLL: Well known NP-Complete Pruning Search Space VSIDS (Variable State Independent Decaying Sum) Berkmin Counter CBH (Clause Based Heuristic) D-Sharp Algorithm
II. Solving SAT using D-SHARP: De-Morgan’s Law to DNF
III. D-SHARP vs. DPLL: X1=0 X1=1 X2=0 X2=1 X3=-1 X3=0 X4=0 SEARCH SUBSPACE WHERE X1=1 Search subspace where x1=0 and x2=1
IV. Results: Table 1. Results on IBM_CNF BMC
Summary: As we have seen various concepts and research’s regarding CNF to DNF, we have concluded that the polynomials cannot process upto 5 to 10 variables. So we will be targetting to solve more than 10 variable conversion in parallel environment.
REFERENCES: • Global Grid Forum (http://www.ggf.org) • The Globus Alliance ( http://www.globus.org) • “The Physiology of the Grid”. Ian Foster, Carl Kesselman, Jeffrey M. Nick, Steven Tuecke. http://www.globus.org/research/papers/ogsa.pdf • “The Anatomy of the Grid”. Ian Foster, Carl Kesselman, Steven Tuecke. http://www.globus.org/research/papers/anatomy.pdf • Web Services Resource Framework - http://www.globus.org/wsrf/ • Wahid Chrabakh , Rich Wolski , “GrADSAT: A Parallel SAT Solver for the Grid”, UCSB Computer Science Technical Report Number 2003-05,Department of Computer Science, University of California Santa Barbara • R. Zuim, J.T. de Sousa and C.N. Coelho, “Decision heuristic for Davis Putnam, Loveland and Logemann algorithm satisfiability solving based on cube subtraction”, IET Comput. Digit. Tech., 2008, 2, (1), pp. 30–39