SAT BASED ALGORITHMIC APPROACH FOR SUDOKU PUZZLE

Size: px
Start display at page:

Download "SAT BASED ALGORITHMIC APPROACH FOR SUDOKU PUZZLE"

Transcription

1 International Journal of Computer Engineering & Technology (IJCET) Volume 9, Issue 6, November-December 2018, pp , Article ID: IJCET_09_06_005 Available online at Journal Impact Factor (2016): (Calculated by GISI) ISSN Print: and ISSN Online: IAEME Publication SAT BASED ALGORITHMIC APPROACH FOR SUDOKU PUZZLE Deepika Rai Assistant Professor, School of Computer Science, IT Devi Ahilya Vishwavidyalaya, Indore, India N.S. Chaudhari Professor, Computer Science & Engineering, IIT, Indore, India Maya Ingle Sr. System Analyst, School of Computer Science and IT, Devi Ahilya Vishwavidyalaya, Indore, India ABSTRACT In theoretical computer science, Sudoku puzzle has always grappled its importance since it is an NP-complete problem. Most of the existing algorithms are exponential for large instances of Sudoku puzzle. In this paper, we present an efficient approach for Sudoku puzzle in which constraints of Sudoku puzzle are encoded into SAT clauses and subsequently encoded into 3-SAT clauses. 3-SAT formulation of Sudoku puzzle (n n) is very advantageous to obtain the solution of Sudoku puzzle using SAT solver. In this way, we design two algorithms SP 2 SAT and SP 2 3SAT that generate SAT clauses and 3-SAT clauses respectively in polynomial time. Algorithm I: SP 2 SAT generates total [ * (3n 2 3n + 2) + m] SAT clauses corresponding to Sudoku puzzle of size (n n). On the other hand, Algorithm II: SP 2 3SAT creates total [ * (3n 2 n 4) + m] 3-SAT clauses corresponding to SAT clauses. Our approach provides an efficient way to obtain the solution of Sudoku puzzle as it produces fewer number of 3-SAT clauses than existing approach. Key words: Conjunctive Normal Form, NP-Complete Problem, Polynomial Time, 3- SAT, Sudoku Puzzle. Cite this Article: Deepika Rai, N.S. Chaudhari and Maya Ingle, SAT Based Algorithmic Approach for Sudoku Puzzle. International Journal of Computer Engineering and Technology, 9(6), 2018, pp editor@iaeme.com

2 Deepika Rai, N.S. Chaudhari and Maya Ingle 1. INTRODUCTION Many problems such as software and hardware verification, automatic test-pattern generation, graph problems, combinational equivalence checking, scheduling, planning in artificial intelligence etc. have been represented in terms of SAT, in last two decades [1]. In recent years, several difficult problems in diversified domains are encoded into SAT to obtain the solution using SAT solver. As an example, n-fraction puzzle has been encoded as a SAT problem and obtained the solution of two open instances of this puzzle by using SAT solver [2]. Planning problem can also be modeled as SAT which is more accurate approach than deduction approach. SAT approach provides more flexible framework for constraint based planning system [3]. Also, detection of Hardware Trojan Horses (HTH) is done by Automatic Test Pattern Generation (ATPG) technique which is based on Genetic Algorithm and Boolean Satisfiability. This technique has been achieved higher detection than existing logic testing based Trojan detection technique [4]. On the other hand, large number of NP-complete problems are reduced into 3-SAT in polynomial time and solved by SAT solver. Some of these are channel assignment problem in cellular network, graph coloring problem, determining cliques and vertex cover for particular graph etc. [5][6][7]. Additionally, Sudoku puzzle (n n) is a numerical combinatorial puzzle which is also an NP-complete problem. There exist many approaches for the solution of Sudoku puzzle such as stochastic search, genetic algorithms, backtracking algorithms, integer linear programming etc. Aforementioned approaches can be used to solve Sudoku puzzle only for small value of n [8][9][10]. Due to NP-completeness of Sudoku puzzle, it can be represented in terms of 3-SAT to acquire the solution. There exists an exact 3-SAT encoding of Sudoku puzzle that generates [4 * (n 4 2n 2 + m)] 3-SAT clauses [11]. However, there is a scope to obtain an improved polynomial 3- SAT encoding of Sudoku puzzle of size (n n) based on constraint reduction. In this paper, we encode Sudoku puzzle of size (n n) into SAT clauses and subsequently convert into 3-SAT clauses. In Section 2, we present formulations for SAT and 3-SAT reductions of Sudoku puzzle (n n) on the basis of constraint reduction. The reductions furnish a crucial framework for converting one problem instance to other. In Section 3, we design two algorithms SP 2 SAT and SP 2 3SAT for the generation of clauses. Algorithm I: SP 2 SAT is used to obtain SAT clauses corresponding to Sudoku puzzle of size (n n) and Algorithm II: SP 2 3SAT converts the SAT clauses generated from Algorithm I, into 3-SAT clauses. In Section 4, we describe the execution results of both the algorithms SP 2 SAT and SP 2 3SAT for various Sudoku puzzles as well as highlight the number of 3-SAT clauses generated in polynomial 3-SAT reduction of Sudoku puzzle. Finally, we discuss the conclusion of our proposed work with suggesting future work in Section SAT CLAUSE GENERATION FOR SUDOKU PUZZLE (N N) We propose the constraint based 3-SAT encoding of Sudoku puzzle (n n). In this perspective, we review all the constraints of Sudoku puzzle and encode the constraints that are sufficient to describe Sudoku puzzle. The sufficient constraints in our case are categorized into two variants namely; Atleast Constraint for Cell (ACC) and Atmost Constraint for Row, Column and Block (ACRCB). ACC ensures that each cell of Sudoku puzzle (n n) contains atleast one number. ACRCB ensures that each number appears atmost once in each Row, Column and each Block of size ( n n). In other words, different numbers are to be filled in every cells of a row (column or block). Atmost constraint for Cell and atleast constraint for Row, Column and Block are redundant and not included in our SAT representation. Now, we transform these constrains into 3-SAT clauses to obtain the solution of Sudoku puzzle using SAT solver. In this context, let us assume all cells are represented as C(i, j), and a Boolean variable x i,j,k where 1 i, j, k n. Boolean variable x i,j,k is true if i th row and j th 39 editor@iaeme.com

