HW #2. Due Apr 25 23:59 Do NOT forget to submit both a hardcopy solution to the HW box and a softcopy solution to TA.

Slides:



Advertisements
Similar presentations
SAT Encoding For Sudoku Puzzles
Advertisements

SAT Solver CS 680 Formal Methods Jeremy Johnson. 2 Disjunctive Normal Form  A Boolean expression is a Boolean function  Any Boolean function can be.
50.530: Software Engineering
Digital Circuits. Review – Getting the truth table The first step in designing a digital circuit usually is to get the truth table. That is, for every.
Satisfiability Modulo Theories (An introduction)
SMT Solvers (an extension of SAT) Kenneth Roe. Slide thanks to C. Barrett & S. A. Seshia, ICCAD 2009 Tutorial 2 Boolean Satisfiability (SAT) ⋁ ⋀ ¬ ⋁ ⋀
Saleem Sabbagh & Najeeb Darawshy Supervisors: Mony Orbach, Technion & Ilia Averbouch, IBM Started at: Winter 2012 Duration: Semester.
CPSC 422, Lecture 21Slide 1 Intelligent Systems (AI-2) Computer Science cpsc422, Lecture 21 Mar, 4, 2015 Slide credit: some slides adapted from Stuart.
Methods for SAT- a Survey Robert Glaubius CSCE 976 May 6, 2002.
Linear Programming Excel Solver. MAX8X 1 + 5X 2 s.t.2X 1 + 1X 2 ≤ 1000 (Plastic) 3X 1 + 4X 2 ≤ 2400 (Prod. Time) X 1 + X 2 ≤ 700 (Total Prod.) X 1 - X.
Computer Science 1620 Multi-Dimensional Arrays. we used arrays to store a set of data of the same type e.g. store the assignment grades for a particular.
Assuming that you have already created a JMP data file.
1 CS 4700: Foundations of Artificial Intelligence Carla P. Gomes Module: Satisfiability (Reading R&N: Chapter 7)
CS 267: Automated Verification Lecture 13: Bounded Model Checking Instructor: Tevfik Bultan.
Daniel Kroening and Ofer Strichman Decision Procedure
SAT Solver Math Foundations of Computer Science. 2 Boolean Expressions  A Boolean expression is a Boolean function  Any Boolean function can be written.
Table of Contents First note this equation has "quadratic form" since the degree of one of the variable terms is twice that of the other. When this occurs,
Problem (hard) Solution CNF Satisfied assignment Encoding FINITE DOMAIN PROBLEM SOLVING Model Constraint Model Direct Constraint / Bits relation lost.
Explorations in Artificial Intelligence Prof. Carla P. Gomes Module 3 Logic Representations (Part 2)
Finding Conjugate Orthogonal Diagonal Latin Squares Using Finite Model Generators Hantao Zhang Jian Zhang
Predicate Abstraction of ANSI-C Programs Using SAT By Edmund Clarke, Daniel Kroening, Natalia Sharygina, Karen Yorav Presented by Yunho Kim Provable Software.
Intro. to Logic CS402 1 HW #5: Due June 6th 23:59 HW #5: Due June 6th 23:59.
Sudoku Solver Comparison A comparative analysis of algorithms for solving Sudoku.
HW #1. Due Mar 22 Midnight Verify the following program using SAT solver 1. Translate the program into a SSA form 2. Create a Boolean formula from.
Propositional Satisfiability A compound proposition is satisfiable if there is an assignment of truth values to its variables that make it true. When no.
Sudoku Boolean Logic Representation Upper left square.
Explorations in Artificial Intelligence Prof. Carla P. Gomes Module Logic Representations.
HW #2. Due Mar 27 23:59 Do NOT forget to submit both a hardcopy solution to the HW box and a softcopy solution to TA (Youngjoo Kim):
HW#3: Due Nov 9 NOTE. Submit both hardcopy and softcopy. 1. Formal verification of a flash memory reading unit (70 pts) – Show the correctness of the flash_read()
Software Model Checking Moonzoo Kim. Operational Semantics of Software A system execution  is a sequence of states s 0 s 1 … – A state has an environment.
CPSC 422, Lecture 21Slide 1 Intelligent Systems (AI-2) Computer Science cpsc422, Lecture 21 Oct, 30, 2015 Slide credit: some slides adapted from Stuart.
From … to Induction CS 270 Math Foundations of CS Jeremy Johnson.
Planning as Satisfiability (SAT-Plan). SAT-Plan Translate the planning problem into a satisfiability problem for length n of Plan garb 0 (proposition)present.
Satisfiability and SAT Solvers CS 270 Math Foundations of CS Jeremy Johnson.
SAT Encodings for Sudoku Bug Catching in 2006 Fall Sep. 26, 2006 Gi-Hwon Kwon.
C++ Array 1. C++ provides a data structure, the array, which stores a fixed-size sequential collection of elements of the same type. An array is used.
Project proposals. Most involve implementation inside minisat+ Project includes: Reading Implementation Evaluation Short presentation Submission of results.
Knowledge Repn. & Reasoning Lecture #9: Propositional Logic UIUC CS 498: Section EA Professor: Eyal Amir Fall Semester 2005.
拉丁方陣 交大應數系 蔡奕正. Definition A Latin square of order n with entries from an n-set X is an n * n array L in which every cell contains an element of X such.
Optimized SAT Encoding For Sudoku Puzzles Will Klieber and Gi-Hwon Kwon Sept 27, 2007 rev. 2 Changes from v1: Added a new slide after “A Better Encoding.
Bit-Vector Optimization ALEXANDER NADER AND VADIM RYVCHIN INTEL TACAS 2016.
CS-7081 Application - 1. CS-7082 Example - 2 CS-7083 Simplifying a Statement – 3.
SAT for Software Model Checking Introduction to SAT-problem for newbie
CS 4700: Foundations of Artificial Intelligence
Propositional Logic (a.k.a. Sentential Logic)
9.2 Solving Single-Step Inequalities
Binary 1 Basic conversions.
CS 4700: Foundations of Artificial Intelligence
Multiplication.
Intro to Computational Complexity
CS 270 Math Foundations of CS
Intelligent Systems (AI-2) Computer Science cpsc422, Lecture 21
Introduction to Software Verification
Applying Logic Synthesis for Speeding Up SAT
Software Model Checking
HW#2: Due Oct 18 NOTE. Submit both hardcopy and softcopy.
Modeling Sudoku as a CNF Formula
Propositional Equivalences
Modeling Sudoku as a CNF Formula
PROPOSITIONAL LOGIC - SYNTAX-
Software Model Checking
Linear Programming Excel Solver.
Intro to Computer Science CS1510 Dr. Sarah Diesburg
© T Madas.
Modeling Sudoku as a CNF Formula
Digital Circuits.
HW#3: Due Nov 8 23:59 NOTE. Submit both hardcopy and softcopy.
C++ Array 1.
Philosophical Methods
What if Craig doesn’t have a calculator?
Presentation transcript:

