Finite-Trace Linear Temporal Logic: Coinductive Completeness

Slides:



Advertisements
Similar presentations
Copyright 2000 Cadence Design Systems. Permission is granted to reproduce without modification. Introduction An overview of formal methods for hardware.
Advertisements

Model Checking Lecture 3. Specification Automata Syntax, given a set A of atomic observations: Sfinite set of states S 0 Sset of initial states S S transition.
Automated Theorem Proving Lecture 1. Program verification is undecidable! Given program P and specification S, does P satisfy S?
Model Checking Lecture 2. Three important decisions when choosing system properties: 1automata vs. logic 2branching vs. linear time 3safety vs. liveness.
Completeness and Expressiveness
Brief Introduction to Logic. Outline Historical View Propositional Logic : Syntax Propositional Logic : Semantics Satisfiability Natural Deduction : Proofs.
Some important properties Lectures of Prof. Doron Peled, Bar Ilan University.
An improved on-the-fly tableau construction for a real-time temporal logic Marc Geilen 12 July 2003 /e.
Part 3: Safety and liveness
1 Model checking. 2 And now... the system How do we model a reactive system with an automaton ? It is convenient to model systems with Transition systems.
Automatic Verification Book: Chapter 6. What is verification? Traditionally, verification means proof of correctness automatic: model checking deductive:
Hoare’s Correctness Triplets Dijkstra’s Predicate Transformers
 Dr. Vered Gafni 1 LTL Decidability Enables consistency check, but also base for verification.
CIS 540 Principles of Embedded Computation Spring Instructor: Rajeev Alur
Introduction to Computability Theory
Brief Introduction to Logic. Outline Historical View Propositional Logic : Syntax Propositional Logic : Semantics Satisfiability Natural Deduction : Proofs.
Specification Formalisms Book: Chapter 5. Properties of formalisms Formal. Unique interpretation. Intuitive. Simple to understand (visual). Succinct.
Review of the automata-theoretic approach to model-checking.
A logic for reasoning about digital rights Riccardo Pucella, Vicky Weissman Cornell University.
Semantics with Applications Mooly Sagiv Schrirber html:// Textbooks:Winskel The.
ESE601: Hybrid Systems Introduction to verification Spring 2006.
Automata and Formal Lanugages Büchi Automata and Model Checking Ralf Möller based on slides by Chang-Beom Choi Provable Software Lab, KAIST.
1 Formal Engineering of Reliable Software LASER 2004 school Tutorial, Lecture1 Natasha Sharygina Carnegie Mellon University.
Model Checking LTL over (discrete time) Controllable Linear System is Decidable P. Tabuada and G. J. Pappas Michael, Roozbeh Ph.D. Course November 2005.
Discrete Mathematics and its Applications
Using Abduction and Induction for Operational Requirements Elaboration Dalal Alrajeh Oliver Ray Alessandra RussoSebastian Uchitel AIAI 2007 Sept. 15 th.
Proof Systems KB |- Q iff there is a sequence of wffs D1,..., Dn such that Dn is Q and for each Di in the sequence: a) either Di is in KB or b) Di can.
CSI 3125, Axiomatic Semantics, page 1 Axiomatic semantics The assignment statement Statement composition The "if-then-else" statement The "while" statement.
CIS 540 Principles of Embedded Computation Spring Instructor: Rajeev Alur
4.8 Writing Equations from Patterns A very useful problem-solving strategy is look for a pattern. When you make a conclusion based on a pattern of examples,
Logic in Computer Science - Overview Sep 1, 2009 박성우.
Allen Linear Temporal Logic Translation to LTL and Monitor Synthesis Grigore Rosu (University of Illinois at U-C) Saddek Bensalem (VERIMAG)
ARTIFICIAL INTELLIGENCE [INTELLIGENT AGENTS PARADIGM] Professor Janis Grundspenkis Riga Technical University Faculty of Computer Science and Information.
Great Theoretical Ideas in Computer Science.
Recognizing safety and liveness Presented by Qian Huang.
CS6133 Software Specification and Verification
Defining Liveness by Bowen Alpern and Fred B. Schneider Presented by Joe Melnyk.
Lecture 5 1 CSP tools for verification of Sec Prot Overview of the lecture The Casper interface Refinement checking and FDR Model checking Theorem proving.
From Hoare Logic to Matching Logic Reachability Grigore Rosu and Andrei Stefanescu University of Illinois, USA.
VIS Technology Transfer Course Session 7 Fairness Constraints and Monitors Serdar Tasiran.
CIS 540 Principles of Embedded Computation Spring Instructor: Rajeev Alur
1 Finite Model Theory Lecture 1: Overview and Background.
1 Temporal logic. 2 Prop. logic: model and reason about static situations. Example: Are there truth values that can be assigned to x,y simultaneously.
From Natural Language to LTL: Difficulties Capturing Natural Language Specification in Formal Languages for Automatic Analysis Elsa L Gunter NJIT.
Today’s Agenda  Quiz 4  Temporal Logic Formal Methods in Software Engineering1.
1 Equality of Streams is a Problem Grigore Rosu University of Illinois at Urbana-Champaign.
CIS 540 Principles of Embedded Computation Spring Instructor: Rajeev Alur
Model Checking Lecture 2. Model-Checking Problem I |= S System modelSystem property.
MA/CSSE 474 Theory of Computation Universal Turing Machine Church-Turing Thesis Delayed due dates for HWs See updated schedule page. No class meeting.
Model Checking Lecture 2 Tom Henzinger. Model-Checking Problem I |= S System modelSystem property.
Matching Logic An Alternative to Hoare/Floyd Logic
Behavioral Rewrite Systems and Behavioral Productivity
(One-Path) Reachability Logic
Great Theoretical Ideas in Computer Science
Lecture 2 Propositional Logic
Matching Logic - A New Program Verification Approach -
Axiomatic semantics Points to discuss: The assignment statement
Formal Methods in software development
Generating Optimal Linear Temporal Logic Monitors by Coinduction
On Kripke’s Alleged Proof of Church-Turing Thesis
Computer Security: Art and Science, 2nd Edition
Formal Methods in software development
Towards a Unified Theory of Operational and Axiomatic Semantics
Language-Independent Verification Framework
Computer Science cpsc322, Lecture 20
Translating Linear Temporal Logic into Büchi Automata
Introduction to verification
Chapter 2: Analysis and Verification of Non-Real-Time Systems
Formal Methods in software development
Properties of Relational Logic
Presentation transcript:

