Equality Logic and Uninterpreted Functions

Size: px
Start display at page:

Download "Equality Logic and Uninterpreted Functions"

Transcription

1 Equality Logic and Uninterpreted Functions Seminar: Decision Procedures Michaela Tießler

2 Agenda 1. Definitions 2. Use of Uninterpreted Functions 3. Decision Procedures

3 formula: atom: term: Equality Logic (= Theory of Equality) formula formula formula (formula) atom term = term identifier constant Identifiers are variables defined over a single infinite domain Constants are elements from the same domain as the identifier Example: u1 = x1 + y1 u2 = x2 +y2 z = u1 u2

4 Interpretation of = in Equality Logic Reflexivity x x = x Symmetry x, y x = y y = x Transitivity x, y, z x = y y = z x = z

5 Equality Logic and Uninterpreted Functions (EUF) formula: atom: term: formula formula formula (formula) atom term = term predicate symbol (list of terms) identifier function symbol (list of terms) Identifiers are variables defined over a single infinite domain Example: u1=f(x1, y1) u2=f(x2, y2) z = G (u1, u2)

6 Interpretation of = in EUF Reflexivity x x = x Symmetry x, y x = y y = x Transitivity x, y, z x = y y = z x = z Congruence t,,, t., t, /,, t. / 0 t 0 = t 0 / F t,,, t. = F(t, /,, t. / )

7 Negation Normal Form (NNF) Negations are only applied to atoms Each formula can easily be transformed to NNF by applying three rules A A (A B) A B (A B) A B

8 Agenda 1. Definitions 2. Use of Uninterpreted Functions 3. Decision Procedures

9 Why do we use uninterpreted functions? Used for abstracting, or generalizing, theorems Easier to reason about Example use: Proving Equivalence of Programs