3 SAT Based Algorithmic Approach for Sudoku Puzzle column of puzzle contains a number k otherwise it is false. In other words, x i,j,k is true if C(i, j) = k, otherwise it is false. There exist n possibilities to fill a particular cell, therefore SAT encoding requires n variables for each cell of Sudoku puzzle (n n). Now, we generate the 3- SAT clauses for both ACC and ACRCB constraints Atleast Constraint for Cell (ACC) According to this constraint, atleast one number is to be filled in each cell of Sudoku puzzle (n n). In other words, no one cell of Sudoku puzzle is to be remains blank. Thus, SAT representation of ACC constraint for n rows and n columns of a Sudoku puzzle of size (n n), as given by- ( x i,j,k ) (1) It is clear from eq. (1), one SAT clause is generated for each cell of Sudoku puzzle (n n). Consequently, n 2 clauses are produced for all cells and all are of length n. Now, we convert the obtained SAT clauses into 3-SAT clauses using well defined non recursive method [11]. Using this method, a SAT clause of k literals (k>3) is converted into (k-2) clauses of 3 distinct literals as well as this conversion is required (k-3) additional variables. Generated SAT clauses from eq. (1), are transformed into 3-SAT clauses using aforementioned method. As a result, [n 2 *(n 2)] 3-SAT clauses are obtained and [n 2 * (n 3)] additional variables required for conversion of SAT clauses to 3-SAT clauses. Now, we encode ACRCB into 3-SAT clauses as follows: 2.2. Atmost Constraint for Row, Column and Block (ACRCB) According to this constraint, each number appears in each row (each column or each block) of Sudoku puzzle without any repetition. Mathematically, if a number in a particular cell of a i th row of Sudoku puzzle is C(i, j) = k then C(i, m) k. In other words, if a cell in a particular row contains k then no other cell in same row contains k. Generalize SAT representation of ACRCB is given by: ( x i,j,k x i,m,k ) (2) In this way, (n 2 * n * (n 1)/2) SAT clauses are obtained for all n rows. Similarly, there is no repetition of any number in each column and each block of Sudoku puzzle and (n 3 * (n 1)/2) clauses are generated for all n columns and all n blocks. Therefore, total 3* [n 3 * (n 1) / 2] SAT clauses are attained for ACRCB. It is clear from eq. (2), all generated SAT clauses are of length 2 that are already in 3-SAT form. There is no need of any additional variables and hence, the number of SAT clauses and 3-SAT clauses generated for ACRCB are same. On the other hand, there exist m pre-assigned numbers in a given Sudoku puzzle (n n) that generate m unit clauses. Thus, total number of SAT clauses (say, C ) and 3-SAT clauses (say, C_3 ) generated for ACC and ACRCB are as follows: C = n 2 + [3* (n 3 * (n 1) / 2)] + m i.e. C = * [3n 2 3n + 2] + m and, C_3 = [n 2 * (n 2)] + [3 * (n 3 * (n 1) / 2)] + m i.e. C_3 = * [3n 2 n 4] + m Thus, we achieve a polynomial reduction of Sudoku puzzle into 3-SAT clauses. Value of C and C_3 shows that only [n 2 * (n 3)] clauses are increased in transformation of SAT clauses into 3-SAT clauses. On the basis of our formulation, we present two algorithms that generate SAT clauses and 3-SAT clauses for ACC and ACRCB in polynomial time editor@iaeme.com

4 Deepika Rai, N.S. Chaudhari and Maya Ingle 3. ALGORITHMIC APPROACH FOR 3SAT CLAUSE GENERATION We design two algorithms namely; Algorithm I: SP 2 SAT and Algorithm II: SP 2 3SAT. Algorithm I: SP 2 SAT generates all SAT clauses corresponding to constraints of Sudoku puzzle (n n). Input to the Algorithm I is the size of Sudoku puzzle and output file contains all SAT clauses corresponding to Sudoku puzzle in DIMACS form. On the other hand, Algorithm II: SP 2 3SAT converts all SAT clauses generated from Algorithm I into 3-SAT clauses in DIMACS form. Now, we describe our algorithms in informal and formal way as follows: 3.1. Informal Description Here, we describe the informal description of Algorithm I: SP 2 SAT and Algorithm II: SP 2 3SAT. For the input which is the size of Sudoku puzzle, Algorithm I: SP 2 SAT generates SAT clauses as output. We initialize ACC_clause and ACRCB_clause for storing a clause for ACC and ACRCB respectively. Also, we define a file SP 2 SAT.txt to store SAT clauses and a variable count, to count the number of SAT clauses. Variables i and j represent the row number and column number respectively and k represents the particular value in the cell. Loop for i and j are continuing according to constraints of Sudoku puzzle. In Algorithm II: SP 2 3SAT, input is a file SP 2 SAT.txt which is the output of Algorithm I. We define a variable k that counts the number of literals of a clause which is read from file SP 2 SAT.txt. Algorithm II: SP 2 3SAT generates 3-SAT clauses as output. We initialize a file SP 2 3SAT.txt to store 3-SAT clauses corresponding to SAT clauses obtained from Algorithm I. Now, we present the formal description of Algorithm I and Algorithm II are as follows: 3.2. Formal Description Now, we present a formal description of our algorithms SP 2 SAT and SP 2 3SAT. Algorithm I: SP 2 SAT is used for SAT clause generation according to constraints of Sudoku puzzle and Algorithm II: SP 2 3SAT helps to reduce SAT clauses into 3-SAT clauses. Algorithm I: // SP 2 SAT// //Input to the algorithm is the size of Sudoku puzzle, generate the SAT clauses corresponding to constraints of Sudoku puzzle// main ( ) //algorithm begins { STEP I: /* Input the size of Sudoku puzzle */ Input (n); STEP 2: /* Initialization of a file to store SAT clauses */ SP 2 SAT.txt = NULL; STEP 3: /* Generation of SAT clauses for ACC and write into SP 2 SAT.txt */ count 1 = NULL; // Initialize count 1 to store the number of clauses for ACC for (i = 1; i<= n; i++) do for (j = 1; j<= n; j++) do for (k = 1; j<= n; j++) do ACC_clause = (X 1,1,1 X 1,1,2 X 1,1,3 X 1, 1, k ); // A clause for each Cell count 1 = count 1 + 1; // count number of clauses SP 2 SAT.txt = ACC_clause; // write clause to output file 41 editor@iaeme.com

5 SAT Based Algorithmic Approach for Sudoku Puzzle STEP 4: /* Generation of SAT clauses for ACRCB */ count 2 = NULL; // Initialize count 2 to store the number of clauses for ACRCB STEP 4.1: /* Generation of SAT clauses for each Row */ for ( i = 1; i<=n ;i++) do for (k = i; k<= n; k++) do for ( j = 1; j<= n; j++) do // Print clause for: Cell C(i, j) and C(i, m) cannot contains k simultaneously ACRCB_clause = ( X i, j, k X i,m,k ) ; count 2 = count 2 + 1; // count number of clauses SP 2 SAT.txt = ACRCB_clause; // write clause to output file STEP 4.2: /* Generation of SAT clauses for each Column */ for (j = 1; i<= n; i++) do for (k=1; k<=n; k++) do for (i = 1; j<=n; j++) // Print clause for: Cell C(i, j) and C(m, j) cannot contains k simultaneously ACRCB_clause = ( X i, j, k X m, j, k ) ; count 2 = count 2 + 1; //count number of clauses SP 2 SAT.txt = ACRCB_clause; // write clause to output file STEP 4.3: /* Generation of SAT clauses for each Block. */ for (i = 1; i<=n; i++) do for (j = 1; j<=n; j++) do for (j = 1; j<=n; j++) do // Print clause for: Cell (i, j ) and Cell C(l, m) of same block cannot contains k simultaneously ACRCB_clause = ( X i, j, k X l,m, k ) ; count 2 =count 2 + 1; // count number of clauses SP 2 SAT.txt = ACRCB_clause; // write clause to output file STEP 5: /* Creation of output file and Calculate total number of clauses */ Output (SP 2 SAT.txt); 42 editor@iaeme.com

