A Constructor-Based Reachability Logic for Rewrite Theories
|
|
- Karin Marsh
- 6 years ago
- Views:
Transcription
1 A Constructor-Based Reachability Logic for Rewrite Theories Stephen Skeirik, Andrei Stefanescu, Jose Meseguer October 10th, 2017
2 Outline 1 Introduction 2 Reachability Logic Semantics 3 The Invariant Paradox 4 Inference System 5 Implementation and Case Studies 6 Conclusions and Future Work
3 Introduction Origins of Reachability Logic Reachability Logic (RL) was originally proposed by Rosu et. al to verify programs in K based on a rewriting logic (RWL) definition of language L s semantics generalizes both Hoare Logic and Separation Logic language-generic: a prover can be generated for each language L from its rewriting logic semantics R L 1 / 22
4 Introduction From Language-generic to Theory-generic RL This work addresses the following open problems: 1 Can we develop a reachability logic for general rewrite theories, i.e. RL(R) generalizing RL(R L )?...will allow us to move from verifying code to verifying distributed system designs 2 How can we maximize automation in RL proofs? 3 How can we use RL to prove invariants (invariant paradox)? 2 / 22
5 Introduction From Language-generic to Theory-generic RL We address questions (1)-(3) via: 1 developing a new RWL-theory based RL semantics and very simple proof system, 2 utilizing RWL concepts (e.g. constructors, variants) in our proof system as well as a equational-theory-generic SMT solver as a backend based on variant satisfiability 3 and applying an appropriate RWL theory transformation to prove invariants. 3 / 22
6 Introduction A Running Example: QLOCK The mutual exclusion protocol QLOCK has five rewrite rules: n2w : < n i w c q > < n w i c q ; i > w2c : < n w i c i ; q > < n w c i i ; q > c2n : < n w c i i ; q > < n i w c q > join : < n w c q > < n i w c q > if φ exit : < n i w c q > < n w c q > where φ dup(n w c i) tt. QLOCK s specification is R QLOCK = (Σ, E B, R) with R the above rules, B the axioms ACU for and A for ; and, E the equation dup(s s s ) = tt. 4 / 22
7 Outline 1 Introduction 2 Reachability Logic Semantics 3 The Invariant Paradox 4 Inference System 5 Implementation and Case Studies 6 Conclusions and Future Work
8 Reachability Logic Semantics Constrained Constructor Patterns Definition Let (Σ, B, E) be sufficiently complete w.r.t. constructors Ω. A constrained constructor pattern is a pair: u ϕ such that u T Ω (X) ϕ QFForm(Σ) The set PatPred(Ω, Σ) contains and all constrained constructor patterns, and is closed under ( ) and ( ) The semantics of predicate A is A C Σ/E,B where: 1 = 2 u ϕ = {[(uρ)!] BΩ C Σ/E,B ρ [X T Ω ] E B = ϕρ}. 3 A B = A B 4 A B = A B 5 / 22
9 Reachability Logic Semantics Reachability Formulas Definition Given patterns u φ and v i ψ i, a reachability formula has form: u ϕ i v i ψ i Example. 1 < n w c q > dup(n w c) tt 2 < n w c q > dup(n w c) tt < n w c q > dup(n w c ) tt 6 / 22
10 Reachability Logic Semantics Intuitive Semantics Q: What does the relation A B mean? A: Suppose we have: (1) a rewrite theory R (2) pattern fomulas A, B (3) and terminating states T Then A B means: for each state [t] A and rewrite path p from [t], either: (1) p crosses B or (2) p is infinite indicates counterex satisfies A B vacuously satisfies 7 / 22
11 Reachability Logic Semantics Formal Semantics Definition Let R = (Σ, E B, R) have (a) good executability conditions, (b) constructor subsignature Ω, (c) and top sort State of states. Let C R denote the canonical reachability model. R = A B iff: For each concrete state [u 0 ] C R,State A and; terminating sequence [u 0 ] R [u 1 ] [u n 1 ] R [u n ] There exists 0 j n with [u j ] B N.B.: expressible as LTL formula A ( enabled) B 8 / 22
12 Outline 1 Introduction 2 Reachability Logic Semantics 3 The Invariant Paradox 4 Inference System 5 Implementation and Case Studies 6 Conclusions and Future Work
13 The Invariant Paradox Introduction Recall our example theory QLOCK. Q: How to express mutual exclusion invariant by A B? A: Since: 1 A B just means A ( enabled) B, 2 and QLOCK is never terminating, then all formulas A B are satisfied, so we cannot. (Paradox!!). 9 / 22
14 The Invariant Paradox Solving the Invariant Paradox (I) Recall the structure of the rewrite rules in QLOCK: n2w : < n i w c q > < n w i c q ; i > Each rule is topped with a State constructor < >. Let s add rule: stop : < n w c q > [ n w i c q ] Note that the stop rule can terminate from any state in the combined theory QLOCK-stop. If B =... ϕ, let [B] denote the predicate [B] = [...] ϕ. Fact. B is an invariant from initial states S 0 in QLOCK iff S 0 [B] holds in QLOCK-stop. 10 / 22
15 The Invariant Paradox Solving the Invariant Paradox (II) Let R be a rewrite theory; assume a single State constructor,..., : w State and all rules have terms of sort State. Let R stop extend R by adding: (i) fresh [,..., ] : w State, and (ii) a stop rule x : w [ x : w]. Then: Theorem B is an invariant for R from S 0 iff S 0 [B] holds in R stop. Corollary If S 0 B and B [B] holds in R stop, then B is an invariant for R from initial sates S 0. Example. Mutual exclusion in QLOCK can be given by Mutex = n w i i ; q dup(n w c i) tt n w q dup(n w c) tt. Prove: (i) n nil Mutex (ii) Mutex [Mutex]. 11 / 22
16 Outline 1 Introduction 2 Reachability Logic Semantics 3 The Invariant Paradox 4 Inference System 5 Implementation and Case Studies 6 Conclusions and Future Work
17 Inference System Introduction (I) Q: Then given RWL theory R, how do we prove A B? A: Perhaps surprisingly, two proof rules are enough: A rule that traces rewrite steps of symbolic states in R A rule that internalizes terminating-path-length induction on R We call these two rules: Step+Subsumption Axiom 12 / 22
18 Inference System Introduction (II) The key ideas are: 1 Proving A B may require some auxiliary lemmas; Let C denote the formula A B plus these lemmas 2 For each formula in C, start with labeled sequents: [, C] T u ϕ i v i ψ i 3 1 st part ( ) is formulas to be assumed as axioms (none); 4 2 nd part (C) is formulas to prove that cannot yet be assumed 5 the Step+Subsumption rule allows us to inductively assume C after a rewrite step with rules R = {l j r j if φ j }. 13 / 22
19 Reachability Logic Proof Rules (I): Step+Subsumption Rule (j,α) unify(u ϕ,r)[a C, ] T (r j ϕ φ j )α i (v i ψ i )α [A, C] T u ϕ i v i ψ i with ϕ = ϕ (i,β) match(u,{v i }) (ψ iβ) and R = {l j r j if φ j } Note. proof rule performs all possible narrowing steps with rules R goals u φ B with unsatisfiable φ are implicitly removed 14 / 22
20 Reachability Logic Proof Rules (II): The Axiom Rule [{u ϕ j j v j ψ j} A, ] T v jα ϕ ψ jα i v i ψ i [{u ϕ j v j ψ j} A, ] T u ϕ i v i ψ i where α with u = EΩ B Ω u α and T Σ/E B = ϕ ϕ α 15 / 22
21 Reachability Logic Soundness Theorem (Soundness) Let R be a rewrite theory, and C a finite set of reachability formulas. If R proves [, C] T C then R = T C 16 / 22
22 Outline 1 Introduction 2 Reachability Logic Semantics 3 The Invariant Paradox 4 Inference System 5 Implementation and Case Studies 6 Conclusions and Future Work
23 Implementation and Case Studies Reflective Implementation The proof system has been implemented in Maude. Some notes: 1 RWL is reflective, Maude s META-LEVEL library support was used which supports reasoning over RWL theories and terms 2 Maude s built-in support for narrowing modulo axioms was used to compute successors in the RWL theory R 3 An implementation of a variant satisfiability-based, theory-generic SMT solver was used to discharge satisfiability and validity proof obligations 17 / 22
24 Implementation and Case Studies Case Studies Example Choice Comm. Protocol 1 Comm. Protocol 2 Dijkstra Fixed-Size Token Ring QLOCK Readers/Writers Lamport s Bakery Thermostat Description of the System/Property Nondeterministically throws away elements from a multiset/eventually only one element left Simple communication protocol/received data is always a prefix of the data to be sent Fault-tolerant communication protocol/all data is eventually received in-order Dijkstra s mutual exclusion alg./mutual exclusion 2-Token ring mutual exclusion alg./mutual exclusion QLOCK mutual exclusion alg./mutual exclusion Readers-writers mutual exclusion alg./mutual exclusion Unbounded Lamport s bakery/mutual exclusion Open system that dynamically responds to temperature/temperature remains in preset bounds 18 / 22
25 Implementation and Case Studies Example Proof Fragment T 1 { [C, ] [] [n 3 w 3 q 3 ] dup(n w p) tt dup(n 3 w 3 ) tt [Mutex 1 ] [Mutex 2 ] sub(p 1, α) T 1 T 2 axiom(g 2, α) [C, ] [] <n w p q > dup(n w p) tt [Mutex 1 ] [Mutex 2 ] [, C] [] <n w q > dup(n w ) tt [Mutex 1 ] [Mutex 2 ] step(n2w, θ) where G i Mutex i [Mutex], C {G 1, G 2 } 19 / 22
26 Outline 1 Introduction 2 Reachability Logic Semantics 3 The Invariant Paradox 4 Inference System 5 Implementation and Case Studies 6 Conclusions and Future Work
27 Conclusions We have presented our new theory and implementation of a RL semantics and inference system where: 1 our system is rewrite-theory-generic, so it can be applied to analyze distributed system designs 2 our implementation uses a theory-generic, variant satisfiability SMT solver underneath 3 we applied RWL theory transformations in order to specify and verify invariants 20 / 22
28 Future Work At this point, there are a two clear directions for future work: 1 our variant satisfiability implementation currently supports rewrite theories whose equational fragment is decidable we are developing heuristics for undecidable theories 2 we are developing larger, more interesting case studies to provide further validation for our reachability logic tool 21 / 22
29 The End Any Questions? 22 / 22
Lecture Notes: Axiomatic Semantics and Hoare-style Verification
Lecture Notes: Axiomatic Semantics and Hoare-style Verification 17-355/17-665/17-819O: Program Analysis (Spring 2018) Claire Le Goues and Jonathan Aldrich clegoues@cs.cmu.edu, aldrich@cs.cmu.edu It has
More informationMatching Logic: Syntax and Semantics
Matching Logic: Syntax and Semantics Grigore Roșu 1 and Traian Florin Șerbănuță 2 1 University of Illinois at Urbana-Champaign, USA grosu@illinois.edu 2 University of Bucharest, Romania traian.serbanuta@unibuc.ro
More informationThe Underlying Semantics of Transition Systems
The Underlying Semantics of Transition Systems J. M. Crawford D. M. Goldschlag Technical Report 17 December 1987 Computational Logic Inc. 1717 W. 6th St. Suite 290 Austin, Texas 78703 (512) 322-9951 1
More informationEquational Abstractions
Equational Abstractions José Meseguer 1, Miguel Palomino 2, and Narciso Martí-Oliet 2 1 Computer Science Department, University of Illinois at Urbana-Champaign 2 Departamento de Sistemas Informáticos,
More informationIntroduction to Temporal Logic. The purpose of temporal logics is to specify properties of dynamic systems. These can be either
Introduction to Temporal Logic The purpose of temporal logics is to specify properties of dynamic systems. These can be either Desired properites. Often liveness properties like In every infinite run action
More informationTemporal Logic of Actions
Advanced Topics in Distributed Computing Dominik Grewe Saarland University March 20, 2008 Outline Basic Concepts Transition Systems Temporal Operators Fairness Introduction Definitions Example TLC - A
More informationVerifying Temporal Properties of Reactive Systems: A STeP Tutorial *
Formal Methods in System Design, 16, 1 45 (2000) c 2000 Kluwer Academic Publishers, Boston. Manufactured in The Netherlands. Verifying Temporal Properties of Reactive Systems: A STeP Tutorial * NIKOLAJ
More informationIntroduction to Logic in Computer Science: Autumn 2006
Introduction to Logic in Computer Science: Autumn 2006 Ulle Endriss Institute for Logic, Language and Computation University of Amsterdam Ulle Endriss 1 Plan for Today Today s class will be an introduction
More informationFirst-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 informationOrder-Sorted Equality Enrichments Modulo Axioms
Order-Sorted Equality Enrichments Modulo Axioms Raúl Gutiérrez, José Meseguer, and Camilo Rocha Department of Computer Science University of Illinois at Urbana-Champaign 201 N. Goodwin Ave., Urbana, IL
More informationDipartimento di Scienze dell Informazione
UNIVERSITÀ DEGLI STUDI DI MILANO Dipartimento di Scienze dell Informazione RAPPORTO INTERNO N 313-07 Combination Methods for Satisfiability and Model-Checking of Infinite-State Systems Silvio Ghilardi,
More informationConstraint 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 informationThe State Explosion Problem
The State Explosion Problem Martin Kot August 16, 2003 1 Introduction One from main approaches to checking correctness of a concurrent system are state space methods. They are suitable for automatic analysis
More informationAutomata-Theoretic Model Checking of Reactive Systems
Automata-Theoretic Model Checking of Reactive Systems Radu Iosif Verimag/CNRS (Grenoble, France) Thanks to Tom Henzinger (IST, Austria), Barbara Jobstmann (CNRS, Grenoble) and Doron Peled (Bar-Ilan University,
More informationTheorem Proving for Verification
0 Theorem Proving for Verification John Harrison Intel Corporation CAV 2008 Princeton 9th July 2008 1 Formal verification Formal verification: mathematically prove the correctness of a design with respect
More informationChapter 5: Linear Temporal Logic
Chapter 5: Linear Temporal Logic Prof. Ali Movaghar Verification of Reactive Systems Spring 94 Outline We introduce linear temporal logic (LTL), a logical formalism that is suited for specifying LT properties.
More informationLecture Notes on Emptiness Checking, LTL Büchi Automata
15-414: Bug Catching: Automated Program Verification Lecture Notes on Emptiness Checking, LTL Büchi Automata Matt Fredrikson André Platzer Carnegie Mellon University Lecture 18 1 Introduction We ve seen
More informationProving Safety Properties of Rewrite Theories
Proving Safety Properties of Rewrite Theories Technical Report November 2010 Camilo Rocha and José Meseguer {hrochan2,meseguer}@cs.illinois.edu Formal Methods and Declarative Languages Laboratory Department
More informationLearning 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 informationFormal Methods for Java
Formal Methods for Java Lecture 12: Soundness of Sequent Calculus Jochen Hoenicke Software Engineering Albert-Ludwigs-University Freiburg June 12, 2017 Jochen Hoenicke (Software Engineering) Formal Methods
More informationLTCS Report. Blocking and Pinpointing in Forest Tableaux. LTCS-Report 08-02
Dresden University of Technology Institute for Theoretical Computer Science Chair for Automata Theory LTCS Report Blocking and Pinpointing in Forest Tableaux Franz Baader Rafael Peñaloza LTCS-Report 08-02
More informationThe Impact of Craig s Interpolation Theorem. in Computer Science
The Impact of Craig s Interpolation Theorem in Computer Science Cesare Tinelli tinelli@cs.uiowa.edu The University of Iowa Berkeley, May 2007 p.1/28 The Role of Logic in Computer Science Mathematical logic
More informationFloyd-Hoare Style Program Verification
Floyd-Hoare Style Program Verification Deepak D Souza Department of Computer Science and Automation Indian Institute of Science, Bangalore. 9 Feb 2017 Outline of this talk 1 Overview 2 Hoare Triples 3
More informationOn the Complexity of the Reflected Logic of Proofs
On the Complexity of the Reflected Logic of Proofs Nikolai V. Krupski Department of Math. Logic and the Theory of Algorithms, Faculty of Mechanics and Mathematics, Moscow State University, Moscow 119899,
More informationLecture Notes on Software Model Checking
15-414: Bug Catching: Automated Program Verification Lecture Notes on Software Model Checking Matt Fredrikson André Platzer Carnegie Mellon University Lecture 19 1 Introduction So far we ve focused on
More informationThe TLA + proof system
The TLA + proof system Stephan Merz Kaustuv Chaudhuri, Damien Doligez, Leslie Lamport INRIA Nancy & INRIA-MSR Joint Centre, France Amir Pnueli Memorial Symposium New York University, May 8, 2010 Stephan
More informationHandout: Proof of the completeness theorem
MATH 457 Introduction to Mathematical Logic Spring 2016 Dr. Jason Rute Handout: Proof of the completeness theorem Gödel s Compactness Theorem 1930. For a set Γ of wffs and a wff ϕ, we have the following.
More informationThe assertional versus Tarskian methods
The assertional versus Tarskian methods Uri Abraham May 12, 2014 Abstract In this lecture we analyze Peterson s well known two-process criticalsection protocol [3] and prove that the mutual exclusion property
More informationAutomatic Proof-Search Heuristics in the Maude Invariant Analyzer Tool
REVISTA COLOMBIANA DE COMPUTACIÓN Volumen 14, número 2 Págs. 98-121 Automatic Proof-Search Heuristics in the Maude Invariant Analyzer Tool Camilo Rochaz Fecha de Recibido: 09/10/2013 Fecha de Aprobación:
More informationProgram verification using Hoare Logic¹
Program verification using Hoare Logic¹ Automated Reasoning - Guest Lecture Petros Papapanagiotou Part 2 of 2 ¹Contains material from Mike Gordon s slides: Previously on Hoare Logic A simple while language
More information3 Propositional Logic
3 Propositional Logic 3.1 Syntax 3.2 Semantics 3.3 Equivalence and Normal Forms 3.4 Proof Procedures 3.5 Properties Propositional Logic (25th October 2007) 1 3.1 Syntax Definition 3.0 An alphabet Σ consists
More informationEvaluation Driven Proof-Search in Natural Deduction Calculi for Intuitionistic Propositional Logic
Evaluation Driven Proof-Search in Natural Deduction Calculi for Intuitionistic Propositional Logic Mauro Ferrari 1, Camillo Fiorentini 2 1 DiSTA, Univ. degli Studi dell Insubria, Varese, Italy 2 DI, Univ.
More informationLecture Notes on Loop Variants and Convergence
15-414: Bug Catching: Automated Program Verification Lecture Notes on Loop Variants and Convergence Matt Fredrikson Ruben Martins Carnegie Mellon University Lecture 9 1 Introduction The move to total correctness
More informationApplied Logic. Lecture 1 - Propositional logic. Marcin Szczuka. Institute of Informatics, The University of Warsaw
Applied Logic Lecture 1 - Propositional logic Marcin Szczuka Institute of Informatics, The University of Warsaw Monographic lecture, Spring semester 2017/2018 Marcin Szczuka (MIMUW) Applied Logic 2018
More informationTackling Fibonacci words puzzles by finite countermodels
Tackling Fibonacci words puzzles by finite countermodels Alexei Lisitsa 1 Department of Computer Science, The University of Liverpool A.Lisitsa@csc.liv.ac.uk Abstract. In the paper we present an automated
More informationNotes. 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 informationFormal Verification Techniques. Riccardo Sisto, Politecnico di Torino
Formal Verification Techniques Riccardo Sisto, Politecnico di Torino State exploration State Exploration and Theorem Proving Exhaustive exploration => result is certain (correctness or noncorrectness proof)
More informationHoare Logic and Model Checking
Hoare Logic and Model Checking Kasper Svendsen University of Cambridge CST Part II 2016/17 Acknowledgement: slides heavily based on previous versions by Mike Gordon and Alan Mycroft Introduction In the
More informationHoare Logic: Reasoning About Imperative Programs
Hoare Logic: Reasoning About Imperative Programs COMP1600 / COMP6260 Dirk Pattinson Australian National University Semester 2, 2017 Catch Up / Drop in Lab When Fridays, 15.00-17.00 Where N335, CSIT Building
More informationAdvanced Topics in LP and FP
Lecture 1: Prolog and Summary of this lecture 1 Introduction to Prolog 2 3 Truth value evaluation 4 Prolog Logic programming language Introduction to Prolog Introduced in the 1970s Program = collection
More informationDesign of Distributed Systems Melinda Tóth, Zoltán Horváth
Design of Distributed Systems Melinda Tóth, Zoltán Horváth Design of Distributed Systems Melinda Tóth, Zoltán Horváth Publication date 2014 Copyright 2014 Melinda Tóth, Zoltán Horváth Supported by TÁMOP-412A/1-11/1-2011-0052
More informationUnderstanding IC3. Aaron R. Bradley. ECEE, CU Boulder & Summit Middle School. Understanding IC3 1/55
Understanding IC3 Aaron R. Bradley ECEE, CU Boulder & Summit Middle School Understanding IC3 1/55 Further Reading This presentation is based on Bradley, A. R. Understanding IC3. In SAT, June 2012. http://theory.stanford.edu/~arbrad
More informationLecture 2: Symbolic Model Checking With SAT
Lecture 2: Symbolic Model Checking With SAT Edmund M. Clarke, Jr. School of Computer Science Carnegie Mellon University Pittsburgh, PA 15213 (Joint work over several years with: A. Biere, A. Cimatti, Y.
More informationA General Framework for Architecture Composability
A General Framework for Architecture Composability SEFM, 3 rd of September, 2014 Paul Attie, Eduard Baranov, Simon Bliudze, Mohamad Jaber and Joseph Sifakis Reusable design patterns Systems are not built
More informationWHAT 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 informationFrom Rewriting Logic Executable Semantics to Matching Logic Program Verification
extended report From Rewriting Logic Executable Semantics to Matching Logic Program Verification Grigore Roşu University of Illinois at Urbana-Champaign grosu@illinois.edu Chucky Ellison University of
More informationLanguage Definitions as Rewrite Theories
Language Definitions as Rewrite Theories Vlad Rusu, Dorel Lucanu, Traian-Florin Şerbănuţă, Andrei Arusoaie, Andrei Ştefănescu, Grigore Roşu To cite this version: Vlad Rusu, Dorel Lucanu, Traian-Florin
More informationModel for reactive systems/software
Temporal Logics CS 5219 Abhik Roychoudhury National University of Singapore The big picture Software/ Sys. to be built (Dream) Properties to Satisfy (caution) Today s lecture System Model (Rough Idea)
More informationRevising UNITY Programs: Possibilities and Limitations 1
Revising UNITY Programs: Possibilities and Limitations 1 Ali Ebnenasir, Sandeep S. Kulkarni, and Borzoo Bonakdarpour Software Engineering and Network Systems Laboratory Department of Computer Science and
More informationAutomated Synthesis of Tableau Calculi
Automated Synthesis of Tableau Calculi Renate A. Schmidt 1 and Dmitry Tishkovsky 1 School of Computer Science, The University of Manchester Abstract This paper presents a method for synthesising sound
More information185.A09 Advanced Mathematical Logic
185.A09 Advanced Mathematical Logic www.volny.cz/behounek/logic/teaching/mathlog13 Libor Běhounek, behounek@cs.cas.cz Lecture #1, October 15, 2013 Organizational matters Study materials will be posted
More informationTemporal Logic - Soundness and Completeness of L
Temporal Logic - Soundness and Completeness of L CS402, Spring 2018 Soundness Theorem 1 (14.12) Let A be an LTL formula. If L A, then A. Proof. We need to prove the axioms and two inference rules to be
More informationHerbrand Theorem, Equality, and Compactness
CSC 438F/2404F Notes (S. Cook and T. Pitassi) Fall, 2014 Herbrand Theorem, Equality, and Compactness The Herbrand Theorem We now consider a complete method for proving the unsatisfiability of sets of first-order
More informationTrace Diagnostics using Temporal Implicants
Trace Diagnostics using Temporal Implicants ATVA 15 Thomas Ferrère 1 Dejan Nickovic 2 Oded Maler 1 1 VERIMAG, University of Grenoble / CNRS 2 Austrian Institute of Technology October 14, 2015 Motivation
More informationRecent Developments in and Around Coaglgebraic Logics
Recent Developments in and Around Coaglgebraic Logics D. Pattinson, Imperial College London (in collaboration with G. Calin, R. Myers, L. Schröder) Example: Logics in Knowledge Representation Knowledge
More informationHoare Logic (I): Axiomatic Semantics and Program Correctness
Hoare Logic (I): Axiomatic Semantics and Program Correctness (Based on [Apt and Olderog 1991; Gries 1981; Hoare 1969; Kleymann 1999; Sethi 199]) Yih-Kuen Tsay Dept. of Information Management National Taiwan
More informationThe Mother of All Paradoxes
The Mother of All Paradoxes Volker Halbach Truth and Intensionality Amsterdam 3rd December 2016 A theory of expressions The symbols of L are: 1. infinitely many variable symbols v 0, v 1, v 2, v 3,...
More informationBilateral Proofs of Safety and Progress Properties of Concurrent Programs (Working Draft)
Bilateral Proofs of Safety and Progress Properties of Concurrent Programs (Working Draft) Jayadev Misra December 18, 2015 Contents 1 Introduction 3 2 Program and Execution Model 4 2.1 Program Structure..........................
More informationChapter 4: Computation tree logic
INFOF412 Formal verification of computer systems Chapter 4: Computation tree logic Mickael Randour Formal Methods and Verification group Computer Science Department, ULB March 2017 1 CTL: a specification
More informationSymbolic Trajectory Evaluation (STE): Orna Grumberg Technion, Israel
Symbolic Trajectory Evaluation (STE): Automatic Refinement and Vacuity Detection Orna Grumberg Technion, Israel Marktoberdort 2007 1 Agenda Model checking Symbolic Trajectory Evaluation Basic Concepts
More informationSyntax. 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 informationPropositional Reasoning
Propositional Reasoning CS 440 / ECE 448 Introduction to Artificial Intelligence Instructor: Eyal Amir Grad TAs: Wen Pu, Yonatan Bisk Undergrad TAs: Sam Johnson, Nikhil Johri Spring 2010 Intro to AI (CS
More informationDeductive Verification
Deductive Verification Mooly Sagiv Slides from Zvonimir Rakamaric First-Order Logic A formal notation for mathematics, with expressions involving Propositional symbols Predicates Functions and constant
More informationCS 267: Automated Verification. Lecture 1: Brief Introduction. Transition Systems. Temporal Logic LTL. Instructor: Tevfik Bultan
CS 267: Automated Verification Lecture 1: Brief Introduction. Transition Systems. Temporal Logic LTL. Instructor: Tevfik Bultan What do these people have in common? 2013 Leslie Lamport 2007 Clarke, Edmund
More informationComputer-Aided Program Design
Computer-Aided Program Design Spring 2015, Rice University Unit 3 Swarat Chaudhuri February 5, 2015 Temporal logic Propositional logic is a good language for describing properties of program states. However,
More informationFrom Hoare Logic to Matching Logic
From Hoare Logic to Matching Logic Grigore Roşu and Andrei Ştefănescu Department of Computer Science, University of Illinois at Urbana-Champaign {grosu, stefane1}@illinois.edu Abstract. Matching logic
More informationValidating QBF Invalidity in HOL4
Interactive Theorem Proving (ITP) 14 July, 2010 Quantified Boolean Formulae Quantified Boolean Formulae Motivation System Overview Related Work QBF = propositional logic + quantifiers over Boolean variables
More informationHoare Logic I. Introduction to Deductive Program Verification. Simple Imperative Programming Language. Hoare Logic. Meaning of Hoare Triples
Hoare Logic I Introduction to Deductive Program Verification Işıl Dillig Program Spec Deductive verifier FOL formula Theorem prover valid contingent Example specs: safety (no crashes), absence of arithmetic
More informationLogic: Propositional Logic Truth Tables
Logic: Propositional Logic Truth Tables Raffaella Bernardi bernardi@inf.unibz.it P.zza Domenicani 3, Room 2.28 Faculty of Computer Science, Free University of Bolzano-Bozen http://www.inf.unibz.it/~bernardi/courses/logic06
More informationModal logics: an introduction
Modal logics: an introduction Valentin Goranko DTU Informatics October 2010 Outline Non-classical logics in AI. Variety of modal logics. Brief historical remarks. Basic generic modal logic: syntax and
More informationComputation Tree Logic (CTL) & Basic Model Checking Algorithms
Computation Tree Logic (CTL) & Basic Model Checking Algorithms Martin Fränzle Carl von Ossietzky Universität Dpt. of Computing Science Res. Grp. Hybride Systeme Oldenburg, Germany 02917: CTL & Model Checking
More informationDynamic Semantics. Dynamic Semantics. Operational Semantics Axiomatic Semantics Denotational Semantic. Operational Semantics
Dynamic Semantics Operational Semantics Denotational Semantic Dynamic Semantics Operational Semantics Operational Semantics Describe meaning by executing program on machine Machine can be actual or simulated
More informationKrivine s Intuitionistic Proof of Classical Completeness (for countable languages)
Krivine s Intuitionistic Proof of Classical Completeness (for countable languages) Berardi Stefano Valentini Silvio Dip. Informatica Dip. Mat. Pura ed Applicata Univ. Torino Univ. Padova c.so Svizzera
More informationCharacterizing Fault-Tolerant Systems by Means of Simulation Relations
Characterizing Fault-Tolerant Systems by Means of Simulation Relations TECHNICAL REPORT Ramiro Demasi 1, Pablo F. Castro 2,3, Thomas S.E. Maibaum 1, and Nazareno Aguirre 2,3 1 Department of Computing and
More informationPropositional 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 informationSafety and Liveness Properties
Safety and Liveness Properties Lecture #6 of Model Checking Joost-Pieter Katoen Lehrstuhl 2: Software Modeling and Verification E-mail: katoen@cs.rwth-aachen.de November 5, 2008 c JPK Overview Lecture
More informationFormal Verification of Observational Transition Systems with CafeOBJ CITP
Formal Verification of Observational Transition Systems with CafeOBJ CITP Kazuhiro Ogata (JAIST) Nov 15, 2016 Tokyo, Japan 2 Outline of Lecture Two mutual exclusion protocols as examples 2P Mutex A simple
More informationApplied Logic for Computer Scientists. Answers to Some Exercises
Applied Logic for Computer Scientists Computational Deduction and Formal Proofs Springer, 2017 doi: http://link.springer.com/book/10.1007%2f978-3-319-51653-0 Answers to Some Exercises Mauricio Ayala-Rincón
More informationFirst-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 informationChapter 3: Linear temporal logic
INFOF412 Formal verification of computer systems Chapter 3: Linear temporal logic Mickael Randour Formal Methods and Verification group Computer Science Department, ULB March 2017 1 LTL: a specification
More informationLOGIC 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 informationSAT-Based Verification with IC3: Foundations and Demands
SAT-Based Verification with IC3: Foundations and Demands Aaron R. Bradley ECEE, CU Boulder & Summit Middle School SAT-Based Verification with IC3:Foundations and Demands 1/55 Induction Foundation of verification
More informationSafety Analysis versus Type Inference
Information and Computation, 118(1):128 141, 1995. Safety Analysis versus Type Inference Jens Palsberg palsberg@daimi.aau.dk Michael I. Schwartzbach mis@daimi.aau.dk Computer Science Department, Aarhus
More informationA Goal-Oriented Algorithm for Unification in EL w.r.t. Cycle-Restricted TBoxes
A Goal-Oriented Algorithm for Unification in EL w.r.t. Cycle-Restricted TBoxes Franz Baader, Stefan Borgwardt, and Barbara Morawska {baader,stefborg,morawska}@tcs.inf.tu-dresden.de Theoretical Computer
More informationRecent results on Timed Systems
Recent results on Timed Systems Time Petri Nets and Timed Automata Béatrice Bérard LAMSADE Université Paris-Dauphine & CNRS berard@lamsade.dauphine.fr Based on joint work with F. Cassez, S. Haddad, D.
More informationComputer-Checked Meta-Logic
1 PART Seminar 25 February 2015 Computer-Checked Meta-Logic Jørgen Villadsen jovi@dtu.dk Abstract Over the past decades there have been several impressive results in computer-checked meta-logic, including
More informationhal , version 1-21 Oct 2009
ON SKOLEMISING ZERMELO S SET THEORY ALEXANDRE MIQUEL Abstract. We give a Skolemised presentation of Zermelo s set theory (with notations for comprehension, powerset, etc.) and show that this presentation
More informationAn Introduction to Modal Logic III
An Introduction to Modal Logic III Soundness of Normal Modal Logics Marco Cerami Palacký University in Olomouc Department of Computer Science Olomouc, Czech Republic Olomouc, October 24 th 2013 Marco Cerami
More informationAbstractions and Decision Procedures for Effective Software Model Checking
Abstractions and Decision Procedures for Effective Software Model Checking Prof. Natasha Sharygina The University of Lugano, Carnegie Mellon University Microsoft Summer School, Moscow, July 2011 Lecture
More informationFirst-Order Logic. 1 Syntax. Domain of Discourse. FO Vocabulary. Terms
First-Order Logic 1 Syntax Domain of Discourse The domain of discourse for first order logic is FO structures or models. A FO structure contains Relations Functions Constants (functions of arity 0) FO
More informationIC3 and Beyond: Incremental, Inductive Verification
IC3 and Beyond: Incremental, Inductive Verification Aaron R. Bradley ECEE, CU Boulder & Summit Middle School IC3 and Beyond: Incremental, Inductive Verification 1/62 Induction Foundation of verification
More informationFORMAL METHODS LECTURE III: LINEAR TEMPORAL LOGIC
Alessandro Artale (FM First Semester 2007/2008) p. 1/39 FORMAL METHODS LECTURE III: LINEAR TEMPORAL LOGIC Alessandro Artale Faculty of Computer Science Free University of Bolzano artale@inf.unibz.it http://www.inf.unibz.it/
More informationPropositional Logic Language
Propositional Logic Language A logic consists of: an alphabet A, a language L, i.e., a set of formulas, and a binary relation = between a set of formulas and a formula. An alphabet A consists of a finite
More informationThe Maude-NRL Protocol Analyzer Lecture 3: Asymmetric Unification and Indistinguishability
The Maude-NRL Protocol Analyzer Lecture 3: Asymmetric Unification and Catherine Meadows Naval Research Laboratory, Washington, DC 20375 catherine.meadows@nrl.navy.mil Formal Methods for the Science of
More informationCombined Satisfiability Modulo Parametric Theories
Intel 07 p.1/39 Combined Satisfiability Modulo Parametric Theories Sava Krstić*, Amit Goel*, Jim Grundy*, and Cesare Tinelli** *Strategic CAD Labs, Intel **The University of Iowa Intel 07 p.2/39 This Talk
More informationPropositional and Predicate Logic. jean/gbooks/logic.html
CMSC 630 February 10, 2009 1 Propositional and Predicate Logic Sources J. Gallier. Logic for Computer Science, John Wiley and Sons, Hoboken NJ, 1986. 2003 revised edition available on line at http://www.cis.upenn.edu/
More informationSMT-Based Verification of Parameterized Systems
SMT-Based Verification of Parameterized Systems Arie Gurfinkel SEI/CMU, USA University of Waterloo, Canada arie.gurfinkel@uwaterloo.ca Sharon Shoham Tel Aviv University, Israel sharon.shoham@gmail.com
More informationComputational Logic. Davide Martinenghi. Spring Free University of Bozen-Bolzano. Computational Logic Davide Martinenghi (1/30)
Computational Logic Davide Martinenghi Free University of Bozen-Bolzano Spring 2010 Computational Logic Davide Martinenghi (1/30) Propositional Logic - sequent calculus To overcome the problems of natural
More informationCompleteness Theorems and λ-calculus
Thierry Coquand Apr. 23, 2005 Content of the talk We explain how to discover some variants of Hindley s completeness theorem (1983) via analysing proof theory of impredicative systems We present some remarks
More informationLecture 2: Syntax. January 24, 2018
Lecture 2: Syntax January 24, 2018 We now review the basic definitions of first-order logic in more detail. Recall that a language consists of a collection of symbols {P i }, each of which has some specified
More information