Adjunct Elimination in Context Logic for Trees Cristiano Calcagno Thomas Dinsdale-Young Philippa Gardner Imperial College, London.

Slides:



Advertisements
Similar presentations
Automated Theorem Proving Lecture 1. Program verification is undecidable! Given program P and specification S, does P satisfy S?
Advertisements

Completeness and Expressiveness
Synthesis, Analysis, and Verification Lecture 04c Lectures: Viktor Kuncak VC Generation for Programs with Data Structures “Beyond Integers”
Techniques for Proving the Completeness of a Proof System Hongseok Yang Seoul National University Cristiano Calcagno Imperial College.
Propositional Logic CMSC 471 Chapter , 7.7 and Chuck Dyer
Graph Isomorphism Algorithms and networks. Graph Isomorphism 2 Today Graph isomorphism: definition Complexity: isomorphism completeness The refinement.
Games for Static Ambient Logic Giorgio Ghelli joint work with Anuj Dawar and Philippa Gardner.
DOM: Towards a Formal Specification Author: Mark Wheelhouse Supervisor: Dr. Philippa Gardner Thanks to: Gareth Smith, Uri Zarfaty, Ian Hodkinson.
Fall Semantics Juan Carlos Guzmán CS 3123 Programming Languages Concepts Southern Polytechnic State University.
1 Introduction to Computability Theory Lecture4: Regular Expressions Prof. Amos Israeli.
Introduction to Computability Theory
CSE (c) S. Tanimoto, 2008 Propositional Logic
Courtesy Costas Busch - RPI1 Non Deterministic Automata.
1 Operational Semantics Mooly Sagiv Tel Aviv University Textbook: Semantics with Applications.
1 Finite Model Theory Lecture 10 Second Order Logic.
1 Finite Model Theory Lecture 13 FO k, L k 1, ,L  1, , and Pebble Games.
Temporal Logic and Model Checking. Reactive Systems We often classify systems into two types: Transformational: functions from inputs available at the.
Covering Algorithms. Trees vs. rules From trees to rules. Easy: converting a tree into a set of rules –One rule for each leaf: –Antecedent contains a.
Fall 2006Costas Busch - RPI1 Non-Deterministic Finite Automata.
Semantics with Applications Mooly Sagiv Schrirber html:// Textbooks:Winskel The.
Operational Semantics Semantics with Applications Chapter 2 H. Nielson and F. Nielson
Fall 2004COMP 3351 Another NFA Example. Fall 2004COMP 3352 Language accepted (redundant state)
Cs466(Prasad)L8Norm1 Normal Forms Chomsky Normal Form Griebach Normal Form.
Fall 2006Costas Busch - RPI1 PDAs Accept Context-Free Languages.
Costas Busch - LSU1 Non-Deterministic Finite Automata.
Daniel Kroening and Ofer Strichman Decision Procedures An Algorithmic Point of View Deciding ILPs with Branch & Bound ILP References: ‘Integer Programming’
Decision Procedures An Algorithmic Point of View
Discrete Mathematics CS 2610 March 26, 2009 Skip: structural induction generalized induction Skip section 4.5.
Lecture 21: Languages and Grammars. Natural Language vs. Formal Language.
Chapter 4 Context-Free Languages Copyright © 2011 The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 1.
Pricing Combinatorial Markets for Tournaments Presented by Rory Kulz.
Context Free Grammars CIS 361. Introduction Finite Automata accept all regular languages and only regular languages Many simple languages are non regular:
Advanced Topics in Propositional Logic Chapter 17 Language, Proof and Logic.
1 CMSC 471 Fall 2002 Class #10/12–Wednesday, October 2 / Wednesday, October 9.
Managing XML and Semistructured Data Lecture 13: XDuce and Regular Tree Languages Prof. Dan Suciu Spring 2001.
Correctness Proofs and Counter-model Generation with Authentication-Protocol Logic Koji Hasebe Mitsuhiro Okada Department of Philosophy, Keio University.
Management of XML and Semistructured Data Lecture 11: Schemas Wednesday, May 2nd, 2001.
ICS 253: Discrete Structures I Induction and Recursion King Fahd University of Petroleum & Minerals Information & Computer Science Department.
CS 103 Discrete Structures Lecture 13 Induction and Recursion (1)
Closure Properties Lemma: Let A 1 and A 2 be two CF languages, then the union A 1  A 2 is context free as well. Proof: Assume that the two grammars are.
CSCI1600: Embedded and Real Time Software Lecture 11: Modeling IV: Concurrency Steven Reiss, Fall 2015.
Supercompilation and Normalisation by Evaluation Gavin Mendel-Gleason & Geoff Hamilton Dublin City University.
Context Free Pumping Lemma. CFL Pumping Lemma A CFL pump consists of two non-overlapping substrings that can be pumped simultaneously while staying in.
1 Knowledge Based Systems (CM0377) Lecture 6 (last modified 20th February 2002)
Operational Semantics Mooly Sagiv Tel Aviv University Textbook: Semantics with Applications Chapter.
Quantified Data Automata on Skinny Trees: an Abstract Domain for Lists Pranav Garg 1, P. Madhusudan 1 and Gennaro Parlato 2 1 University of Illinois at.
CMSC 330: Organization of Programming Languages Operational Semantics.
1 Lecture 3 The Languages of K, T, B and S4. 2 Last time we extended the language PC to the language S5 by adding two new symbols ‘□’ (for ‘It is necessary.
Operational Semantics Mooly Sagiv Tel Aviv University Sunday Scrieber 8 Monday Schrieber.
Process Algebra (2IF45) Basic Process Algebra Dr. Suzana Andova.
Operational Semantics Mooly Sagiv Reference: Semantics with Applications Chapter 2 H. Nielson and F. Nielson
Copyright 1999Paul F. Reynolds, Jr. Foundations of Logic Programming.
Towards a Semantic Model for Java Wildcards Sophia Drossopoulou Mariangiola Dezani-Ciancaglini Imperial College London Università di Torino Italy Nicholas.
Costas Busch - LSU1 PDAs Accept Context-Free Languages.
1.2 Reasoning Mathematically Two Types of Reasoning Remember to Silence Your Cell Phone and Put It in Your Bag!
Hans Bodlaender, Marek Cygan and Stefan Kratsch
Resolution in the Propositional Calculus
Non Deterministic Automata
Reasoning About Code.
Reasoning about code CSE 331 University of Washington.
Context Free Pumping Lemma Some languages are not context free!
Non-Deterministic Finite Automata
Introduction to Finite Automata
CSCI1600: Embedded and Real Time Software
Finite-Trace Linear Temporal Logic: Coinductive Completeness
Reasoning with the Propositional Calculus
Reasoning with the Propositional Calculus
Reasoning with the Propositional Calculus
Reasoning with the Propositional Calculus
Propositional Logic CMSC 471 Chapter , 7.7 and Chuck Dyer
Presentation transcript:

Adjunct Elimination in Context Logic for Trees Cristiano Calcagno Thomas Dinsdale-Young Philippa Gardner Imperial College, London

Context Logic Ambient Logic (Cardelli, Gordon) is a logic for reasoning about static properties of node- labelled, unranked trees (e.g. Firewalls, XML data) Separation Logic (O’Hearn, Reynolds, Yang) is a logic for local reasoning about dynamic heap update Context Logic evolved from these two as a logic for local reasoning about dynamic tree update –Talks both about trees and contexts into which they may be placed

u[P]u[P]

P 1 | P 2

K(P)K(P)

K  P

P 1  P 2

Adjoints The adjoints allow us to reason hypothetically about an extended object They are essential for expressing weakest preconditions But for closed formulae, the adjoints add no expressive power to Separation Logic (Lozes) and Ambient Logic (Lozes, and later Dawar, Gardner, Ghelli)

Adjunct Elimination Intuition: –adjoints make us reason about trees that are bigger than the ones we are actually interested in –we would expect that any property expressed in terms of these hypothetical trees could be expressed without them In Context Logic for Trees, one of the adjoints (  ) can also be eliminated, but the other (  ) cannot (Dinsdale-Young)

Non-eliminability of  Trees can be split arbitrarily into a context and subtree Using , we can fill the context hole and then split it as a tree We cannot split an arbitrary subtree (or subcontext) from a context

Counterexample The formula 0  True(u[0]) –Expresses “putting the empty tree into the context hole gives a tree that has a leaf u ” –Distinguishes c i from d i for all i There is no formula without adjoints that can express this property

Context Logic with Composition Adding context composition “fixes” the counterexample – we can now split contexts Not yet proved adjunct elimination Still can’t split contexts in the same way as trees

Multi-holed Context Logic for Trees

Ehrenfeucht-Fraïssé Games We prove adjunct elimination using ranked games –Played between Spoiler and Duplicator –On two tree contexts –Moves correspond with logical connectives –Rank determines which moves may be played and ensures termination Spoiler’s aim is to demonstrate a difference between the two trees. Duplicator’s aim is to prevent this. The games are sound and complete: Spoiler has a winning strategy if and only if the trees can be distinguished by a formula of the game rank (of which there are finitely many)

Games Spoiler starts each round by choosing a move to play (providing that the rank and rules allow it) and one of the context-environment pairs The rules for the move determine what happens

Game Moves

CMP move

Game Moves

RIG move

Adjunct Elimination We prove that whenever Spoiler has a winning strategy using adjunct moves he also has one without using adjunct moves By soundness and completeness of games, this implies adjunct elimination

Key Result We need to show: If Duplicator can win when Spoiler plays no adjunct moves then Duplicator can also win when Spoiler plays adjunct moves We show how Duplicator responds to one adjunct move (LEF or RIG) The result follows by induction

Key Result

Proof The proof is by induction on n We look at the cases for which move Spoiler plays on the composite game Some cases have sub-cases Example: CMP move

CMP move (case 1)

CMP move (case 2)

CMP move (case 3)

CMP move (case 4)

CMP move (case 1)

Related and Further Work Without adjuncts, Context Logic formulae can be expressed by regular forest grammars Heuter and Bojańczyk have studied similar classes of regular languages that correspond to definability in First- Order Logic Automata may give a decision procedure for multi-holed Context Logic with adjoints Multi-holed Context Logic may prove useful for concurrent tree update Calcagno, Gardner and Zarfaty have shown that adjunct elimination does not hold on open formulae (i.e. with propositional variables)

Conclusions Adjunct elimination does not hold for single-holed Context Logic for trees Multi-holed Context Logic is a natural extension of the single-holed logic Adjunct elimination does hold for this logic

As the poet said, ‘Only God can make a tree’ – probably because it’s so hard to figure out how to get the bark on. – Woody Allen

Satisfaction Relation