6 Deepika Rai, N.S. Chaudhari and Maya Ingle // Initialize count to store the total count of SAT clauses for constraints of Sudoku puzzle count = NULL; count = count 1 + count 2 ; } //end of main ( ) Algorithm II: //SP 2 3SAT// // Input to the algorithm is the file SP 2 SAT.txt and generate 3-SAT clauses// main ( ) //algorithm begins { STEP I: /* Input is the file generated from SP 2 SAT algorithm*/ READ (SP 2 SAT.txt); STEP 2: /* Initialize a file to store 3-SAT clauses */ SP 2 3SAT.txt = NULL; STEP 3: /*Read each SAT clause (say SP 2 SAT), count number of literals (say, k) and convert it into 3-SAT clause (say, SP 2 3SAT) if not.*/ if (k= = 1 2 3) // Clauses are already in 3-SAT begin SP 2 3SAT.txt = SP 2 SAT; // copy clause as it is in output file end if else if (k>3) // convert a SAT clause into 3-SAT clause begin SP 2 3SAT = (X 1,1,1 X 1,1,2 Y 1 ) ( Y 1 X 1,1,3 Y 2 ) ( Y 2 X 1,1,4 Y 3 ) ( Y n-3 X 1,1, (n-1) X 1,1,n ); SP 2 3SAT.txt = SP 2 3SAT; end if STEP 4: /* Convert all SAT clauses to 3-SAT clauses and obtained output file */ Repeat step 3 till the end of file; Output (SP 2 3SAT.txt); } //end of main ( ) 4. EXPERIMENTAL RESULTS We have implemented both algorithms SP 2 SAT and SP 2 3SAT in Java that generate SAT and 3-SAT clauses in DIMACS format. Implementation of Algorithm I: SP 2 SAT provides the SAT clauses in DIMACS format stored in a file. The obtained file is the input of Algorithm II: SP 2 3SAT that generates DIMACS file for 3-SAT clauses. We have executed both the algorithms on Sudoku puzzle of different sizes. As a result, we obtained the number of SAT clauses and 3-SAT clauses that are shown in Table 1. Implementation of Algorithm I and Algorithm II generate [ * (3n 2 3n + 2) + m] number of SAT clauses and [ * (3n 2 n 4) + m] 3-SAT clauses respectively in polynomial time. The experiments have been performed on Intel core i3 at 2.00 GHZ with 4 GB RAM. Implementation of Algorithm II: SP 2 3SAT 43 editor@iaeme.com

7 SAT Based Algorithmic Approach for Sudoku Puzzle shows that polynomial 3-SAT reduction of Sudoku puzzle requires only [n 2 * (n 3)] additional variables. It is observed that increases in number of clauses due to SAT to 3-SAT transformation is also [n 2 * (n 3)]. Hence, our approach is helpful to speed up the solution since complexity of SAT formula is dependent on number of clauses as well as number of variables in a clause. 5. CONCLUSIONS We have encoded Sudoku puzzle of size (n n) into 3-SAT clauses in polynomial time. We have used only sufficient constraints of Sudoku puzzle and define only two constraints namely; ACC and ACRCB. For the generation of SAT and 3-SAT clauses according to ACC and ACRCB, we designed algorithms SP 2 SAT and SP 2 3SAT respectively. As a result, we have obtained total number of 3-SAT clauses as well as number of additional variables required for polynomial 3-SAT reduction. Hence, we conclude that size of 3-SAT formula obtained by Algorithm II: SP 2 3SAT is O(n 4 ). Also, our 3-SAT reduction of Sudoku puzzle is polynomial in time as well as our algorithm generates better results for 3-SAT clauses. A direction for future work is to optimize the obtained number of 3-SAT clauses using some preprocessing techniques. Table 1 Results Obtained from Execution of Algorithm I and Algorithm II Size of Sudoku Puzzle (n n) No. of SAT Clauses C Elapsed Time for SAT Clause Generation (in seconds) No. of 3-SAT Clauses C_3 Elapsed Time for 3-SAT Clause Generation (in seconds) REFERENCES [1] Joao Marques-Silva, Practical applications of Boolean Satisfiability, International Workshop on Discrete Event Systems, IEEE, 2008, pp [2] Michael Codish, A SAT Encoding for the n-fractions Problem, Archives of Discrete Mathematics, Cornell University Library, [3] Stephen M.Majercik, APPSSAT: Approximate probabilistic planning using stochastic satisfiability, International Journal of Approximate Reasoning, Elsevier, 45(2), 2007, pp [4] Saha S., Chakraborty R.S., Nuthakki S.S., Anshul, Mukhopadhyay D., Improved Test Pattern Generation for Hardware Trojan Detection Using Genetic Algorithm and Boolean Satisfiability, Cryptographic Hardware and Embedded Systems-CHES, Lecture Notes in Computer Science, Springer, 9293, 2015, pp [5] Prakash C. Sharma and Narendra S. Chaudhari, A Graph Coloring approach for channel assignment in cellular network via propositional satisfiability, International Conference on 44 editor@iaeme.com

8 Deepika Rai, N.S. Chaudhari and Maya Ingle Emerging Trends in Networks and Computer Communications (ETNCC), IEEE, 2011, pp [6] Dahale N., Chaudhari, N.S. Ingle M., GCP constraint based SAT clause generation in polynomial time, International Journal of Advance Research in Computer Science, 7(2), 2016, pp [7] N. Dahale, N.S. Chaudhari, M. Ingle, Determining Vertex Cover Using Polynomial Encoding of 3sat, VNSGU Journal of Science and Technology, 4(1), 2015, pp [8] S. Chatterjee, S. Paladhi, R. Chakraborty, A comparative study on the performance characteristics of Sudoku solving algorithms, IOSR Journal of Computer Engineering (IOSR-JCE), 16(5), 2014, pp [9] Perez, Meir, Tshilidzi Marwala, Stochastic optimization approaches for solving Sudoku, Archives of Neural and Evolutionary Computing, Cornell University Library, [10] Bartlett, Andrew C., Amy N. Langville, An Integer Programming Model for the Sudoku Problem, Journal of Online Mathematics and its Applications, 8, Article ID 1798, [11] Rai Deepika, Chaudhari N.S., Ingle M., Polynomial 3-SAT reduction of Sudoku puzzle, International Journal of Advanced Research in Computer Science, 9(3), 2018, pp editor@iaeme.com

Parallelizing SAT Solver With specific application on solving Sudoku Puzzles

Parallelizing SAT Solver With specific application on solving Sudoku Puzzles 6.338 Applied Parallel Computing Final Report Parallelizing SAT Solver With specific application on solving Sudoku Puzzles Hank Huang May 13, 2009 This project was focused on parallelizing a SAT solver

More information

Implementation of a Sudoku Solver Using Reduction to SAT

Implementation of a Sudoku Solver Using Reduction to SAT Implementation of a Sudoku Solver Using Reduction to SAT For this project you will develop a Sudoku solver that receives an input puzzle and computes a solution, if one exists. Your solver will: read an

More information

A New Reduction from 3-SAT to Graph K- Colorability for Frequency Assignment Problem

A New Reduction from 3-SAT to Graph K- Colorability for Frequency Assignment Problem A New Reduction from 3-SAT to Graph K- Colorability for Frequency Assignment Problem Prakash C. Sharma Indian Institute of Technology Survey No. 113/2-B, Opposite to Veterinary College, A.B.Road, Village

More information

Towards More Effective Unsatisfiability-Based Maximum Satisfiability Algorithms