HW #2. Due Apr 25 23:59 Do NOT forget to submit both a hardcopy solution to the HW box and a softcopy solution to TA

1. Verify the following program using SAT solver 1. Translate the program and the assertion into a SSA form 2. Create a proposition logic formula A from the SSA representation 3. Translate the formula A into CNF 4. Run Minisat on A_CNF and capture the result (see the class homepage to find relevant information) and interpret the result /* Assume that x and y are 2 bit unsigned integers */ /* Also assume that x+y <= 3 */ void f(unsigned int y) { unsigned int x=1; x=x+y; if (x==2) x+=1; else x=2; assert(x ==2); } Intro. to Logic CS402

Make a Latin square solver like Sudoku solver using minisat2 2. A Latin square is an n × n table filled with n different symbols in such a way that each symbol occurs exactly once in each row and exactly once in each column. Here is an example for the 3x3 table. Encode a 3x3 Latin square problem in a SAT formula using the following variable names and explain your encoding scheme Make a Latin square solver like Sudoku solver using minisat2 Translate your SAT encoding into DIMACS CNF formula For example, if TA adds the 3 clauses “x111 /\ x212 /\ x313” (i.e., (1, 2, 3) as the first row) into your formula, minisat2 should make a model “x122/\ x223 /\ x321/\ x133/\ x231 /\x332” Or “x132/\ x233 /\ x331/\ x123/\ x221 /\x322” x111 x211 x311 x121 x221 x321 x131 x231 x331 x112 x212 x312 x113 x213 x313 x322 x332 Intro. to Logic CS402