Finite-Trace Linear Temporal Logic: Coinductive Completeness ∘    ───────  Grigore Rosu University of Illinois at Urbana-Champaign

Overview ───────  ∘    On finite traces ∘    ───────  Overview On finite traces Translating finite-trace LTL to infinite-trace LTL Borrow decision procedures and results (PSPACE completeness for validity, etc.) Borrow complete deduction system Comes at a price, we do not want to go that way Direct results Direct decision procedure Direct complete proof system Coinduction

Finite Traces ───────  Ubiquitous in runtime verification ∘    ───────  Finite Traces Examples abound in the literature Automata theory, languages (regular, context-free, Turing complete) Program verification (Hoare logic – partial correctness) Log analysis (all logs are finite) Philosophy (are there really any infinite traces? what is infinity, anyway?) Ubiquitous in runtime verification Many variants of LTL with finite trace models proposed Goal: Coinduction for finite-trace reasoning Approach: simplest LTL variant; no new LTL variant proposed

∘ holds one one-element traces Finite-Trace LTL Weak interpretation: ∘ holds one one-element traces

Finite-Trace LTL  &  Infinite-Trace LTL

Translating Finite-Trace to Infinite-Trace LTL So we can borrow decision procedures and complete deduction from infinite-trace LTL. But original formula more than double in size, and we lose intuition for its meaning. We want direct results! Translating Finite-Trace to Infinite-Trace LTL Extend each finite trace with infinitely many $ events ($ = nothing) Transform to , where defined as follows: Example: becomes

First Result for Finite-Trace LTL Technical, see paper Complete atom traces Fischer-Ladner closure Tableaux-based decision procedure for satisfiability No need to check for ultimately periodic sequences Direct PSPACE-complete decision procedure for satisfiability

Second Result: Complete Deduction But let’s firs recall complete deduction for infinite-trace LTL, starting with modal logic

Modal logic Complete Proof System

Infinite-trace LTL = two modal logics, plus more Lichtenstein & Pnueli 2000, Dam & Guelev 2004+, … Unsound: “” does not hold for finite-trace LTL. Everything else stays sound. Incomplete: cannot prove

Induction equivalently stated as below   ∘ ───────   □ Stays sound for finite-trace LTL

Main Contribution: Coinduction proof rule for finite trace reasoning If happy tomorrow implies happy today, then happy forever. With weak next “∘” ∘    ─────── 

Gödel-Löb rule in “provability logic” “□” means “ provable” □    ─────── 

Interesting Observation: Coinduction = Induction + Finiteness ∘    ─────── =    ∘ ─────── +   □

Second Result: Complete Deduction for Finite-Trace LTL Very technical, see paper

Conclusion and Future Work Finite-traces important in RV and not only Straightforward finite-trace LTL variant Translation to infinite-trace LTL undesirable Direct decision procedure Coinduction yields complete deduction Not implemented yet: future work

Coinduction is Cool! ∘    ─────── 