Towards More Effective Unsatisfiability-Based Maximum Satisfiability Algorithms Towards More Effective Unsatisfiability-Based Maximum Satisfiability Algorithms Joao Marques-Silva and Vasco Manquinho School of Electronics and Computer Science, University of Southampton, UK IST/INESC-ID,

More information

Chapter 10 Part 1: Reduction

Chapter 10 Part 1: Reduction //06 Polynomial-Time Reduction Suppose we could solve Y in polynomial-time. What else could we solve in polynomial time? don't confuse with reduces from Chapter 0 Part : Reduction Reduction. Problem X

More information

Learning Techniques for Pseudo-Boolean Solving and Optimization

Learning Techniques for Pseudo-Boolean Solving and Optimization Learning Techniques for Pseudo-Boolean Solving and Optimization José Faustino Fragoso Fremenin dos Santos September 29, 2008 Abstract The extension of conflict-based learning from Propositional Satisfiability

More information

The Resolution Algorithm

The Resolution Algorithm The Resolution Algorithm Introduction In this lecture we introduce the Resolution algorithm for solving instances of the NP-complete CNF- SAT decision problem. Although the algorithm does not run in polynomial

More information

Massively Parallel Seesaw Search for MAX-SAT

Massively Parallel Seesaw Search for MAX-SAT Massively Parallel Seesaw Search for MAX-SAT Harshad Paradkar Rochester Institute of Technology hp7212@rit.edu Prof. Alan Kaminsky (Advisor) Rochester Institute of Technology ark@cs.rit.edu Abstract The

More information

On Computing Minimum Size Prime Implicants

On Computing Minimum Size Prime Implicants On Computing Minimum Size Prime Implicants João P. Marques Silva Cadence European Laboratories / IST-INESC Lisbon, Portugal jpms@inesc.pt Abstract In this paper we describe a new model and algorithm for

More information

SAT and Termination. Nao Hirokawa. Japan Advanced Institute of Science and Technology. SAT and Termination 1/41

SAT and Termination. Nao Hirokawa. Japan Advanced Institute of Science and Technology. SAT and Termination 1/41 SAT and Termination Nao Hirokawa Japan Advanced Institute of Science and Technology SAT and Termination 1/41 given 9 9-grid like Sudoku Puzzle 1 8 7 3 2 7 7 1 6 4 3 4 5 3 2 8 6 fill out numbers from 1

More information

DATA POOL: A STRUCTURE TO STORE VOLUMINOUS DATA

DATA POOL: A STRUCTURE TO STORE VOLUMINOUS DATA International Journal of Computer Engineering & Technology (IJCET) Volume 9, Issue 5, September-October 2018, pp. 167 180, Article ID: IJCET_09_05_020 Available online at http://www.iaeme.com/ijcet/issues.asp?jtype=ijcet&vtype=9&itype=5

More information

8.1 Polynomial-Time Reductions

8.1 Polynomial-Time Reductions 8.1 Polynomial-Time Reductions Classify Problems According to Computational Requirements Q. Which problems will we be able to solve in practice? A working definition. Those with polynomial-time algorithms.

More information

Computational problems. Lecture 2: Combinatorial search and optimisation problems. Computational problems. Examples. Example

Computational problems. Lecture 2: Combinatorial search and optimisation problems. Computational problems. Examples. Example Lecture 2: Combinatorial search and optimisation problems Different types of computational problems Examples of computational problems Relationships between problems Computational properties of different

More information

Notes on CSP. Will Guaraldi, et al. version 1.7 4/18/2007

Notes on CSP. Will Guaraldi, et al. version 1.7 4/18/2007 Notes on CSP Will Guaraldi, et al version 1.7 4/18/2007 Abstract Original abstract This document is a survey of the fundamentals of what we ve covered in the course up to this point. The information in

More information

NP-Complete Reductions 2

NP-Complete Reductions 2 x 1 x 1 x 2 x 2 x 3 x 3 x 4 x 4 12 22 32 CS 447 11 13 21 23 31 33 Algorithms NP-Complete Reductions 2 Prof. Gregory Provan Department of Computer Science University College Cork 1 Lecture Outline NP-Complete

More information

An Introduction to SAT Solvers

An Introduction to SAT Solvers An Introduction to SAT Solvers Knowles Atchison, Jr. Fall 2012 Johns Hopkins University Computational Complexity Research Paper December 11, 2012 Abstract As the first known example of an NP Complete problem,

More information

Optimized CNF Encoding for Sudoku Puzzles

Optimized CNF Encoding for Sudoku Puzzles Optimized CNF Encoding for Sudoku Puzzles Gihwon Kwon 1, Himanshu Jain 2 1 Department of Computer Science, Kyonggi University khkwon@kyonggi.ac.kr 2 Department of Computer Science, Carnegie Mellon University

More information

An Optimized Algorithm for Solving Combinatorial Problems using Reference Graph

An Optimized Algorithm for Solving Combinatorial Problems using Reference Graph IOSR Journal of Computer Engineering (IOSR-JCE) e-issn: 2278-0661, p- ISSN: 2278-8727Volume 16, Issue 3, Ver. III (May-Jun. 2014), PP 01-07 An Optimized Algorithm for Solving Combinatorial Problems using

More information

Example of a Demonstration that a Problem is NP-Complete by reduction from CNF-SAT

Example of a Demonstration that a Problem is NP-Complete by reduction from CNF-SAT 20170926 CNF-SAT: CNF-SAT is a problem in NP, defined as follows: Let E be a Boolean expression with m clauses and n literals (literals = variables, possibly negated), in which - each clause contains only

More information

NP and computational intractability. Kleinberg and Tardos, chapter 8

NP and computational intractability. Kleinberg and Tardos, chapter 8 NP and computational intractability Kleinberg and Tardos, chapter 8 1 Major Transition So far we have studied certain algorithmic patterns Greedy, Divide and conquer, Dynamic programming to develop efficient

More information

of m clauses, each containing the disjunction of boolean variables from a nite set V = fv 1 ; : : : ; vng of size n [8]. Each variable occurrence with

of m clauses, each containing the disjunction of boolean variables from a nite set V = fv 1 ; : : : ; vng of size n [8]. Each variable occurrence with A Hybridised 3-SAT Algorithm Andrew Slater Automated Reasoning Project, Computer Sciences Laboratory, RSISE, Australian National University, 0200, Canberra Andrew.Slater@anu.edu.au April 9, 1999 1 Introduction

More information

SAT Solver. CS 680 Formal Methods Jeremy Johnson

SAT Solver. CS 680 Formal Methods Jeremy Johnson SAT Solver CS 680 Formal Methods Jeremy Johnson Disjunctive Normal Form A Boolean expression is a Boolean function Any Boolean function can be written as a Boolean expression s x 0 x 1 f Disjunctive normal

More information

Efficient Circuit to CNF Conversion

Efficient Circuit to CNF Conversion Efficient Circuit to CNF Conversion Panagiotis Manolios and Daron Vroon College of Computing, Georgia Institute of Technology, Atlanta, GA, 30332, USA http://www.cc.gatech.edu/home/{manolios,vroon} Abstract.

More information

Solving Sudoku Puzzles with Node Based Coincidence Algorithm

