Decision Procedures for Recursive Data Structures with Integer Constraints
|
|
- Ariel Jennings
- 6 years ago
- Views:
Transcription
1 Decision Procedures for Recursive Data Structures with Ting Zhang, Henny B Sipma, Zohar Manna Stanford University tingz,sipma,zm@csstanfordedu STeP Group, June 29, 2004 IJCAR p 1/31
2 Outline Outline Motivation with Motivation Recursive data structures s Recursive data structures with integer constraints Decision procedure for structures with infinite atom domain Decision procedure for structures with finite atom domain Related work Future work STeP Group, June 29, 2004 IJCAR p 2/31
3 Motivation: Program Verification Outline Motivation with Recursive data structures are essential constructs in programming languages To verify programs we need to reason about these data structures Programming languages often involve multiple data domains Common mixed constraints are combinations of data structures with integer constraints on the size of those structures STeP Group, June 29, 2004 IJCAR p 3/31
4 Language and Structure Axiomatization with Definition 1 A data structure is recursive if it is partially composed of smaller or simpler instances of the same structure No Junk: the data domain is the set of data objects generated exclusively by applying constructors No Confusion: each data object is uniquely generated = Term Algebras Example 1 A tree is composed of subtrees and leaves Other examples include lists, stacks, counters, and records STeP Group, June 29, 2004 IJCAR p 4/31
5 " " $ # $ # Language and Structure Language and Structure Axiomatization with A recursive data structure : The data domain : A set of atoms (constants): : A finite set of constructors: associated with an arity, eg,,, consists of, each of which is : A finite set of selectors: : A finite set of testers: A special predicate &%! for each for each STeP Group, June 29, 2004 IJCAR p 5/31
6 # # # # "! Axiomatization Language and Structure Axiomatization with Construction vs selection Unification closure Acyclicity properly contains, if Uniqueness, and are distinct atoms and if constructors Domain closure is built solely by constructors and and, and are distinct, if STeP Group, June 29, 2004 IJCAR p 6/31
7 # # # Example: LISP lists Signature: # % Language and Structure Axiomatization Axioms: # % with # % # Formulas: (valid) (valid) STeP Group, June 29, 2004 IJCAR p 7/31
8 Directed Acyclic Graph Directed Acyclic Graph Bidirectional Closure Type Completion (Cont d) Definition 2 A term can be represented by a tree is a constant or variable, then labeled by, if is in the form having the root labeled by its subtrees is a leaf vertex, then is the tree and having such that as with A directed acyclic graph (DAG) of is obtained from factoring out the common subtrees (subterms) by The DAG of a formula is the DAG representing all terms in the formula STeP Group, June 29, 2004 IJCAR p 8/31
9 Example: DAG Representation Directed Acyclic Graph Bidirectional Closure Type Completion (Cont d) with STeP Group, June 29, 2004 IJCAR p 9/31
10 Bidirectional Closure Directed Acyclic Graph Bidirectional Closure Type Completion (Cont d) with : a binary relation Unification Closure relation extending of : the smallest equivalence such that Congruence Closure of : the smallest equivalence relation extending such that Bidirectional Closure = + STeP Group, June 29, 2004 IJCAR p 10/31
11 # # # # Type Completion Directed Acyclic Graph Bidirectional Closure Type Completion (Cont d) Definition 3 is a type completion of if from by adding tester predicates such that for any term either is present in % Example 2 A possible type completion for is obtained (for some constructor ) or is with A type completion is compatible with if the satisfiability of implies that is satisfiable and if any solution of is a solution of % STeP Group, June 29, 2004 IJCAR p 11/31
12 " for Algorithm 1 Input Directed Acyclic Graph Bidirectional Closure Type Completion (Cont d) with 1 Guess a type completion and simplify selector terms accordingly We still use to denote the resulting formula 2 Construct the DAG of 3 Compute the bidirectional closure of 4 Return FAIL if ; return SUCCESS otherwise Solution = Type Completion + DAG + Bidirectional Closure STeP Group, June 29, 2004 IJCAR p 12/31
13 # Example: Directed Acyclic Graph Bidirectional Closure Type Completion (Cont d) with The following graph shows the DAG for STeP Group, June 29, 2004 IJCAR p 13/31
14 Example (Cont d): Initial partition Directed Acyclic Graph Bidirectional Closure Type Completion (Cont d) with Merge Merge and and since by unification closure algorithm Merge and by congruence closure algorithm The conjunction is unsatisfiable since STeP Group, June 29, 2004 IJCAR p 14/31
15 Language and Structure with Language and Structure Difficulty of N-O Combination Length Constraint Main Theorem Presburger arithmetic (PA): Two-sorted language 1 2 3, : signature of recursive data structures : signature of Presburger arithmetic, the length function defined by if if : is an atom : generalized integer terms Two-sorted structures: ; ; contains infinitely many atoms contains exactly atoms STeP Group, June 29, 2004 IJCAR p 15/31
16 Difficulty of N-O Combination with Language and Structure Difficulty of N-O Combination Length Constraint Main Theorem Nelson-Oppen combination methods is not directly applicable to the extended theory Example 3 Consider in is unsatisfiable in satisfiable in, while with is satisfiable in and There are hidden constraints on data structure length is STeP Group, June 29, 2004 IJCAR p 16/31
17 Length Constraint with Language and Structure Difficulty of N-O Combination Length Constraint Main Theorem An arithmetic constraint is a length constraint of there is one-to-one correspondence between integer variables and terms occurring in is sound, if for any satisfying assignment satisfying assignment for is complete, if whenever assignment assignment of, is a is satisfiable, for any satisfying of there exists a satisfying of such that is induced by, if is both sound and complete, if STeP Group, June 29, 2004 IJCAR p 17/31
18 Example: Length Constraint with Language and Structure Difficulty of N-O Combination Length Constraint Main Theorem Reason: the integer assignment can not be realized sound is sound but not complete is complete but not Reason: it does not satisfy the data assignment is both sound and complete, and hence is the induced constraint from STeP Group, June 29, 2004 IJCAR p 18/31
19 Main Theorem with Language and Structure Difficulty of N-O Combination Length Constraint Main Theorem Main Theorem 1 Let be a mixed constraint in the form and the induced length constraint with respect to Then is satisfiable in if and only if 1 2 is satisfiable in is satisfiable in, and The decision problem for quantifier-free theories reduces to computing the induced length constraints in Presburger arithmetic STeP Group, June 29, 2004 IJCAR p 19/31
20 Notations with Notations Construction of DP for (Cont d) stands for are the distinct arities of the constructors is true iff is the length of a well-formed tree children to be the sum of the lengths of its children forces the length of an states the length constraint for an -typed node with known -typed tree STeP Group, June 29, 2004 IJCAR p 20/31
21 Construction of in with Notations Construction of DP for (Cont d) Algorithm 2 Input: 1 : a (type-complete) data constraint, 2 3 Initially set : the DAG of, : the bidirectional closure obtained by Algorithm 1, if, if if is an atom; " For each term is an untyped leaf vertex if if is an is an add the following to -typed vertex with children -typed leaf vertex STeP Group, June 29, 2004 IJCAR p 21/31
22 Decision Procedure for with Notations Construction of DP for (Cont d) Input: 1 Guess a type completion 2 Call Algorithm 1 on Return FAIL if 3 Construct from of is unsatisfiable; continue otherwise Return SUCCESS if Return FAIL otherwise using Algorithm 2 is satisfiable STeP Group, June 29, 2004 IJCAR p 22/31
23 # Example: DP for (1) with Notations Construction of DP for (Cont d) STeP Group, June 29, 2004 IJCAR p 23/31
24 (2) Example (Cont d): DP for Unification and congruence closure: Induced length constraints: with Notations Construction of DP for (3) (Cont d) (4) (2), (3) and (4) imply Constraint (1) is unsatisfiable STeP Group, June 29, 2004 IJCAR p 24/31
25 # Complication for Suppose that the atom domain contains only one atom Then % with (5) is unsatisfiable while by the previous procedure Complication for Counting Constraints Equality Completion Construction of DP for is obviously satisfiable together with (6) Need to count how many distinct trees at certain length STeP Group, June 29, 2004 IJCAR p 25/31
26 Counting Constraints with Complication for Definition 4 A counting constraint is a predicate that is true if and only if there are at least different the language with exactly Example 4 For, number such that the -terms of length distinct atoms where -th Catalan number in is the least Counting Constraints Equality Completion Construction of DP for is greater than is expressible by a quantifier-free Presburger formula that can be computed in time STeP Group, June 29, 2004 IJCAR p 26/31
27 " Equality Completion with Definition 5 (Equality Completion) Let be a set of -terms An equality completion of is a formula consisting of the following literals: for any exactly one of, exactly one of and Example 5 An equality completion of and are in, and is Complication for Counting Constraints Equality Completion Construction of DP for! The notion of equality completion naturally generalizes to a conjunction of literals, eg, the above is an equality completion of (7) STeP Group, June 29, 2004 IJCAR p 27/31
28 Construction of in with Let denote that length but are pairwise unequal Algorithm 3 Input: (type and equality complete), and have the same Complication for 1 Call Algorithm 2 to obtain 2 For each occurring in, add Counting Constraints Equality Completion Construction of DP for Example 6 Formula (5) implies which gives the counting constraint A contradiction STeP Group, June 29, 2004 IJCAR p 28/31
29 Decision Procedure for with Complication for Counting Constraints Equality Completion Construction of Input : 1 Guess a type and equality completion 2 Call Algorithm 1 on Return FAIL if 3 Construct from of is unsatisfiable; continue otherwise Return SUCCESS if Return FAIL otherwise using Algorithm 3 is satisfiable DP for STeP Group, June 29, 2004 IJCAR p 29/31
30 on Arithmetic Integration with Combining integer with sets and multisets [Zar02b, Zar02a] Combining integer with lists [Zar01] Quantifier-free theory of term algebras with Knuth-Bendix order [KV00, KV01] First-order theory of term algebras with Knuth-Bendix order [ZSM04a] First-order theory of term algebras with integer constraints [ZSM04b] STeP Group, June 29, 2004 IJCAR p 30/31
31 on Arithmetic Integration Recursive data structures with subterm relation Eg, with Queues (flat lists without concatenation) Eg, Word concatenation Eg, STeP Group, June 29, 2004 IJCAR p 31/31
32 [KV00] Konstantin Korovin and Andrei Voronkov A decision procedure for the existential theory of term algebras with the Knuth-Bendix ordering In Proc 15th IEEE Symp Logic in Comp Sci, pages , 2000 [KV01] Konstantin Korovin and Andrei Voronkov Knuth- Bendix constraint solving is NP-complete In Proceedings of 28th International Colloquium on Automata, Languages and Programming (ICALP), volume 2076 of Lecture Notes in Computer Science, pages Springer-Verlag, 2001 [Zar01] Calogero G Zarba Combining lists with integers In Rajeev Goré, Alexander Leitsch, and Tobias Nipkow, editors, International Joint Conference on Automated Reasoning (Short Papers), Technical Report DII 11/01, pages University of Siena, Italy, 2001 [Zar02a] Calogero G Zarba Combining multisets with integers In Andrei Voronkov, editor, Proc of the Intl Conference on Automated Deduction, volume 2392 of Lecture Notes in Artificial Intelligence, pages Springer, 2002 [Zar02b] Calogero G Zarba Combining sets with integers In Alessandro Armando, editor, Frontiers of Combining 31-1
33 Systems, volume 2309 of Lecture Notes in Artificial Intelligence, pages Springer, 2002 [ZSM04a] Ting Zhang, Henny Sipma, and Zohar Manna The decidability of the first-order theory of term algebras with Knuth-Bendix order, 2004 Submitted [ZSM04b] Ting Zhang, Henny Sipma, and Zohar Manna Term algebras with length function and bounded quantifier alternation, 2004 To appear in the Proceedings of the International Conference on Theorem Proving in Higher Order Logics 31-2
Term Algebras with Length Function and Bounded Quantifier Elimination
with Length Function and Bounded Ting Zhang, Henny B Sipma, Zohar Manna Stanford University tingz,sipma,zm@csstanfordedu STeP Group, September 3, 2004 TPHOLs 2004 - p 1/37 Motivation: Program Verification
More informationDeciding Extensions of the Theory of Arrays by Integrating Decision Procedures and Instantiation Strategies
Deciding Extensions of the Theory of Arrays by Integrating Decision Procedures and Instantiation Strategies Silvio Ghilardi 1, Enrica Nicolini 2, Silvio Ranise 13, and Daniele Zucchelli 13 1 Dipartimento
More informationLecture Notes on Real-world SMT
15-414: Bug Catching: Automated Program Verification Lecture Notes on Real-world SMT Matt Fredrikson Ruben Martins Carnegie Mellon University Lecture 15 1 Introduction In the previous lecture we studied
More informationFoundations of Computer Science Spring Mathematical Preliminaries
Foundations of Computer Science Spring 2017 Equivalence Relation, Recursive Definition, and Mathematical Induction Mathematical Preliminaries Mohammad Ashiqur Rahman Department of Computer Science College
More information3.4 Deduction and Evaluation: Tools Conditional-Equational Logic
3.4 Deduction and Evaluation: Tools 3.4.1 Conditional-Equational Logic The general definition of a formal specification from above was based on the existence of a precisely defined semantics for the syntax
More informationFoundations of AI. 9. Predicate Logic. Syntax and Semantics, Normal Forms, Herbrand Expansion, Resolution
Foundations of AI 9. Predicate Logic Syntax and Semantics, Normal Forms, Herbrand Expansion, Resolution Wolfram Burgard, Andreas Karwath, Bernhard Nebel, and Martin Riedmiller 09/1 Contents Motivation
More informationTrees. 3. (Minimally Connected) G is connected and deleting any of its edges gives rise to a disconnected graph.
Trees 1 Introduction Trees are very special kind of (undirected) graphs. Formally speaking, a tree is a connected graph that is acyclic. 1 This definition has some drawbacks: given a graph it is not trivial
More informationModel Checking I Binary Decision Diagrams
/42 Model Checking I Binary Decision Diagrams Edmund M. Clarke, Jr. School of Computer Science Carnegie Mellon University Pittsburgh, PA 523 2/42 Binary Decision Diagrams Ordered binary decision diagrams
More informationCS521 \ Notes for the Final Exam
CS521 \ Notes for final exam 1 Ariel Stolerman Asymptotic Notations: CS521 \ Notes for the Final Exam Notation Definition Limit Big-O ( ) Small-o ( ) Big- ( ) Small- ( ) Big- ( ) Notes: ( ) ( ) ( ) ( )
More informationTreewidth and graph minors
Treewidth and graph minors Lectures 9 and 10, December 29, 2011, January 5, 2012 We shall touch upon the theory of Graph Minors by Robertson and Seymour. This theory gives a very general condition under
More informationLower Bound on Comparison-based Sorting
Lower Bound on Comparison-based Sorting Different sorting algorithms may have different time complexity, how to know whether the running time of an algorithm is best possible? We know of several sorting
More informationOverview. CS389L: Automated Logical Reasoning. Lecture 6: First Order Logic Syntax and Semantics. Constants in First-Order Logic.
Overview CS389L: Automated Logical Reasoning Lecture 6: First Order Logic Syntax and Semantics Işıl Dillig So far: Automated reasoning in propositional logic. Propositional logic is simple and easy to
More informationIntroduction to Automata Theory. BİL405 - Automata Theory and Formal Languages 1
Introduction to Automata Theory BİL405 - Automata Theory and Formal Languages 1 Automata, Computability and Complexity Automata, Computability and Complexity are linked by the question: What are the fundamental
More informationRecognizability Equals Definability for Graphs of Bounded Treewidth and Bounded Chordality
Recognizability Equals Definability for Graphs of Bounded Treewidth and Bounded Chordality Hans L. Bodlaender, Utrecht University and Eindhoven University of Technology Pinar Heggernes, University of Bergen
More informationLecture 22 Tuesday, April 10
CIS 160 - Spring 2018 (instructor Val Tannen) Lecture 22 Tuesday, April 10 GRAPH THEORY Directed Graphs Directed graphs (a.k.a. digraphs) are an important mathematical modeling tool in Computer Science,
More informationDeductive 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 informationNotes slides from before lecture. CSE 21, Winter 2017, Section A00. Lecture 10 Notes. Class URL:
Notes slides from before lecture CSE 21, Winter 2017, Section A00 Lecture 10 Notes Class URL: http://vlsicad.ucsd.edu/courses/cse21-w17/ Notes slides from before lecture Notes February 13 (1) HW5 is due
More informationVerifying pattern matching with guards in Scala
EPFL SAV 07 June 21, 2007 version 1.1 Outline Introduction Scala reasoning about pattern matching status in Scala motivation project overview general idea formalization of concepts axioms patterns miscellaneous
More informationRecursion and Structural Induction
Recursion and Structural Induction Mukulika Ghosh Fall 2018 Based on slides by Dr. Hyunyoung Lee Recursively Defined Functions Recursively Defined Functions Suppose we have a function with the set of non-negative
More informationCopyright 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley. Chapter 6 Outline. Unary Relational Operations: SELECT and
Chapter 6 The Relational Algebra and Relational Calculus Copyright 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 6 Outline Unary Relational Operations: SELECT and PROJECT Relational
More information15-819M: Data, Code, Decisions
15-819M: Data, Code, Decisions 08: First-Order Logic André Platzer aplatzer@cs.cmu.edu Carnegie Mellon University, Pittsburgh, PA André Platzer (CMU) 15-819M/08: Data, Code, Decisions 1 / 40 Outline 1
More informationReasoning About Set Comprehensions
Reasoning About Set Comprehensions Edmund S L Lam 1 and Iliano Cervesato 1 Carnegie Mellon University sllam@qatarcmuedu, iliano@cmuedu Abstract Set comprehension is a mathematical notation for defining
More informationCHAPTER 8. Copyright Cengage Learning. All rights reserved.
CHAPTER 8 RELATIONS Copyright Cengage Learning. All rights reserved. SECTION 8.3 Equivalence Relations Copyright Cengage Learning. All rights reserved. The Relation Induced by a Partition 3 The Relation
More informationCuts from Proofs: A Complete and Practical Technique for Solving Linear Inequalities over Integers
Cuts from Proofs: A Complete and Practical Technique for Solving Linear Inequalities over Integers Isil Dillig, Thomas Dillig, and Alex Aiken Computer Science Department Stanford University Linear Arithmetic
More informationDiscrete Mathematics Lecture 4. Harper Langston New York University
Discrete Mathematics Lecture 4 Harper Langston New York University Sequences Sequence is a set of (usually infinite number of) ordered elements: a 1, a 2,, a n, Each individual element a k is called a
More informationCSCI.6962/4962 Software Verification Fundamental Proof Methods in Computer Science (Arkoudas and Musser) Chapter p. 1/27
CSCI.6962/4962 Software Verification Fundamental Proof Methods in Computer Science (Arkoudas and Musser) Chapter 2.1-2.7 p. 1/27 CSCI.6962/4962 Software Verification Fundamental Proof Methods in Computer
More informationBinary Decision Diagrams
Logic and roof Hilary 2016 James Worrell Binary Decision Diagrams A propositional formula is determined up to logical equivalence by its truth table. If the formula has n variables then its truth table
More informationLecture 7 February 26, 2010
6.85: Advanced Data Structures Spring Prof. Andre Schulz Lecture 7 February 6, Scribe: Mark Chen Overview In this lecture, we consider the string matching problem - finding all places in a text where some
More informationComputational 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 informationHW Graph Theory SOLUTIONS (hbovik) - Q
1, Diestel 9.3: An arithmetic progression is an increasing sequence of numbers of the form a, a+d, a+ d, a + 3d.... Van der Waerden s theorem says that no matter how we partition the natural numbers into
More informationGraph algorithms based on infinite automata: logical descriptions and usable constructions
Graph algorithms based on infinite automata: logical descriptions and usable constructions Bruno Courcelle (joint work with Irène Durand) Bordeaux-1 University, LaBRI (CNRS laboratory) 1 Overview Algorithmic
More information1.3. Conditional expressions To express case distinctions like
Introduction Much of the theory developed in the underlying course Logic II can be implemented in a proof assistant. In the present setting this is interesting, since we can then machine extract from a
More informationGreedy Algorithms 1 {K(S) K(S) C} For large values of d, brute force search is not feasible because there are 2 d {1,..., d}.
Greedy Algorithms 1 Simple Knapsack Problem Greedy Algorithms form an important class of algorithmic techniques. We illustrate the idea by applying it to a simplified version of the Knapsack Problem. Informally,
More informationData Analytics and Boolean Algebras
Data Analytics and Boolean Algebras Hans van Thiel November 28, 2012 c Muitovar 2012 KvK Amsterdam 34350608 Passeerdersstraat 76 1016 XZ Amsterdam The Netherlands T: + 31 20 6247137 E: hthiel@muitovar.com
More informationYices 1.0: An Efficient SMT Solver
Yices 1.0: An Efficient SMT Solver SMT-COMP 06 Leonardo de Moura (joint work with Bruno Dutertre) {demoura, bruno}@csl.sri.com. Computer Science Laboratory SRI International Menlo Park, CA Yices: An Efficient
More informationDISCRETE MATHEMATICS
DISCRETE MATHEMATICS WITH APPLICATIONS THIRD EDITION SUSANNA S. EPP DePaul University THOIVISON * BROOKS/COLE Australia Canada Mexico Singapore Spain United Kingdom United States CONTENTS Chapter 1 The
More informationThe Typed λ Calculus and Type Inferencing in ML
Notes on Types S. Arun-Kumar Department of Computer Science and Engineering Indian Institute of Technology New Delhi, 110016 email: sak@cse.iitd.ernet.in April 14, 2002 2 Chapter 1 The Typed λ Calculus
More informationarxiv: v2 [cs.ds] 25 Jan 2017
d-hop Dominating Set for Directed Graph with in-degree Bounded by One arxiv:1404.6890v2 [cs.ds] 25 Jan 2017 Joydeep Banerjee, Arun Das, and Arunabha Sen School of Computing, Informatics and Decision System
More informationRewriting. Andreas Rümpel Faculty of Computer Science Technische Universität Dresden Dresden, Germany.
Rewriting Andreas Rümpel Faculty of Computer Science Technische Universität Dresden Dresden, Germany s9843882@inf.tu-dresden.de ABSTRACT This is an overview paper regarding the common technologies of rewriting.
More informationInvariant Generation in Vampire
Invariant Generation in Vampire Kryštof Hoder 1,LauraKovács 2, and Andrei Voronkov 1 1 University of Manchester 2 TU Vienna Abstract. This paper describes a loop invariant generator implemented in the
More information1 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 informationBinary Heaps in Dynamic Arrays
Yufei Tao ITEE University of Queensland We have already learned that the binary heap serves as an efficient implementation of a priority queue. Our previous discussion was based on pointers (for getting
More information7.3 Spanning trees Spanning trees [ ] 61
7.3. Spanning trees [161211-1348 ] 61 7.3 Spanning trees We know that trees are connected graphs with the minimal number of edges. Hence trees become very useful in applications where our goal is to connect
More informationCSE 20 DISCRETE MATH. Fall
CSE 20 DISCRETE MATH Fall 2017 http://cseweb.ucsd.edu/classes/fa17/cse20-ab/ Final exam The final exam is Saturday December 16 11:30am-2:30pm. Lecture A will take the exam in Lecture B will take the exam
More informationNotes for Lecture 21. From One-Time Signatures to Fully Secure Signatures
U.C. Berkeley CS276: Cryptography Handout N21 Luca Trevisan April 7, 2009 Notes for Lecture 21 Scribed by Anand Bhaskar, posted May 1, 2009 Summary Today we show how to construct an inefficient (but efficiently
More informationLTCS Report. Concept Descriptions with Set Constraints and Cardinality Constraints. Franz Baader. LTCS-Report 17-02
Technische Universität Dresden Institute for Theoretical Computer Science Chair for Automata Theory LTCS Report Concept Descriptions with Set Constraints and Cardinality Constraints Franz Baader LTCS-Report
More informationDefinition: A context-free grammar (CFG) is a 4- tuple. variables = nonterminals, terminals, rules = productions,,
CMPSCI 601: Recall From Last Time Lecture 5 Definition: A context-free grammar (CFG) is a 4- tuple, variables = nonterminals, terminals, rules = productions,,, are all finite. 1 ( ) $ Pumping Lemma for
More informationSystem Description: iprover An Instantiation-Based Theorem Prover for First-Order Logic
System Description: iprover An Instantiation-Based Theorem Prover for First-Order Logic Konstantin Korovin The University of Manchester School of Computer Science korovin@cs.man.ac.uk Abstract. iprover
More informationLecture 4. First order logic is a formal notation for mathematics which involves:
0368.4435 Automatic Software Verification April 14, 2015 Lecture 4 Lecturer: Mooly Sagiv Scribe: Nimrod Busany, Yotam Frank Lesson Plan 1. First order logic recap. 2. The SMT decision problem. 3. Basic
More informationThe self-minor conjecture for infinite trees
The self-minor conjecture for infinite trees Julian Pott Abstract We prove Seymour s self-minor conjecture for infinite trees. 1. Introduction P. D. Seymour conjectured that every infinite graph is a proper
More informationCS 6783 (Applied Algorithms) Lecture 5
CS 6783 (Applied Algorithms) Lecture 5 Antonina Kolokolova January 19, 2012 1 Minimum Spanning Trees An undirected graph G is a pair (V, E); V is a set (of vertices or nodes); E is a set of (undirected)
More informationComplete Instantiation of Quantified Formulas in Satisfiability Modulo Theories. ACSys Seminar
Complete Instantiation of Quantified Formulas in Satisfiability Modulo Theories Yeting Ge Leonardo de Moura ACSys Seminar 2008.12 Motivation SMT solvers have been successful Quantified smt formulas are
More informationNP-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 informationLower bound for comparison-based sorting
COMP3600/6466 Algorithms 2018 Lecture 8 1 Lower bound for comparison-based sorting Reading: Cormen et al, Section 8.1 and 8.2 Different sorting algorithms may have different running-time complexities.
More informationRobert Cowen and Stephen H. Hechler. Received June 4, 2003; revised June 18, 2003
Scientiae Mathematicae Japonicae Online, Vol. 9, (2003), 9 15 9 G-FREE COLORABILITY AND THE BOOLEAN PRIME IDEAL THEOREM Robert Cowen and Stephen H. Hechler Received June 4, 2003; revised June 18, 2003
More informationInstantiation Schemes for Nested Theories
0 Instantiation Schemes for Nested Theories MNACHO ECHENIM, Grenoble INP-Ensimag/Laboratory of Informatics of Grenoble NICOLAS PELTIER, CNRS/Laboratory of Informatics of Grenoble This paper investigates
More informationSORT INFERENCE \coregular" signatures, they derive an algorithm for computing a most general typing for expressions e which is only slightly more comp
Haskell Overloading is DEXPTIME{complete Helmut Seidl Fachbereich Informatik Universitat des Saarlandes Postfach 151150 D{66041 Saarbrucken Germany seidl@cs.uni-sb.de Febr., 1994 Keywords: Haskell type
More informationCHENNAI MATHEMATICAL INSTITUTE M.Sc. / Ph.D. Programme in Computer Science
CHENNAI MATHEMATICAL INSTITUTE M.Sc. / Ph.D. Programme in Computer Science Entrance Examination, 5 May 23 This question paper has 4 printed sides. Part A has questions of 3 marks each. Part B has 7 questions
More informationAutomated Theorem Proving and Proof Checking
Automated Theorem Proving and Proof Checking #1 #2 Cunning Theorem-Proving Plan There are full-semester courses on automated deduction; we will elide details. Logic Syntax Theories Satisfiability Procedures
More informationContents. Chapter 1 SPECIFYING SYNTAX 1
Contents Chapter 1 SPECIFYING SYNTAX 1 1.1 GRAMMARS AND BNF 2 Context-Free Grammars 4 Context-Sensitive Grammars 8 Exercises 8 1.2 THE PROGRAMMING LANGUAGE WREN 10 Ambiguity 12 Context Constraints in Wren
More information4 Basics of Trees. Petr Hliněný, FI MU Brno 1 FI: MA010: Trees and Forests
4 Basics of Trees Trees, actually acyclic connected simple graphs, are among the simplest graph classes. Despite their simplicity, they still have rich structure and many useful application, such as in
More informationAn Evolution of Mathematical Tools
An Evolution of Mathematical Tools From Conceptualization to Formalization Here's what we do when we build a formal model (or do a computation): 0. Identify a collection of objects/events in the real world.
More informationRigidity, connectivity and graph decompositions
First Prev Next Last Rigidity, connectivity and graph decompositions Brigitte Servatius Herman Servatius Worcester Polytechnic Institute Page 1 of 100 First Prev Next Last Page 2 of 100 We say that a framework
More informationCS473-Algorithms I. Lecture 13-A. Graphs. Cevdet Aykanat - Bilkent University Computer Engineering Department
CS473-Algorithms I Lecture 3-A Graphs Graphs A directed graph (or digraph) G is a pair (V, E), where V is a finite set, and E is a binary relation on V The set V: Vertex set of G The set E: Edge set of
More informationAND-OR GRAPHS APPLIED TO RUE RESOLUTION
AND-OR GRAPHS APPLIED TO RUE RESOLUTION Vincent J. Digricoli Dept. of Computer Science Fordham University Bronx, New York 104-58 James J, Lu, V. S. Subrahmanian Dept. of Computer Science Syracuse University-
More informationA Connection between Network Coding and. Convolutional Codes
A Connection between Network Coding and 1 Convolutional Codes Christina Fragouli, Emina Soljanin christina.fragouli@epfl.ch, emina@lucent.com Abstract The min-cut, max-flow theorem states that a source
More informationGraph Algorithms Using Depth First Search
Graph Algorithms Using Depth First Search Analysis of Algorithms Week 8, Lecture 1 Prepared by John Reif, Ph.D. Distinguished Professor of Computer Science Duke University Graph Algorithms Using Depth
More informationNP-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 informationTree Interpolation in Vampire
Tree Interpolation in Vampire Régis Blanc 1, Ashutosh Gupta 2, Laura Kovács 3, and Bernhard Kragl 4 1 EPFL 2 IST Austria 3 Chalmers 4 TU Vienna Abstract. We describe new extensions of the Vampire theorem
More informationIntroduction to Sets and Logic (MATH 1190)
Introduction to Sets and Logic () Instructor: Email: shenlili@yorku.ca Department of Mathematics and Statistics York University Dec 4, 2014 Outline 1 2 3 4 Definition A relation R from a set A to a set
More informationRewriting Needs Constraints and Constraints Need Rewriting
Rewriting Needs Constraints and Constraints Need Rewriting José Meseguer Department of Computer Science, UIUC ints 14 November 2008 Motivation Symbolic Computation, Rewriting, and Constraints Rewriting
More informationAutomata Theory for Reasoning about Actions
Automata Theory for Reasoning about Actions Eugenia Ternovskaia Department of Computer Science, University of Toronto Toronto, ON, Canada, M5S 3G4 eugenia@cs.toronto.edu Abstract In this paper, we show
More informationCMPSCI 250: Introduction to Computation. Lecture #14: Induction and Recursion (Still More Induction) David Mix Barrington 14 March 2013
CMPSCI 250: Introduction to Computation Lecture #14: Induction and Recursion (Still More Induction) David Mix Barrington 14 March 2013 Induction and Recursion Three Rules for Recursive Algorithms Proving
More informationCSE 20 DISCRETE MATH. Winter
CSE 20 DISCRETE MATH Winter 2017 http://cseweb.ucsd.edu/classes/wi17/cse20-ab/ Final exam The final exam is Saturday March 18 8am-11am. Lecture A will take the exam in GH 242 Lecture B will take the exam
More informationFinding Strongly Connected Components
Yufei Tao ITEE University of Queensland We just can t get enough of the beautiful algorithm of DFS! In this lecture, we will use it to solve a problem finding strongly connected components that seems to
More information6c Lecture 3 & 4: April 8 & 10, 2014
6c Lecture 3 & 4: April 8 & 10, 2014 3.1 Graphs and trees We begin by recalling some basic definitions from graph theory. Definition 3.1. A (undirected, simple) graph consists of a set of vertices V and
More informationDiscrete mathematics
Discrete mathematics Petr Kovář petr.kovar@vsb.cz VŠB Technical University of Ostrava DiM 470-2301/02, Winter term 2018/2019 About this file This file is meant to be a guideline for the lecturer. Many
More informationNP-Completeness. Algorithms
NP-Completeness Algorithms The NP-Completeness Theory Objective: Identify a class of problems that are hard to solve. Exponential time is hard. Polynomial time is easy. Why: Do not try to find efficient
More informationSOFTWARE ENGINEERING DESIGN I
2 SOFTWARE ENGINEERING DESIGN I 3. Schemas and Theories The aim of this course is to learn how to write formal specifications of computer systems, using classical logic. The key descriptional technique
More informationRecursively Defined Functions
Section 5.3 Recursively Defined Functions Definition: A recursive or inductive definition of a function consists of two steps. BASIS STEP: Specify the value of the function at zero. RECURSIVE STEP: Give
More informationCMPSCI 250: Introduction to Computation. Lecture #22: Graphs, Paths, and Trees David Mix Barrington 12 March 2014
CMPSCI 250: Introduction to Computation Lecture #22: Graphs, Paths, and Trees David Mix Barrington 12 March 2014 Graphs, Paths, and Trees Graph Definitions Paths and the Path Predicate Cycles, Directed
More informationFundamentals of Discrete Mathematical Structures
Fundamentals of Discrete Mathematical Structures THIRD EDITION K.R. Chowdhary Campus Director JIET School of Engineering and Technology for Girls Jodhpur Delhi-110092 2015 FUNDAMENTALS OF DISCRETE MATHEMATICAL
More informationGraphs. Carlos Moreno uwaterloo.ca EIT
Carlos Moreno cmoreno @ uwaterloo.ca EIT-4103 http://en.wikipedia.org/wiki/six_degrees_of_kevin_bacon https://ece.uwaterloo.ca/~cmoreno/ece250 Standard reminder to set phones to silent/vibrate mode, please!
More informationPaths, Flowers and Vertex Cover
Paths, Flowers and Vertex Cover Venkatesh Raman, M.S. Ramanujan, and Saket Saurabh Presenting: Hen Sender 1 Introduction 2 Abstract. It is well known that in a bipartite (and more generally in a Konig)
More informationModule 6. Knowledge Representation and Logic (First Order Logic) Version 2 CSE IIT, Kharagpur
Module 6 Knowledge Representation and Logic (First Order Logic) 6.1 Instructional Objective Students should understand the advantages of first order logic as a knowledge representation language Students
More information1 Maximum Independent Set
CS 408 Embeddings and MIS Abhiram Ranade In this lecture we will see another application of graph embedding. We will see that certain problems (e.g. maximum independent set, MIS) can be solved fast for
More informationIntegrating SysML and OWL
Integrating SysML and OWL Henson Graves Lockheed Martin Aeronautics Company Fort Worth Texas, USA henson.graves@lmco.com Abstract. To use OWL2 for modeling a system design one must be able to construct
More informationAction Language Verifier, Extended
Action Language Verifier, Extended Tuba Yavuz-Kahveci 1, Constantinos Bartzis 2, and Tevfik Bultan 3 1 University of Florida 2 Carnegie Mellon University 3 UC, Santa Barbara 1 Introduction Action Language
More informationThe Encoding Complexity of Network Coding
The Encoding Complexity of Network Coding Michael Langberg Alexander Sprintson Jehoshua Bruck California Institute of Technology Email: mikel,spalex,bruck @caltech.edu Abstract In the multicast network
More informationEliminating the Storage Tape in Reachability Constructions
Eliminating the Storage Tape in Reachability Constructions Oscar H. Ibarra Department of Computer Science University of California Santa Barbara, CA 93106, USA Zhe Dang School of Electrical Engineering
More informationIntroduction to Graph Theory
Introduction to Graph Theory Tandy Warnow January 20, 2017 Graphs Tandy Warnow Graphs A graph G = (V, E) is an object that contains a vertex set V and an edge set E. We also write V (G) to denote the vertex
More information1 Overview, Models of Computation, Brent s Theorem
CME 323: Distributed Algorithms and Optimization, Spring 2017 http://stanford.edu/~rezab/dao. Instructor: Reza Zadeh, Matroid and Stanford. Lecture 1, 4/3/2017. Scribed by Andreas Santucci. 1 Overview,
More informationReductions. 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 information9.5 Equivalence Relations
9.5 Equivalence Relations You know from your early study of fractions that each fraction has many equivalent forms. For example, 2, 2 4, 3 6, 2, 3 6, 5 30,... are all different ways to represent the same
More informationFrom Types to Sets in Isabelle/HOL
From Types to Sets in Isabelle/HOL Extented Abstract Ondřej Kunčar 1 and Andrei Popescu 1,2 1 Fakultät für Informatik, Technische Universität München, Germany 2 Institute of Mathematics Simion Stoilow
More informationA Reduction of Conway s Thrackle Conjecture
A Reduction of Conway s Thrackle Conjecture Wei Li, Karen Daniels, and Konstantin Rybnikov Department of Computer Science and Department of Mathematical Sciences University of Massachusetts, Lowell 01854
More informationAn Exact Enumeration of Unlabeled Cactus Graphs
An Exact Enumeration of Unlabeled Cactus Graphs Maryam Bahrani Under the Direction of Dr. Jérémie Lumbroso Analysis of Algorithms, June 2017 Symbolic Method on Trees A binary tree is either a leaf or an
More informationA Fast Algorithm for Optimal Alignment between Similar Ordered Trees
Fundamenta Informaticae 56 (2003) 105 120 105 IOS Press A Fast Algorithm for Optimal Alignment between Similar Ordered Trees Jesper Jansson Department of Computer Science Lund University, Box 118 SE-221
More informationCombinatorics Summary Sheet for Exam 1 Material 2019
Combinatorics Summary Sheet for Exam 1 Material 2019 1 Graphs Graph An ordered three-tuple (V, E, F ) where V is a set representing the vertices, E is a set representing the edges, and F is a function
More informationProof-Pattern Recognition and Lemma Discovery in ACL2
Proof-Pattern Recognition and Lemma Discovery in ACL2 Jónathan Heras (joint work with K. Komendantskaya, M. Johansson and E. Maclean) University of Dundee http://staff.computing.dundee.ac.uk/jheras/acl2ml/
More information