10 Use Case: Verifying a Compilation Process with Translation Validation Suppose that a source program contains the statement z = Outcome of the compiling process: x, x 8 8 y, + y 8 u, = < = ; u < 8 = u, u, ; = y, + y 8 ; z = u 8 > Ø New auxiliary variables u,, u 8 and have been added Verification condition: u, = x, u x 8 = u, u, = y, + y 8 z = u 8 8 z = x, x 8 8 y, + y 8 Abstracted version: (u, = F(x,, x 8 ) u 8 = G(u,, u, ) = H(y,, y 8 ) z = G(u 8, ) z = G G F x,, x 8, F x,, x 8, H y,, y 8

11 Agenda 1. Definitions 2. Use of Uninterpreted Functions 3. Decision Procedures Simplify Equality Formula Ackermann`s Reduction Congruence Closure

12 Simplify Equality Formula Equality Graphs x, x 8 x C x D Dashed edges represent equalities Solid edges represent disequalities

13 Simplify Equality Formula Algorithm Input: Equality formula φ F 1. Let φ F/ = φ F 2. Construct the equality graph G F (φ F ) 3. Replace each pure literal "x = y" or "x y" in φ F with TRUE, if (x, y) not in a simple contradictory cycle 4. If anything changed in the last two steps go to step 2 5. Return φ F

14 Simplify Equality Formula Example φ F x, x 8 f, f 8 x, = f, y, = y 8 = y D y, = y D y 8 y D z = g, g, = g 8 z g 8 z Equality Graph x, x 8 y, z f, f 8 y 8 y D g, g 8

15 Simplify Equality Formula Example φ F x, x 8 f, f 8 x, = f, y, = y 8 = y D y, = y D y 8 y D z = g, g, = g 8 z g 8 z Replacing literals TRUE TRUE TRUE φ F y, = y 8 = y D y, = y D y 8 y D z = g, g, = g 8 z g 8 TRUE

16 Simplify Equality Formula Example φ F x, x 8 f, f 8 x, = f, y, = y 8 = y D y, = y D y 8 y D z = g, g, = g 8 z g 8 z Simplification φ F y, = y 8 = y D y, = y D y 8 y D z = g, g, = g 8 z g 8

17 Simplify Equality Formula Example φ F y, = y 8 = y D y, = y D y 8 y D z = g, g, = g 8 z g 8 Reconstructing Equality Graph y, y D z y 8 g, g 8 à no further changes possible

18 Ackermann`s Reduction Transforms EUF formula φ ST to an equality logic formula φ F of the form: φ F FC F flat F Where FC F is a conjunction of functional consistency constraints and flat F is a flattening of φ ST Functional consistency: Instances of the same function return the same value if given equal arguments φ F is valid if and only if φ ST is valid

19 Ackermann`s Reduction Algorithm 1. Indexing the functions, beginning with the inner functions 2. Take the original expression φ ST and transform it to its flat flat F 3. Compute conjunction of constraints FC F 4. Let φ F FC F flat F

20 Ackermann`s Reduction Example x, = x 8 y, = y 8 F G G x,, y, = F G G x 8, y 8 g 8 g D g, f, f 8 1. Indexing the functions, beginning with the inner functions g, G x, G x 8 g 8 G g, g D G f, F g 8 f 8 F g D

21 Ackermann`s Reduction Example x, = x 8 y, = y 8 F G G x,, y, = F G G x 8, y 8 g 8 g D g, f, f 8 2. Take the original expression φ ST and transform it to its flat flat F flat F : = x, = x 8 y, = y 8 f, = f 8

22 Ackermann`s Reduction Example x, = x 8 y, = y 8 F G G x,, y, = F G G x 8, y 8 g 8 g D g, f, f 8 3. Compute conjunction of constraints FC F : = x, = x 8 g, = g, = g 8 = g D g 8 = g D y, = y 8 f, = f 8 x, = g, g, = g 8 x 8 = = g D g, = g 8 = g D

23 Ackermann`s Reduction Example x, = x 8 y, = y 8 F G G x,, y, = F G G x 8, y 8 g 8 g D g, 4. Let φ F FC F flat F f, f 8 φ F := (x, = x 8 g, = g, = g 8 = g D g 8 = g D y, = y 8 f, = f 8 x, = g, g, = g 8 x 8 = = g D g, = g 8 = g D ) (x, = x 8 y, = y 8 f, = f 8 )

24 Congruence Closure Algorithm to decide a conjunction of equalities and uninterpreted functions Input: A conjunction φ ST of equality predicates over variables and uninterpreted functions in negation normal form Output: equivalence classes Satisfiability of φ ST

25 Congruence Closure Algorithm 1. Put two terms t,, t 8 in their own equivalence class if (t, = t 8 ) is a predicate in φ ST 2. Merge equivalence classes with a shared term until there are no more classes to be merged 3. Merge terms F(t 0 ) and F(t \ ) if t 0 and t \ are in the same equivalence class 4. φ ST is Satisfiable if there doesn t exist any unequality t 0 t \ with t 0 and t \ of the same equivalence class

26 Congruence Closure Example φ ST : = x, = x 8 x 8 = x D = x C x C x, F x,, x C F D G x, = ) 1. Put two terms t,, t 8 in their own equivalence class if (t, = t 8 ) is a predicate in φ ST x, F(x,,x C ) G(x, ) x D x 8 x 8 x C D ) )

27 Congruence Closure Example φ ST : = x, = x 8 x 8 = x D = x C x C x, F x,, x C F D G x, = ) 2. Merge equivalence classes with a shared term until there are no more classes to be merged x D x 8 F(x,,x 8 ) x C G(x, ) x, D ) )

28 Congruence Closure Example φ ST : = x, = x 8 x 8 = x D = x C x C x, F x,, x C F D G x, = ) 3. Merge terms F(t 0 ) and F(t \ ) if t 0 and t \ are in the same equivalence class F(x,,x C ) G(x, ) x, x D x 8 x C D ) )

29 Congruence Closure Example φ ST : = x, = x 8 x 8 = x D = x C x C x, F x,, x C F D G x, = ) 4. φ ST is Satisfiable if there doesn t exist any unequality t 0 t \ with t 0 and t \ of the same equivalence class x,, x 8, x D,x C, F x,, x 8, F x D, G x, }, {G x C F x,, x C F x D Unsatisfiable

30 Congruence Closure based on Graphs G = (V, E) u, v directed Graph vertices λ(v) R label Relation on V u, v congruent under R if λ u = λ v && u 0,v 0 with V u = u,, u., V v = v,, v. u i, v i ε R {u, v} R u, v closed under congruences R if u, v with u, v congruent under R R / minimal extention of R; with R / equivalence Relation && R / closed under R

31 Congruence Closure based on Graphs Example F V1 x, V2 x 8 V3 F V4 F V5 V6 x D V7 x C V8 R Relation V1, V4 V1, V4 congruent under R Ø Congruence closure of R must include at least V2,V5 and V3,V6 Ø Minimal equivalence Relation: V1,V4, V2, V5, V3,V6

32 Congruence Closure Example for Implementation Based on the operations union and find: find(u): returns the unique name of the equivalence class u belongs to union(u, v): combines equivalence classes of vertices u and v Other operations: congruent(u, v): returns true if u and v are congruent

33 Congruence Closure Example for Implementation Compute congruence closure merge (u, v) if find(u)=find(v) then return P = set of predecessors of all vertices equivalent to u P = set of predecessors of all vertices equivalent to v union(u, v) For each pair (x, y) with x P and y P if find (u) find (v) && congruent(u,v) = TRUE then merge(x, y)

34 Congruence Closure Example for Implementation Decision Procedure t, = u, t = u r, = s, r = s, Construct Graph G which corresponds to the set of all terms appearing in the conjunction let τ t be the vertex in G representing t let R be the identityrelation on the vertices of G for 1 i p merge τ t 0, τ u 0 for 1 i q if τ r, τ s 0 equivalent then return UNSATISFIABLE return SATISFIABLE

35 Congruence Closure Complexity Graph based CC: O nm with n number of vertices of G and m number of edges of G Average time of fastest CC algorithm: O n log n with n length of conjunction

36 Further approaches Graph-Based Reduction to Propositional Logic Solving equality logic formulas by relying on the small-model property of this logic

SMT BASICS WS 2017/2018 ( ) LOGIC SATISFIABILITY MODULO THEORIES. Institute for Formal Models and Verification Johannes Kepler Universität Linz

SMT BASICS WS 2017/2018 ( ) LOGIC SATISFIABILITY MODULO THEORIES. Institute for Formal Models and Verification Johannes Kepler Universität Linz LOGIC SATISFIABILITY MODULO THEORIES SMT BASICS WS 2017/2018 (342.208) Armin Biere Martina Seidl biere@jku.at martina.seidl@jku.at Institute for Formal Models and Verification Johannes Kepler Universität

More information

Decision Procedures for Equality Logic and Uninterpreted Functions

Decision Procedures for Equality Logic and Uninterpreted Functions 4 Decision Procedures for Equality Logic and Uninterpreted Functions In Chap. 3, we saw how useful the theory of equality logic with uninterpretedfunction (EUF) is. In this chapter, we concentrate on decision

More information

(Yet another) decision procedure for Equality Logic

(Yet another) decision procedure for Equality Logic (Yet another) decision procedure for Equality Logic Ofer Strichman and Orly Meir echnion echnion 1 Equality Logic 0 0 0 1 0 1 E : (x 1 = x 2 Æ (x 2 x 3 Ç x 1 x 3 )) Domain: x 1,x 2,x 3 2 N he satisfiability

More information

SMT: Satisfiability Modulo Theories

SMT: Satisfiability Modulo Theories SMT: Satisfiability Modulo Theories Ranjit Jhala, UC San Diego April 9, 2013 Decision Procedures Last Time Propositional Logic Today 1. Combining SAT and Theory Solvers 2. Theory Solvers Theory of Equality

More information

1 FUNDAMENTALS OF LOGIC NO.10 HERBRAND THEOREM Tatsuya Hagino hagino@sfc.keio.ac.jp lecture URL https://vu5.sfc.keio.ac.jp/slide/ 2 So Far Propositional Logic Logical connectives (,,, ) Truth table Tautology

More information

WHAT IS AN SMT SOLVER? Jaeheon Yi - April 17, 2008

WHAT IS AN SMT SOLVER? Jaeheon Yi - April 17, 2008 WHAT IS AN SMT SOLVER? Jaeheon Yi - April 17, 2008 WHAT I LL TALK ABOUT Propositional Logic Terminology, Satisfiability, Decision Procedure First-Order Logic Terminology, Background Theories Satisfiability

More information

Solutions to Sample Problems for Midterm

Solutions to Sample Problems for Midterm Solutions to Sample Problems for Midterm Problem 1. The dual of a proposition is defined for which contains only,,. It is For a compound proposition that only uses,, as operators, we obtained the dual

More information

First-Order Logic First-Order Theories. Roopsha Samanta. Partly based on slides by Aaron Bradley and Isil Dillig

First-Order Logic First-Order Theories. Roopsha Samanta. Partly based on slides by Aaron Bradley and Isil Dillig First-Order Logic First-Order Theories Roopsha Samanta Partly based on slides by Aaron Bradley and Isil Dillig Roadmap Review: propositional logic Syntax and semantics of first-order logic (FOL) Semantic

More information

Equalities and Uninterpreted Functions. Chapter 3. Decision Procedures. An Algorithmic Point of View. Revision 1.0

Equalities and Uninterpreted Functions. Chapter 3. Decision Procedures. An Algorithmic Point of View. Revision 1.0 Equalities and Uninterpreted Functions Chapter 3 Decision Procedures An Algorithmic Point of View D.Kroening O.Strichman Revision 1.0 Outline Decision Procedures Equalities and Uninterpreted Functions

More information

9. Quantifier-free Equality and Data Structures

9. Quantifier-free Equality and Data Structures 9. Quantifier-free Equality and Data Structures The Theory of Equality T E Σ E : {=, a, b, c,..., f, g, h,..., p, q, r,...} uninterpreted symbols: constants a, b, c,... functions f, g, h,... predicates

More information

Combining Decision Procedures

Combining Decision Procedures Combining Decision Procedures Ashish Tiwari tiwari@csl.sri.com http://www.csl.sri.com/. Computer Science Laboratory SRI International 333 Ravenswood Menlo Park, CA 94025 Combining Decision Procedures (p.1

More information

Automated Program Verification and Testing 15414/15614 Fall 2016 Lecture 7: Procedures for First-Order Theories, Part 1

Automated Program Verification and Testing 15414/15614 Fall 2016 Lecture 7: Procedures for First-Order Theories, Part 1 Automated Program Verification and Testing 15414/15614 Fall 2016 Lecture 7: Procedures for First-Order Theories, Part 1 Matt Fredrikson mfredrik@cs.cmu.edu October 17, 2016 Matt Fredrikson Theory Procedures

More information

Motivation. CS389L: Automated Logical Reasoning. Lecture 10: Overview of First-Order Theories. Signature and Axioms of First-Order Theory

Motivation. CS389L: Automated Logical Reasoning. Lecture 10: Overview of First-Order Theories. Signature and Axioms of First-Order Theory Motivation CS389L: Automated Logical Reasoning Lecture 10: Overview of First-Order Theories Işıl Dillig Last few lectures: Full first-order logic In FOL, functions/predicates are uninterpreted (i.e., structure

More information

CS 514, Mathematics for Computer Science Mid-semester Exam, Autumn 2017 Department of Computer Science and Engineering IIT Guwahati

CS 514, Mathematics for Computer Science Mid-semester Exam, Autumn 2017 Department of Computer Science and Engineering IIT Guwahati CS 514, Mathematics for Computer Science Mid-semester Exam, Autumn 2017 Department of Computer Science and Engineering IIT Guwahati Important 1. No questions about the paper will be entertained during

More information

The Calculus of Computation: Decision Procedures with Applications to Verification. Part I: FOUNDATIONS. by Aaron Bradley Zohar Manna

The Calculus of Computation: Decision Procedures with Applications to Verification. Part I: FOUNDATIONS. by Aaron Bradley Zohar Manna The Calculus of Computation: Decision Procedures with Applications to Verification Part I: FOUNDATIONS by Aaron Bradley Zohar Manna 1. Propositional Logic(PL) Springer 2007 1-1 1-2 Propositional Logic(PL)

More information

First-Order Logic (FOL)

First-Order Logic (FOL) First-Order Logic (FOL) Also called Predicate Logic or Predicate Calculus 2. First-Order Logic (FOL) FOL Syntax variables x, y, z, constants a, b, c, functions f, g, h, terms variables, constants or n-ary

More information

Automated Program Verification and Testing 15414/15614 Fall 2016 Lecture 8: Procedures for First-Order Theories, Part 2

Automated Program Verification and Testing 15414/15614 Fall 2016 Lecture 8: Procedures for First-Order Theories, Part 2 Automated Program Verification and Testing 15414/15614 Fall 2016 Lecture 8: Procedures for First-Order Theories, Part 2 Matt Fredrikson mfredrik@cs.cmu.edu October 17, 2016 Matt Fredrikson Theory Procedures

More information

Satisfiability Modulo Theories (SMT)

Satisfiability Modulo Theories (SMT) Satisfiability Modulo Theories (SMT) Sylvain Conchon Cours 7 / 9 avril 2014 1 Road map The SMT problem Modern efficient SAT solvers CDCL(T) Examples of decision procedures: equality (CC) and difference

More information

Tutorial 1: Modern SMT Solvers and Verification

Tutorial 1: Modern SMT Solvers and Verification University of Illinois at Urbana-Champaign Tutorial 1: Modern SMT Solvers and Verification Sayan Mitra Electrical & Computer Engineering Coordinated Science Laboratory University of Illinois at Urbana

More information

Learning Goals of CS245 Logic and Computation

Learning Goals of CS245 Logic and Computation Learning Goals of CS245 Logic and Computation Alice Gao April 27, 2018 Contents 1 Propositional Logic 2 2 Predicate Logic 4 3 Program Verification 6 4 Undecidability 7 1 1 Propositional Logic Introduction

More information

Discrete Mathematics. W. Ethan Duckworth. Fall 2017, Loyola University Maryland

Discrete Mathematics. W. Ethan Duckworth. Fall 2017, Loyola University Maryland Discrete Mathematics W. Ethan Duckworth Fall 2017, Loyola University Maryland Contents 1 Introduction 4 1.1 Statements......................................... 4 1.2 Constructing Direct Proofs................................

More information

Topics in Model-Based Reasoning

Topics in Model-Based Reasoning Towards Integration of Proving and Solving Dipartimento di Informatica Università degli Studi di Verona Verona, Italy March, 2014 Automated reasoning Artificial Intelligence Automated Reasoning Computational

More information

Satisfiability Modulo Theories (SMT)

Satisfiability Modulo Theories (SMT) CS510 Software Engineering Satisfiability Modulo Theories (SMT) Slides modified from those by Aarti Gupta Textbook: The Calculus of Computation by A. Bradley and Z. Manna 1 Satisfiability Modulo Theory

More information

Constraint Solving for Finite Model Finding in SMT Solvers

Constraint Solving for Finite Model Finding in SMT Solvers myjournal manuscript No. (will be inserted by the editor) Constraint Solving for Finite Model Finding in SMT Solvers Andrew Reynolds Cesare Tinelli Clark Barrett Received: date / Accepted: date Abstract

More information

Leonardo de Moura Microsoft Research

Leonardo de Moura Microsoft Research Leonardo de Moura Microsoft Research Is formula F satisfiable modulo theory T? SMT solvers have specialized algorithms for T b + 2 = c and f(read(write(a,b,3), c-2)) f(c-b+1) b + 2 = c and f(read(write(a,b,3),

More information

Propositional and Predicate Logic - V

Propositional and Predicate Logic - V Propositional and Predicate Logic - V Petr Gregor KTIML MFF UK WS 2016/2017 Petr Gregor (KTIML MFF UK) Propositional and Predicate Logic - V WS 2016/2017 1 / 21 Formal proof systems Hilbert s calculus

More information

Using Decision Procedures to Accelerate Domain-Specific Deductive Synthesis Systems

Using Decision Procedures to Accelerate Domain-Specific Deductive Synthesis Systems Using Decision Procedures to Accelerate Domain-Specific Deductive Synthesis Systems Jeffrey Van Baalen Steven Roach M.S. 269-2 NASA Ames Research Center Moffet Field, CA {jvb, sroach}@ptolemy.arc.nasa.gov

More information

Propositional Resolution

Propositional Resolution Artificial Intelligence Propositional Resolution Marco Piastra Propositional Resolution 1] Deductive systems and automation Is problem decidible? A deductive system a la Hilbert (i.e. derivation using

More information

UCLID: Deciding Combinations of Theories via Eager Translation to SAT. SAT-based Decision Procedures

UCLID: Deciding Combinations of Theories via Eager Translation to SAT. SAT-based Decision Procedures UCLID: Deciding Combinations of Theories via Eager Translation to SAT Sanjit A. Seshia SAT-based Decision Procedures Input Formula Input Formula Satisfiability-preserving Boolean Encoder Boolean Formula

More information

The Simplify Theorem Prover

The Simplify Theorem Prover The Simplify Theorem Prover Class Notes for Lecture No.8 by Mooly Sagiv Notes prepared by Daniel Deutch Introduction This lecture will present key aspects in the leading theorem proving systems existing

More information

A Randomized Satisfiability Procedure for Arithmetic and Uninterpreted Function Symbols

A Randomized Satisfiability Procedure for Arithmetic and Uninterpreted Function Symbols A Randomized Satisfiability Procedure for Arithmetic and Uninterpreted Function Symbols Sumit Gulwani and George C. Necula University of California, Berkeley {gulwani,necula}@cs.berkeley.edu Abstract.

More information

Syntax. Notation Throughout, and when not otherwise said, we assume a vocabulary V = C F P.

Syntax. Notation Throughout, and when not otherwise said, we assume a vocabulary V = C F P. First-Order Logic Syntax The alphabet of a first-order language is organised into the following categories. Logical connectives:,,,,, and. Auxiliary symbols:.,,, ( and ). Variables: we assume a countable

More information

Interpolation. Seminar Slides. Betim Musa. 27 th June Albert-Ludwigs-Universität Freiburg

Interpolation. Seminar Slides. Betim Musa. 27 th June Albert-Ludwigs-Universität Freiburg Interpolation Seminar Slides Albert-Ludwigs-Universität Freiburg Betim Musa 27 th June 2015 Motivation program add(int a, int b) { var x,i : int; l 0 assume(b 0); l 1 x := a; l 2 i := 0; while(i < b) {

More information

CS156: The Calculus of Computation

CS156: The Calculus of Computation CS156: The Calculus of Computation Zohar Manna Winter 2010 It is reasonable to hope that the relationship between computation and mathematical logic will be as fruitful in the next century as that between

More information

Logic and Discrete Mathematics. Section 3.5 Propositional logical equivalence Negation of propositional formulae

Logic and Discrete Mathematics. Section 3.5 Propositional logical equivalence Negation of propositional formulae Logic and Discrete Mathematics Section 3.5 Propositional logical equivalence Negation of propositional formulae Slides version: January 2015 Logical equivalence of propositional formulae Propositional

More information

Round 9: Satisfiability Modulo Theories, Part II

Round 9: Satisfiability Modulo Theories, Part II Round 9: Satisfiability Modulo Theories, Part II Tommi Junttila Aalto University School of Science Department of Computer Science CS-E322 Declarative Programming Spring 218 Tommi Junttila (Aalto University)

More information

NP-completeness. Chapter 34. Sergey Bereg

NP-completeness. Chapter 34. Sergey Bereg NP-completeness Chapter 34 Sergey Bereg Oct 2017 Examples Some problems admit polynomial time algorithms, i.e. O(n k ) running time where n is the input size. We will study a class of NP-complete problems

More information

Modal logics and their semantics

Modal logics and their semantics Modal logics and their semantics Joshua Sack Department of Mathematics and Statistics, California State University Long Beach California State University Dominguez Hills Feb 22, 2012 Relational structures

More information

Foundations of Mathematics MATH 220 FALL 2017 Lecture Notes

Foundations of Mathematics MATH 220 FALL 2017 Lecture Notes Foundations of Mathematics MATH 220 FALL 2017 Lecture Notes These notes form a brief summary of what has been covered during the lectures. All the definitions must be memorized and understood. Statements

More information

A Resolution Decision Procedure for the Guarded Fragment with Transitive Guards

A Resolution Decision Procedure for the Guarded Fragment with Transitive Guards A Resolution Decision Procedure for the Guarded Fragment with Transitive Guards Yevgeny Kazakov MPI für Informatik, Saarbrücken, Germany ykazakov@mpi-sb.mpg.de Abstract. We show how well-known refinements

More information

Computation and Inference

Computation and Inference Computation and Inference N. Shankar Computer Science Laboratory SRI International Menlo Park, CA July 13, 2018 Length of the Longest Increasing Subsequence You have a sequence of numbers, e.g., 9, 7,

More information

Rewrite-Based Satisfiability Procedures for Recursive Data Structures

Rewrite-Based Satisfiability Procedures for Recursive Data Structures Rewrite-Based Satisfiability Procedures for Recursive Data Structures Maria Paola Bonacina and Mnacho Echenim Dipartimento di Informatica Università degli Studi di Verona, Italy Abstract The superposition

More information

CS 512, Spring 2017, Handout 10 Propositional Logic: Conjunctive Normal Forms, Disjunctive Normal Forms, Horn Formulas, and other special forms

CS 512, Spring 2017, Handout 10 Propositional Logic: Conjunctive Normal Forms, Disjunctive Normal Forms, Horn Formulas, and other special forms CS 512, Spring 2017, Handout 10 Propositional Logic: Conjunctive Normal Forms, Disjunctive Normal Forms, Horn Formulas, and other special forms Assaf Kfoury 5 February 2017 Assaf Kfoury, CS 512, Spring

More information

CSE507. Satisfiability Modulo Theories. Computer-Aided Reasoning for Software. Emina Torlak

CSE507. Satisfiability Modulo Theories. Computer-Aided Reasoning for Software. Emina Torlak Computer-Aided Reasoning for Software CSE507 Satisfiability Modulo Theories courses.cs.washington.edu/courses/cse507/18sp/ Emina Torlak emina@cs.washington.edu Today Last lecture Practical applications

More information

Overview. CS389L: Automated Logical Reasoning. Lecture 7: Validity Proofs and Properties of FOL. Motivation for semantic argument method

Overview. CS389L: Automated Logical Reasoning. Lecture 7: Validity Proofs and Properties of FOL. Motivation for semantic argument method Overview CS389L: Automated Logical Reasoning Lecture 7: Validity Proofs and Properties of FOL Agenda for today: Semantic argument method for proving FOL validity Işıl Dillig Important properties of FOL

More information

CHAPTER 4 CLASSICAL PROPOSITIONAL SEMANTICS

CHAPTER 4 CLASSICAL PROPOSITIONAL SEMANTICS CHAPTER 4 CLASSICAL PROPOSITIONAL SEMANTICS 1 Language There are several propositional languages that are routinely called classical propositional logic languages. It is due to the functional dependency

More information

Lecture #14: NP-Completeness (Chapter 34 Old Edition Chapter 36) Discussion here is from the old edition.

Lecture #14: NP-Completeness (Chapter 34 Old Edition Chapter 36) Discussion here is from the old edition. Lecture #14: 0.0.1 NP-Completeness (Chapter 34 Old Edition Chapter 36) Discussion here is from the old edition. 0.0.2 Preliminaries: Definition 1 n abstract problem Q is a binary relations on a set I of

More information

Predicate Abstraction via Symbolic Decision Procedures

Predicate Abstraction via Symbolic Decision Procedures Predicate Abstraction via Symbolic Decision Procedures Shuvendu K. Lahiri Thomas Ball Byron Cook May 26, 2005 Technical Report MSR-TR-2005-53 Microsoft Research Microsoft Corporation One Microsoft Way

More information

First-Order Theorem Proving and Vampire

First-Order Theorem Proving and Vampire First-Order Theorem Proving and Vampire Laura Kovács 1,2 and Martin Suda 2 1 TU Wien 2 Chalmers Outline Introduction First-Order Logic and TPTP Inference Systems Saturation Algorithms Redundancy Elimination

More information

A Tableau Calculus for Minimal Modal Model Generation

A Tableau Calculus for Minimal Modal Model Generation M4M 2011 A Tableau Calculus for Minimal Modal Model Generation Fabio Papacchini 1 and Renate A. Schmidt 2 School of Computer Science, University of Manchester Abstract Model generation and minimal model

More information

Reduced Ordered Binary Decision Diagrams

Reduced Ordered Binary Decision Diagrams Reduced Ordered Binary Decision Diagrams Lecture #12 of Advanced Model Checking Joost-Pieter Katoen Lehrstuhl 2: Software Modeling & Verification E-mail: katoen@cs.rwth-aachen.de December 13, 2016 c JPK

More information

Exercises 1 - Solutions

Exercises 1 - Solutions Exercises 1 - Solutions SAV 2013 1 PL validity For each of the following propositional logic formulae determine whether it is valid or not. If it is valid prove it, otherwise give a counterexample. Note

More information

A brief introduction to Logic. (slides from

A brief introduction to Logic. (slides from A brief introduction to Logic (slides from http://www.decision-procedures.org/) 1 A Brief Introduction to Logic - Outline Propositional Logic :Syntax Propositional Logic :Semantics Satisfiability and validity

More information

Predicate Calculus. Formal Methods in Verification of Computer Systems Jeremy Johnson

Predicate Calculus. Formal Methods in Verification of Computer Systems Jeremy Johnson Predicate Calculus Formal Methods in Verification of Computer Systems Jeremy Johnson Outline 1. Motivation 1. Variables, quantifiers and predicates 2. Syntax 1. Terms and formulas 2. Quantifiers, scope

More information

Essential facts about NP-completeness:

Essential facts about NP-completeness: CMPSCI611: NP Completeness Lecture 17 Essential facts about NP-completeness: Any NP-complete problem can be solved by a simple, but exponentially slow algorithm. We don t have polynomial-time solutions

More information

Propositional Logic. Testing, Quality Assurance, and Maintenance Winter Prof. Arie Gurfinkel

Propositional Logic. Testing, Quality Assurance, and Maintenance Winter Prof. Arie Gurfinkel Propositional Logic Testing, Quality Assurance, and Maintenance Winter 2018 Prof. Arie Gurfinkel References Chpater 1 of Logic for Computer Scientists http://www.springerlink.com/content/978-0-8176-4762-9/

More information

Module 2: Reflecting on One s Problems

Module 2: Reflecting on One s Problems MATH55 Module : Reflecting on One s Problems Main Math concepts: Translations, Reflections, Graphs of Equations, Symmetry Auxiliary ideas: Working with quadratics, Mobius maps, Calculus, Inverses I. Transformations

More information

07 Equational Logic and Algebraic Reasoning

07 Equational Logic and Algebraic Reasoning CAS 701 Fall 2004 07 Equational Logic and Algebraic Reasoning Instructor: W. M. Farmer Revised: 17 November 2004 1 What is Equational Logic? Equational logic is first-order logic restricted to languages

More information

The non-logical symbols determine a specific F OL language and consists of the following sets. Σ = {Σ n } n<ω

The non-logical symbols determine a specific F OL language and consists of the following sets. Σ = {Σ n } n<ω 1 Preliminaries In this chapter we first give a summary of the basic notations, terminology and results which will be used in this thesis. The treatment here is reduced to a list of definitions. For the

More information

Integrating Answer Set Programming and Satisfiability Modulo Theories

Integrating Answer Set Programming and Satisfiability Modulo Theories Integrating Answer Set Programming and Satisfiability Modulo Theories Ilkka Niemelä Helsinki University of Technology (TKK) Department of Information and Computer Science http://www.tcs.tkk.fi/ ini/ References:

More information

Math Exam Jam Concise. Contents. 1 Algebra Review 2. 2 Functions and Graphs 2. 3 Exponents and Radicals 3. 4 Quadratic Functions and Equations 4

Math Exam Jam Concise. Contents. 1 Algebra Review 2. 2 Functions and Graphs 2. 3 Exponents and Radicals 3. 4 Quadratic Functions and Equations 4 Contents 1 Algebra Review 2 2 Functions and Graphs 2 3 Exponents and Radicals 3 4 Quadratic Functions and Equations 4 5 Exponential and Logarithmic Functions 5 6 Systems of Linear Equations 6 7 Inequalities

More information

COMP219: Artificial Intelligence. Lecture 20: Propositional Reasoning

COMP219: Artificial Intelligence. Lecture 20: Propositional Reasoning COMP219: Artificial Intelligence Lecture 20: Propositional Reasoning 1 Overview Last time Logic for KR in general; Propositional Logic; Natural Deduction Today Entailment, satisfiability and validity Normal

More information

CTL-RP: A Computational Tree Logic Resolution Prover

CTL-RP: A Computational Tree Logic Resolution Prover 1 -RP: A Computational Tree Logic Resolution Prover Lan Zhang a,, Ullrich Hustadt a and Clare Dixon a a Department of Computer Science, University of Liverpool Liverpool, L69 3BX, UK E-mail: {Lan.Zhang,

More information

Automata on Infinite words and LTL Model Checking

Automata on Infinite words and LTL Model Checking Automata on Infinite words and LTL Model Checking Rodica Condurache Lecture 4 Lecture 4 Automata on Infinite words and LTL Model Checking 1 / 35 Labeled Transition Systems Let AP be the (finite) set of

More information

CS156: The Calculus of Computation Zohar Manna Winter 2010

CS156: The Calculus of Computation Zohar Manna Winter 2010 Page 3 of 35 Page 4 of 35 quantifiers CS156: The Calculus of Computation Zohar Manna Winter 2010 Chapter 2: First-Order Logic (FOL) existential quantifier x. F [x] there exists an x such that F [x] Note:

More information

(a) Write down the value of q and of r. (2) Write down the equation of the axis of symmetry. (1) (c) Find the value of p. (3) (Total 6 marks)

(a) Write down the value of q and of r. (2) Write down the equation of the axis of symmetry. (1) (c) Find the value of p. (3) (Total 6 marks) 1. Let f(x) = p(x q)(x r). Part of the graph of f is shown below. The graph passes through the points ( 2, 0), (0, 4) and (4, 0). (a) Write down the value of q and of r. (b) Write down the equation of

More information

Leonardo de Moura Microsoft Research

Leonardo de Moura Microsoft Research Leonardo de Moura Microsoft Research Logic is The Calculus of Computer Science (Z. Manna). High computational complexity Naïve solutions will not scale Is formula F satisfiable modulo theory T? SMT solvers

More information

Week 3: Reductions and Completeness

Week 3: Reductions and Completeness Computational Complexity Theory Summer HSSP 2018 Week 3: Reductions and Completeness Dylan Hendrickson MIT Educational Studies Program 3.1 Reductions Suppose I know how to solve some problem quickly. How

More information

Propositional Logic: Models and Proofs

Propositional Logic: Models and Proofs Propositional Logic: Models and Proofs C. R. Ramakrishnan CSE 505 1 Syntax 2 Model Theory 3 Proof Theory and Resolution Compiled at 11:51 on 2016/11/02 Computing with Logic Propositional Logic CSE 505

More information

Algebra 1 Mathematics: to Hoover City Schools

Algebra 1 Mathematics: to Hoover City Schools Jump to Scope and Sequence Map Units of Study Correlation of Standards Special Notes Scope and Sequence Map Conceptual Categories, Domains, Content Clusters, & Standard Numbers NUMBER AND QUANTITY (N)

More information

Propositional inference, propositional agents

Propositional inference, propositional agents ropositional inference, propositional agents Chapter 7.5 7.7 Chapter 7.5 7.7 1 Outline Inference rules and theorem proving forward chaining backward chaining resolution Efficient model checking algorithms

More information

WUCT121. Discrete Mathematics. Logic. Tutorial Exercises

WUCT121. Discrete Mathematics. Logic. Tutorial Exercises WUCT11 Discrete Mathematics Logic Tutorial Exercises 1 Logic Predicate Logic 3 Proofs 4 Set Theory 5 Relations and Functions WUCT11 Logic Tutorial Exercises 1 Section 1: Logic Question1 For each of the

More information

Lecture 2: Isometries of R 2

Lecture 2: Isometries of R 2 Chapter 1 Lecture 2: Isometries of R 2 1.1 The synthetic vs. analytic approach; axiomatics We discussed briefly what an axiomatic system is: a collection of undefined terms related by axioms. Further terms

More information

KE/Tableaux. What is it for?

KE/Tableaux. What is it for? CS3UR: utomated Reasoning 2002 The term Tableaux refers to a family of deduction methods for different logics. We start by introducing one of them: non-free-variable KE for classical FOL What is it for?

More information

An Abstract Decision Procedure for a Theory of Inductive Data Types

An Abstract Decision Procedure for a Theory of Inductive Data Types An Abstract Decision Procedure for a Theory of Inductive Data Types lark Barrett Igor Shikanian Department of omputer Science ourant Institute of Mathematical Sciences New York University esare Tinelli

More information

AAA615: Formal Methods. Lecture 2 First-Order Logic

AAA615: Formal Methods. Lecture 2 First-Order Logic AAA615: Formal Methods Lecture 2 First-Order Logic Hakjoo Oh 2017 Fall Hakjoo Oh AAA615 2017 Fall, Lecture 2 September 24, 2017 1 / 29 First-Order Logic An extension of propositional logic with predicates,

More information

COT3100 SI Final Exam Review

COT3100 SI Final Exam Review 1 Symbols COT3100 SI Final Exam Review Jarrett Wendt Spring 2018 You ve learned a plethora of new Mathematical symbols this semester. Let s see if you know them all and what they re used for. How many

More information

Problem 1: Suppose A, B, C and D are finite sets such that A B = C D and C = D. Prove or disprove: A = B.

Problem 1: Suppose A, B, C and D are finite sets such that A B = C D and C = D. Prove or disprove: A = B. Department of Computer Science University at Albany, State University of New York Solutions to Sample Discrete Mathematics Examination III (Spring 2007) Problem 1: Suppose A, B, C and D are finite sets

More information

Foundations of Mathematics

Foundations of Mathematics Foundations of Mathematics L. Pedro Poitevin 1. Preliminaries 1.1. Sets We will naively think of a set as a collection of mathematical objects, called its elements or members. To indicate that an object

More information

Logic for Computer Scientists

Logic for Computer Scientists Logic for Computer Scientists Pascal Hitzler http://www.pascal-hitzler.de CS 499/699 Lecture, Winter Quarter 2011 Wright State University, Dayton, OH, U.S.A. [final version: 03/10/2011] Contents 1 Propositional

More information

Introduction. Foundations of Computing Science. Pallab Dasgupta Professor, Dept. of Computer Sc & Engg INDIAN INSTITUTE OF TECHNOLOGY KHARAGPUR

Introduction. Foundations of Computing Science. Pallab Dasgupta Professor, Dept. of Computer Sc & Engg INDIAN INSTITUTE OF TECHNOLOGY KHARAGPUR 1 Introduction Foundations of Computing Science Pallab Dasgupta Professor, Dept. of Computer Sc & Engg 2 Comments on Alan Turing s Paper "On Computable Numbers, with an Application to the Entscheidungs

More information

evaluate functions, expressed in function notation, given one or more elements in their domains

evaluate functions, expressed in function notation, given one or more elements in their domains Describing Linear Functions A.3 Linear functions, equations, and inequalities. The student writes and represents linear functions in multiple ways, with and without technology. The student demonstrates

More information

Quantifiers. Leonardo de Moura Microsoft Research

Quantifiers. Leonardo de Moura Microsoft Research Quantifiers Leonardo de Moura Microsoft Research Satisfiability a > b + 2, a = 2c + 10, c + b 1000 SAT a = 0, b = 3, c = 5 Model 0 > 3 + 2, 0 = 2 5 + 10, 5 + ( 3) 1000 Quantifiers x y x > 0 f x, y = 0

More information

Logic for Computer Scientists

Logic for Computer Scientists Logic for Computer Scientists Pascal Hitzler http://www.pascal-hitzler.de CS 499/699 Lecture, Spring Quarter 2010 Wright State University, Dayton, OH, U.S.A. Final version. Contents 1 Propositional Logic

More information

LOGIC PROPOSITIONAL REASONING

LOGIC PROPOSITIONAL REASONING LOGIC PROPOSITIONAL REASONING WS 2017/2018 (342.208) Armin Biere Martina Seidl biere@jku.at martina.seidl@jku.at Institute for Formal Models and Verification Johannes Kepler Universität Linz Version 2018.1

More information

What s Decidable About Arrays?

What s Decidable About Arrays? What s Decidable About Arrays? Aaron R. Bradley Zohar Manna Henny B. Sipma Computer Science Department Stanford University 1 Outline 0. Motivation 1. Theories of Arrays 2. SAT A 4. Undecidable Problems

More information

Lecture 2/11: Satisfiability Modulo Theories, Part I

Lecture 2/11: Satisfiability Modulo Theories, Part I EECS 219C: Computer-Aided Verification, Spr 15 Lecturer: S. A. Seshia Lecture 2/11: Satisfiability Modulo Theories, Part I Scribe: Daniel Bundala Editor: Sanjit A. Seshia Satisfiability modulo theories

More information

Hardware Design I Chap. 2 Basis of logical circuit, logical expression, and logical function

Hardware Design I Chap. 2 Basis of logical circuit, logical expression, and logical function Hardware Design I Chap. 2 Basis of logical circuit, logical expression, and logical function E-mail: shimada@is.naist.jp Outline Combinational logical circuit Logic gate (logic element) Definition of combinational

More information

First-order resolution for CTL

First-order resolution for CTL First-order resolution for Lan Zhang, Ullrich Hustadt and Clare Dixon Department of Computer Science, University of Liverpool Liverpool, L69 3BX, UK {Lan.Zhang, U.Hustadt, CLDixon}@liverpool.ac.uk Abstract

More information

SECONDARY MATHEMATICS I

SECONDARY MATHEMATICS I SECONDARY MATHEMATICS I The fundamental purpose of SECONDARY Mathematics I is to formalize and extend the mathematics that students learned in the middle grades. The critical areas, organized into units,

More information

MATH 2200 Final Review

MATH 2200 Final Review MATH 00 Final Review Thomas Goller December 7, 01 1 Exam Format The final exam will consist of 8-10 proofs It will take place on Tuesday, December 11, from 10:30 AM - 1:30 PM, in the usual room Topics

More information

Satisfiability Modulo Theories

Satisfiability Modulo Theories Satisfiability Modulo Theories Summer School on Formal Methods Menlo College, 2011 Bruno Dutertre and Leonardo de Moura bruno@csl.sri.com, leonardo@microsoft.com SRI International, Microsoft Research SAT/SMT

More information

Theory Combination. Clark Barrett. New York University. CS357, Stanford University, Nov 2, p. 1/24

Theory Combination. Clark Barrett. New York University. CS357, Stanford University, Nov 2, p. 1/24 CS357, Stanford University, Nov 2, 2015. p. 1/24 Theory Combination Clark Barrett barrett@cs.nyu.edu New York University CS357, Stanford University, Nov 2, 2015. p. 2/24 Combining Theory Solvers Given

More information

Common Core State Standards for Mathematics Integrated Pathway: Mathematics I

Common Core State Standards for Mathematics Integrated Pathway: Mathematics I A CORRELATION OF TO THE Standards for Mathematics A Correlation of Table of Contents Unit 1: Relationships between Quantities... 1 Unit 2: Linear and Exponential Relationships... 4 Unit 3: Reasoning with

More information

COMP 409: Logic Homework 5

COMP 409: Logic Homework 5 COMP 409: Logic Homework 5 Note: The pages below refer to the text from the book by Enderton. 1. Exercises 1-6 on p. 78. 1. Translate into this language the English sentences listed below. If the English

More information

Verification using Satisfiability Checking, Predicate Abstraction, and Craig Interpolation. Himanshu Jain THESIS ORAL TALK

Verification using Satisfiability Checking, Predicate Abstraction, and Craig Interpolation. Himanshu Jain THESIS ORAL TALK Verification using Satisfiability Checking, Predicate Abstraction, and Craig Interpolation Himanshu Jain THESIS ORAL TALK 1 Computer Systems are Pervasive Computer Systems = Software + Hardware Software/Hardware

More information

Propositional Logic Basics Propositional Equivalences Normal forms Boolean functions and digital circuits. Propositional Logic.

Propositional Logic Basics Propositional Equivalences Normal forms Boolean functions and digital circuits. Propositional Logic. Propositional Logic Winter 2012 Propositional Logic: Section 1.1 Proposition A proposition is a declarative sentence that is either true or false. Which ones of the following sentences are propositions?

More information

Notes. Corneliu Popeea. May 3, 2013

Notes. Corneliu Popeea. May 3, 2013 Notes Corneliu Popeea May 3, 2013 1 Propositional logic Syntax We rely on a set of atomic propositions, AP, containing atoms like p, q. A propositional logic formula φ Formula is then defined by the following

More information

Propositional and First Order Reasoning

Propositional and First Order Reasoning Propositional and First Order Reasoning Terminology Propositional variable: boolean variable (p) Literal: propositional variable or its negation p p Clause: disjunction of literals q \/ p \/ r given by

More information

A New 3-CNF Transformation by Parallel-Serial Graphs 1

A New 3-CNF Transformation by Parallel-Serial Graphs 1 A New 3-CNF Transformation by Parallel-Serial Graphs 1 Uwe Bubeck, Hans Kleine Büning University of Paderborn, Computer Science Institute, 33098 Paderborn, Germany Abstract For propositional formulas we

More information