Solving Sudoku Puzzles with Node Based Coincidence Algorithm Solving Sudoku Puzzles with Node Based Coincidence Algorithm Kiatsopon Waiyapara Department of Compute Engineering, Faculty of Engineering, Chulalongkorn University, Bangkok, Thailand kiatsopon.w@gmail.com

More information

Using Progressive Stochastic Search to solve Sudoku CSP

Using Progressive Stochastic Search to solve Sudoku CSP Using Progressive Stochastic Search to solve Sudoku CSP Jeetesh Mangwani & Pankaj Prateek Advisor: Dr. Amitabh Mukherjee[11][10] Dept. of Computer Science and Engineering Indian Institute of Technology,

More information

The Complexity of Camping

The Complexity of Camping The Complexity of Camping Marzio De Biasi marziodebiasi [at] gmail [dot] com July 2012 Version 0.04: a re-revised sketch of the proof Abstract We prove that the tents puzzle game is NP -complete using

More information

Reductions. Linear Time Reductions. Desiderata. Reduction. Desiderata. Classify problems according to their computational requirements.

Reductions. Linear Time Reductions. Desiderata. Reduction. Desiderata. Classify problems according to their computational requirements. Desiderata Reductions Desiderata. Classify problems according to their computational requirements. Frustrating news. Huge number of fundamental problems have defied classification for decades. Desiderata'.

More information

Relaxed Routing Problem with Constraint Satisfaction Problem

Relaxed Routing Problem with Constraint Satisfaction Problem R3-18 SASIMI 2018 Proceedings Relaxed Routing Problem with Constraint Satisfaction Problem Saki Yamaguci Yasuhiro Takashima Department of Information and Media Engineering University of Kitakyushu Kitakyushu,

More information

Discrete Optimization. Lecture Notes 2

Discrete Optimization. Lecture Notes 2 Discrete Optimization. Lecture Notes 2 Disjunctive Constraints Defining variables and formulating linear constraints can be straightforward or more sophisticated, depending on the problem structure. The

More information

PROPOSITIONAL LOGIC (2)

PROPOSITIONAL LOGIC (2) PROPOSITIONAL LOGIC (2) based on Huth & Ruan Logic in Computer Science: Modelling and Reasoning about Systems Cambridge University Press, 2004 Russell & Norvig Artificial Intelligence: A Modern Approach

More information

! Greed. O(n log n) interval scheduling. ! Divide-and-conquer. O(n log n) FFT. ! Dynamic programming. O(n 2 ) edit distance.

! Greed. O(n log n) interval scheduling. ! Divide-and-conquer. O(n log n) FFT. ! Dynamic programming. O(n 2 ) edit distance. Algorithm Design Patterns and Anti-Patterns Chapter 8 NP and Computational Intractability Algorithm design patterns. Ex.! Greed. O(n log n) interval scheduling.! Divide-and-conquer. O(n log n) FFT.! Dynamic

More information

CSP- and SAT-based Inference Techniques Applied to Gnomine

CSP- and SAT-based Inference Techniques Applied to Gnomine CSP- and SAT-based Inference Techniques Applied to Gnomine Bachelor Thesis Faculty of Science, University of Basel Department of Computer Science Artificial Intelligence ai.cs.unibas.ch Examiner: Prof.

More information

Notes on CSP. Will Guaraldi, et al. version /13/2006

Notes on CSP. Will Guaraldi, et al. version /13/2006 Notes on CSP Will Guaraldi, et al version 1.5 10/13/2006 Abstract This document is a survey of the fundamentals of what we ve covered in the course up to this point. The information in this document was

More information

Boolean Functions (Formulas) and Propositional Logic

Boolean Functions (Formulas) and Propositional Logic EECS 219C: Computer-Aided Verification Boolean Satisfiability Solving Part I: Basics Sanjit A. Seshia EECS, UC Berkeley Boolean Functions (Formulas) and Propositional Logic Variables: x 1, x 2, x 3,, x

More information

Reduction of nite linear CSPs to SAT using dierent encod

Reduction of nite linear CSPs to SAT using dierent encod Reduction of nite linear CSPs to SAT using dierent encodings Mirko Stojadinovi mirkos@matf.bg.ac.rs Department of Computer Science Faculty of Mathematics University of Belgrade Fifth Workshop on Formal

More information

Computability Theory

Computability Theory CS:4330 Theory of Computation Spring 2018 Computability Theory Other NP-Complete Problems Haniel Barbosa Readings for this lecture Chapter 7 of [Sipser 1996], 3rd edition. Sections 7.4 and 7.5. The 3SAT

More information

Decision Procedures. An Algorithmic Point of View. Decision Procedures for Propositional Logic. D. Kroening O. Strichman.

Decision Procedures. An Algorithmic Point of View. Decision Procedures for Propositional Logic. D. Kroening O. Strichman. Decision Procedures An Algorithmic Point of View Decision Procedures for Propositional Logic D. Kroening O. Strichman ETH/Technion Version 1.0, 2007 Part I Decision Procedures for Propositional Logic Outline

More information

Chapter 8. NP and Computational Intractability. Slides by Kevin Wayne. Copyright 2005 Pearson-Addison Wesley. All rights reserved.

Chapter 8. NP and Computational Intractability. Slides by Kevin Wayne. Copyright 2005 Pearson-Addison Wesley. All rights reserved. Chapter 8 NP and Computational Intractability Slides by Kevin Wayne. Copyright 2005 Pearson-Addison Wesley. All rights reserved. 1 Algorithm Design Patterns and Anti-Patterns Algorithm design patterns.

More information

Reductions and Satisfiability

Reductions and Satisfiability Reductions and Satisfiability 1 Polynomial-Time Reductions reformulating problems reformulating a problem in polynomial time independent set and vertex cover reducing vertex cover to set cover 2 The Satisfiability

More information

USING QBF SOLVERS TO SOLVE GAMES AND PUZZLES. Zhihe Shen. Advisor: Howard Straubing

USING QBF SOLVERS TO SOLVE GAMES AND PUZZLES. Zhihe Shen. Advisor: Howard Straubing Boston College Computer Science Senior Thesis USING QBF SOLVERS TO SOLVE GAMES AND PUZZLES Zhihe Shen Advisor: Howard Straubing Abstract There are multiple types of games, such as board games and card

More information

A Simplied NP-complete MAXSAT Problem. Abstract. It is shown that the MAX2SAT problem is NP-complete even if every variable

A Simplied NP-complete MAXSAT Problem. Abstract. It is shown that the MAX2SAT problem is NP-complete even if every variable A Simplied NP-complete MAXSAT Problem Venkatesh Raman 1, B. Ravikumar 2 and S. Srinivasa Rao 1 1 The Institute of Mathematical Sciences, C. I. T. Campus, Chennai 600 113. India 2 Department of Computer

More information

Watching Clauses in Quantified Boolean Formulae

Watching Clauses in Quantified Boolean Formulae Watching Clauses in Quantified Boolean Formulae Andrew G D Rowley University of St. Andrews, Fife, Scotland agdr@dcs.st-and.ac.uk Abstract. I present a way to speed up the detection of pure literals and

More information

! Greed. O(n log n) interval scheduling. ! Divide-and-conquer. O(n log n) FFT. ! Dynamic programming. O(n 2 ) edit distance.

! Greed. O(n log n) interval scheduling. ! Divide-and-conquer. O(n log n) FFT. ! Dynamic programming. O(n 2 ) edit distance. Algorithm Design Patterns and Anti-Patterns 8. NP and Computational Intractability Algorithm design patterns. Ex.! Greed. O(n log n) interval scheduling.! Divide-and-conquer. O(n log n) FFT.! Dynamic programming.

More information

Boolean Representations and Combinatorial Equivalence

Boolean Representations and Combinatorial Equivalence Chapter 2 Boolean Representations and Combinatorial Equivalence This chapter introduces different representations of Boolean functions. It then discusses the applications of these representations for proving

More information

NP-Hardness. We start by defining types of problem, and then move on to defining the polynomial-time reductions.

NP-Hardness. We start by defining types of problem, and then move on to defining the polynomial-time reductions. CS 787: Advanced Algorithms NP-Hardness Instructor: Dieter van Melkebeek We review the concept of polynomial-time reductions, define various classes of problems including NP-complete, and show that 3-SAT

More information

In this lecture we discuss the complexity of approximation problems, and show how to prove they are NP-hard.

In this lecture we discuss the complexity of approximation problems, and show how to prove they are NP-hard. In this lecture we discuss the complexity of approximation problems, and show how to prove they are NP-hard. 1 We will show how one can prove such results and then apply this technique to some approximation

More information

Path-planning for Multiple Robots

Path-planning for Multiple Robots Path-planning for Multiple Robots RNDr. Pavel Surynek, Ph.D. Department of Theoretical Computer Science and Mathematical Logic Faculty of Mathematics and Physics Charles University in Prague http://ktiml.mff.cuni.cz/~surynek

More information

NP Completeness. Andreas Klappenecker [partially based on slides by Jennifer Welch]

NP Completeness. Andreas Klappenecker [partially based on slides by Jennifer Welch] NP Completeness Andreas Klappenecker [partially based on slides by Jennifer Welch] Overview We already know the following examples of NPC problems: SAT 3SAT We are going to show that the following are

More information

Obstacle-Aware Longest-Path Routing with Parallel MILP Solvers

Obstacle-Aware Longest-Path Routing with Parallel MILP Solvers , October 20-22, 2010, San Francisco, USA Obstacle-Aware Longest-Path Routing with Parallel MILP Solvers I-Lun Tseng, Member, IAENG, Huan-Wen Chen, and Che-I Lee Abstract Longest-path routing problems,

More information

Searching for Monochromatic-Square-Free Ramsey Grid Colorings via SAT Solvers

Searching for Monochromatic-Square-Free Ramsey Grid Colorings via SAT Solvers Searching for Monochromatic-Square-Free Ramsey Grid Colorings via SAT Solvers Paul Walton Computer Science and Computer Engineering University of Arkansas Fayetteville, AR 72701, USA pwalton@uark.edu Wing

More information

Copyright 2000, Kevin Wayne 1

Copyright 2000, Kevin Wayne 1 Guessing Game: NP-Complete? 1. LONGEST-PATH: Given a graph G = (V, E), does there exists a simple path of length at least k edges? YES. SHORTEST-PATH: Given a graph G = (V, E), does there exists a simple

More information

9.1 Cook-Levin Theorem

9.1 Cook-Levin Theorem CS787: Advanced Algorithms Scribe: Shijin Kong and David Malec Lecturer: Shuchi Chawla Topic: NP-Completeness, Approximation Algorithms Date: 10/1/2007 As we ve already seen in the preceding lecture, two

More information

Integrating a SAT Solver with Isabelle/HOL

Integrating a SAT Solver with Isabelle/HOL Integrating a SAT Solver with / Tjark Weber (joint work with Alwen Tiu et al.) webertj@in.tum.de First Munich-Nancy Workshop on Decision Procedures for Theorem Provers March 6th & 7th, 2006 Integrating

More information

SAT-CNF Is N P-complete

SAT-CNF Is N P-complete SAT-CNF Is N P-complete Rod Howell Kansas State University November 9, 2000 The purpose of this paper is to give a detailed presentation of an N P- completeness proof using the definition of N P given

More information

EECS 219C: Computer-Aided Verification Boolean Satisfiability Solving. Sanjit A. Seshia EECS, UC Berkeley

EECS 219C: Computer-Aided Verification Boolean Satisfiability Solving. Sanjit A. Seshia EECS, UC Berkeley EECS 219C: Computer-Aided Verification Boolean Satisfiability Solving Sanjit A. Seshia EECS, UC Berkeley Project Proposals Due Friday, February 13 on bcourses Will discuss project topics on Monday Instructions

More information

Unit 8: Coping with NP-Completeness. Complexity classes Reducibility and NP-completeness proofs Coping with NP-complete problems. Y.-W.

Unit 8: Coping with NP-Completeness. Complexity classes Reducibility and NP-completeness proofs Coping with NP-complete problems. Y.-W. : Coping with NP-Completeness Course contents: Complexity classes Reducibility and NP-completeness proofs Coping with NP-complete problems Reading: Chapter 34 Chapter 35.1, 35.2 Y.-W. Chang 1 Complexity

More information

Satisfiability-Based Algorithms for 0-1 Integer Programming

Satisfiability-Based Algorithms for 0-1 Integer Programming Satisfiability-Based Algorithms for 0-1 Integer Programming Vasco M. Manquinho, João P. Marques Silva, Arlindo L. Oliveira and Karem A. Sakallah Cadence European Laboratories / INESC Instituto Superior

More information

NP-complete Reductions

NP-complete Reductions NP-complete Reductions 1. Prove that 3SAT P DOUBLE-SAT, i.e., show DOUBLE-SAT is NP-complete by reduction from 3SAT. The 3-SAT problem consists of a conjunction of clauses over n Boolean variables, where

More information

Deductive Methods, Bounded Model Checking

Deductive Methods, Bounded Model Checking Deductive Methods, Bounded Model Checking http://d3s.mff.cuni.cz Pavel Parízek CHARLES UNIVERSITY IN PRAGUE faculty of mathematics and physics Deductive methods Pavel Parízek Deductive Methods, Bounded

More information

Constraint Satisfaction Problems (CSPs)

Constraint Satisfaction Problems (CSPs) Constraint Satisfaction Problems (CSPs) CPSC 322 CSP 1 Poole & Mackworth textbook: Sections 4.0-4.2 Lecturer: Alan Mackworth September 28, 2012 Problem Type Static Sequential Constraint Satisfaction Logic

More information

(p 300) Theorem 7.27 SAT is in P iff P=NP

(p 300) Theorem 7.27 SAT is in P iff P=NP pp. 292-311. The Class NP-Complete (Sec. 7.4) P = {L L decidable in poly time} NP = {L L verifiable in poly time} Certainly all P is in NP Unknown if NP is bigger than P (p. 299) NP-Complete = subset of

More information

EECS 219C: Formal Methods Boolean Satisfiability Solving. Sanjit A. Seshia EECS, UC Berkeley

EECS 219C: Formal Methods Boolean Satisfiability Solving. Sanjit A. Seshia EECS, UC Berkeley EECS 219C: Formal Methods Boolean Satisfiability Solving Sanjit A. Seshia EECS, UC Berkeley The Boolean Satisfiability Problem (SAT) Given: A Boolean formula F(x 1, x 2, x 3,, x n ) Can F evaluate to 1

More information

Boolean Satisfiability: The Central Problem of Computation

Boolean Satisfiability: The Central Problem of Computation Boolean Satisfiability: The Central Problem of Computation Peter Kogge SAT Notre Dame CSE 34151: Theory of Computing: Fall 2017 Slide 1 (p. 299) SAT: Boolean Satisfiability wff: well-formed-formula constructed

More information

CS-E3200 Discrete Models and Search

CS-E3200 Discrete Models and Search Shahab Tasharrofi Department of Information and Computer Science, Aalto University Lecture 7: Complete and local search methods for SAT Outline Algorithms for solving Boolean satisfiability problems Complete

More information

Better test results for the graph coloring and the Pigeonhole Problems using DPLL with k-literal representation

Better test results for the graph coloring and the Pigeonhole Problems using DPLL with k-literal representation Proceedings of the 7 th International Conference on Applied Informatics Eger, Hungary, January 28 31, 2007. Vol. 2. pp. 127 135. Better test results for the graph coloring and the Pigeonhole Problems using

More information

Generating All Solutions of Minesweeper Problem Using Degree Constrained Subgraph Model

Generating All Solutions of Minesweeper Problem Using Degree Constrained Subgraph Model 356 Int'l Conf. Par. and Dist. Proc. Tech. and Appl. PDPTA'16 Generating All Solutions of Minesweeper Problem Using Degree Constrained Subgraph Model Hirofumi Suzuki, Sun Hao, and Shin-ichi Minato Graduate

More information

The Satisfiability Problem [HMU06,Chp.10b] Satisfiability (SAT) Problem Cook s Theorem: An NP-Complete Problem Restricted SAT: CSAT, k-sat, 3SAT

The Satisfiability Problem [HMU06,Chp.10b] Satisfiability (SAT) Problem Cook s Theorem: An NP-Complete Problem Restricted SAT: CSAT, k-sat, 3SAT The Satisfiability Problem [HMU06,Chp.10b] Satisfiability (SAT) Problem Cook s Theorem: An NP-Complete Problem Restricted SAT: CSAT, k-sat, 3SAT 1 Satisfiability (SAT) Problem 2 Boolean Expressions Boolean,

More information

Local Two-Level And-Inverter Graph Minimization without Blowup

Local Two-Level And-Inverter Graph Minimization without Blowup Local Two-Level And-Inverter Graph Minimization without Blowup Robert Brummayer and Armin Biere Institute for Formal Models and Verification Johannes Kepler University Linz, Austria {robert.brummayer,

More information

Lecture 2: NP-Completeness

Lecture 2: NP-Completeness NP and Latin Squares Instructor: Padraic Bartlett Lecture 2: NP-Completeness Week 4 Mathcamp 2014 In our last class, we introduced the complexity classes P and NP. To motivate why we grouped all of NP

More information

1 Definition of Reduction

1 Definition of Reduction 1 Definition of Reduction Problem A is reducible, or more technically Turing reducible, to problem B, denoted A B if there a main program M to solve problem A that lacks only a procedure to solve problem

More information

Finite Model Generation for Isabelle/HOL Using a SAT Solver

Finite Model Generation for Isabelle/HOL Using a SAT Solver Finite Model Generation for / Using a SAT Solver Tjark Weber webertj@in.tum.de Technische Universität München Winterhütte, März 2004 Finite Model Generation for / p.1/21 is a generic proof assistant: Highly

More information

Formally Certified Satisfiability Solving

Formally Certified Satisfiability Solving SAT/SMT Proof Checking Verifying SAT Solver Code Future Work Computer Science, The University of Iowa, USA April 23, 2012 Seoul National University SAT/SMT Proof Checking Verifying SAT Solver Code Future

More information

Complexity Classes and Polynomial-time Reductions

Complexity Classes and Polynomial-time Reductions COMPSCI 330: Design and Analysis of Algorithms April 19, 2016 Complexity Classes and Polynomial-time Reductions Lecturer: Debmalya Panigrahi Scribe: Tianqi Song 1 Overview In this lecture, we introduce

More information

4.1 Review - the DPLL procedure

4.1 Review - the DPLL procedure Applied Logic Lecture 4: Efficient SAT solving CS 4860 Spring 2009 Thursday, January 29, 2009 The main purpose of these notes is to help me organize the material that I used to teach today s lecture. They

More information

An Experimental Evaluation of Conflict Diagnosis and Recursive Learning in Boolean Satisfiability

An Experimental Evaluation of Conflict Diagnosis and Recursive Learning in Boolean Satisfiability An Experimental Evaluation of Conflict Diagnosis and Recursive Learning in Boolean Satisfiability Fadi A. Aloul and Karem A. Sakallah Department of Electrical Engineering and Computer Science University

More information

Tabu Search for Constraint Solving and Its Applications. Jin-Kao Hao LERIA University of Angers 2 Boulevard Lavoisier Angers Cedex 01 - France

Tabu Search for Constraint Solving and Its Applications. Jin-Kao Hao LERIA University of Angers 2 Boulevard Lavoisier Angers Cedex 01 - France Tabu Search for Constraint Solving and Its Applications Jin-Kao Hao LERIA University of Angers 2 Boulevard Lavoisier 49045 Angers Cedex 01 - France 1. Introduction The Constraint Satisfaction Problem (CSP)

More information

Heuristic Backtracking Algorithms for SAT

Heuristic Backtracking Algorithms for SAT Heuristic Backtracking Algorithms for SAT A. Bhalla, I. Lynce, J.T. de Sousa and J. Marques-Silva IST/INESC-ID, Technical University of Lisbon, Portugal fateet,ines,jts,jpmsg@sat.inesc.pt Abstract In recent

More information

Speeding Up the ESG Algorithm

Speeding Up the ESG Algorithm Speeding Up the ESG Algorithm Yousef Kilani 1 and Abdullah. Mohdzin 2 1 Prince Hussein bin Abdullah Information Technology College, Al Al-Bayt University, Jordan 2 Faculty of Information Science and Technology,

More information

Chapter 8. NP-complete problems

Chapter 8. NP-complete problems Chapter 8. NP-complete problems Search problems E cient algorithms We have developed algorithms for I I I I I finding shortest paths in graphs, minimum spanning trees in graphs, matchings in bipartite

More information

algorithms, i.e., they attempt to construct a solution piece by piece and are not able to offer a complete solution until the end. The FM algorithm, l

algorithms, i.e., they attempt to construct a solution piece by piece and are not able to offer a complete solution until the end. The FM algorithm, l The FMSAT Satisfiability Solver: Hypergraph Partitioning meets Boolean Satisfiability Arathi Ramani, Igor Markov framania, imarkovg@eecs.umich.edu February 6, 2002 Abstract This report is intended to present

More information

Propositional Calculus: Boolean Algebra and Simplification. CS 270: Mathematical Foundations of Computer Science Jeremy Johnson

Propositional Calculus: Boolean Algebra and Simplification. CS 270: Mathematical Foundations of Computer Science Jeremy Johnson Propositional Calculus: Boolean Algebra and Simplification CS 270: Mathematical Foundations of Computer Science Jeremy Johnson Propositional Calculus Topics Motivation: Simplifying Conditional Expressions

More information

A Pearl on SAT Solving in Prolog (extended abstract)

A Pearl on SAT Solving in Prolog (extended abstract) A Pearl on SAT Solving in Prolog (extended abstract) Jacob M. Howe and Andy King 1 Introduction The Boolean satisfiability problem, SAT, is of continuing interest because a variety of problems are naturally

More information

Unrestricted Nogood Recording in CSP search

Unrestricted Nogood Recording in CSP search Unrestricted Nogood Recording in CSP search George Katsirelos and Fahiem Bacchus Department of Computer Science, University Of Toronto, Toronto, Ontario, Canada [gkatsi,fbacchus]@cs.toronto.edu Abstract.

More information

Genetic Algorithms Based Solution To Maximum Clique Problem

Genetic Algorithms Based Solution To Maximum Clique Problem Genetic Algorithms Based Solution To Maximum Clique Problem Harsh Bhasin computergrad.com Faridabad, India i_harsh_bhasin@yahoo.com Rohan Mahajan Lingaya s University Faridabad, India mahajanr28@gmail.com

More information

Exact Algorithms Lecture 7: FPT Hardness and the ETH

Exact Algorithms Lecture 7: FPT Hardness and the ETH Exact Algorithms Lecture 7: FPT Hardness and the ETH February 12, 2016 Lecturer: Michael Lampis 1 Reminder: FPT algorithms Definition 1. A parameterized problem is a function from (χ, k) {0, 1} N to {0,

More information

Integrating Probabilistic Reasoning with Constraint Satisfaction

Integrating Probabilistic Reasoning with Constraint Satisfaction Integrating Probabilistic Reasoning with Constraint Satisfaction IJCAI Tutorial #7 Instructor: Eric I. Hsu July 17, 2011 http://www.cs.toronto.edu/~eihsu/tutorial7 Getting Started Discursive Remarks. Organizational

More information

NP-Completeness of 3SAT, 1-IN-3SAT and MAX 2SAT

NP-Completeness of 3SAT, 1-IN-3SAT and MAX 2SAT NP-Completeness of 3SAT, 1-IN-3SAT and MAX 2SAT 3SAT The 3SAT problem is the following. INSTANCE : Given a boolean expression E in conjunctive normal form (CNF) that is the conjunction of clauses, each

More information

NP versus PSPACE. Frank Vega. To cite this version: HAL Id: hal https://hal.archives-ouvertes.fr/hal

NP versus PSPACE. Frank Vega. To cite this version: HAL Id: hal https://hal.archives-ouvertes.fr/hal NP versus PSPACE Frank Vega To cite this version: Frank Vega. NP versus PSPACE. Preprint submitted to Theoretical Computer Science 2015. 2015. HAL Id: hal-01196489 https://hal.archives-ouvertes.fr/hal-01196489

More information

New Upper Bounds for MAX-2-SAT and MAX-2-CSP w.r.t. the Average Variable Degree

New Upper Bounds for MAX-2-SAT and MAX-2-CSP w.r.t. the Average Variable Degree New Upper Bounds for MAX-2-SAT and MAX-2-CSP w.r.t. the Average Variable Degree Alexander Golovnev St. Petersburg University of the Russian Academy of Sciences, St. Petersburg, Russia alex.golovnev@gmail.com

More information

Chapter 2 PRELIMINARIES

Chapter 2 PRELIMINARIES 8 Chapter 2 PRELIMINARIES Throughout this thesis, we work with propositional or Boolean variables, that is, variables that take value in the set {true, false}. A propositional formula F representing a

More information

AN EFFICIENT APPROACH FOR PROVIDING FULL CONNECTIVITY IN WIRELESS SENSOR NETWORK

AN EFFICIENT APPROACH FOR PROVIDING FULL CONNECTIVITY IN WIRELESS SENSOR NETWORK International Journal of Computer Engineering & Technology (IJCET) Volume 9, Issue 6, November-December 2018, pp. 140 154, Article ID: IJCET_09_06_016 Available online at http://www.iaeme.com/ijcet/issues.asp?jtype=ijcet&vtype=9&itype=6

More information

On the Relation between SAT and BDDs for Equivalence Checking

On the Relation between SAT and BDDs for Equivalence Checking On the Relation between SAT and BDDs for Equivalence Checking Sherief Reda 1 Rolf Drechsler 2 Alex Orailoglu 1 1 Computer Science & Engineering Department University of California, San Diego La Jolla,

More information

Satisfiability. Michail G. Lagoudakis. Department of Computer Science Duke University Durham, NC SATISFIABILITY

Satisfiability. Michail G. Lagoudakis. Department of Computer Science Duke University Durham, NC SATISFIABILITY Satisfiability Michail G. Lagoudakis Department of Computer Science Duke University Durham, NC 27708 COMPSCI 271 - Spring 2001 DUKE UNIVERSITY Page 1 Why SAT? Historical Reasons The first NP-COMPLETE problem

More information

ScienceDirect. Plan Restructuring in Multi Agent Planning

ScienceDirect. Plan Restructuring in Multi Agent Planning Available online at www.sciencedirect.com ScienceDirect Procedia Computer Science 46 (2015 ) 396 401 International Conference on Information and Communication Technologies (ICICT 2014) Plan Restructuring

More information

8.1 Polynomial-Time Reductions

8.1 Polynomial-Time Reductions Algorithm Design Patterns and Anti-Patterns Analysis of Algorithms Algorithm design patterns. Ex. Greed. O(n 2 ) Dijkstra s SSSP (dense) Divide-and-conquer. O(n log n) FFT. Dynamic programming. O(n 2 )

More information

Notes for Lecture 24

Notes for Lecture 24 U.C. Berkeley CS170: Intro to CS Theory Handout N24 Professor Luca Trevisan December 4, 2001 Notes for Lecture 24 1 Some NP-complete Numerical Problems 1.1 Subset Sum The Subset Sum problem is defined

More information

DM841 DISCRETE OPTIMIZATION. Part 2 Heuristics. Satisfiability. Marco Chiarandini

DM841 DISCRETE OPTIMIZATION. Part 2 Heuristics. Satisfiability. Marco Chiarandini DM841 DISCRETE OPTIMIZATION Part 2 Heuristics Satisfiability Marco Chiarandini Department of Mathematics & Computer Science University of Southern Denmark Outline 1. Mathematical Programming Constraint

More information

CS 267: Automated Verification. Lecture 13: Bounded Model Checking. Instructor: Tevfik Bultan

CS 267: Automated Verification. Lecture 13: Bounded Model Checking. Instructor: Tevfik Bultan CS 267: Automated Verification Lecture 13: Bounded Model Checking Instructor: Tevfik Bultan Remember Symbolic Model Checking Represent sets of states and the transition relation as Boolean logic formulas

More information

Efficient Enumeration Algorithms for Constraint Satisfaction Problems

Efficient Enumeration Algorithms for Constraint Satisfaction Problems Efficient Enumeration Algorithms for Constraint Satisfaction Problems Henning and Ilka Schnoor Institut für Theoretische Informatik Leibniz Universität Hannover 2.10.2006 Efficient Enumeration Algorithms

More information

An SMT-Based Approach to Motion Planning for Multiple Robots with Complex Constraints

An SMT-Based Approach to Motion Planning for Multiple Robots with Complex Constraints 1 An SMT-Based Approach to Motion Planning for Multiple Robots with Complex Constraints Frank Imeson, Student Member, IEEE, Stephen L. Smith, Senior Member, IEEE Abstract In this paper we propose a new

More information