Presentation is loading. Please wait.

Presentation is loading. Please wait.

Games for Static Ambient Logic Giorgio Ghelli joint work with Anuj Dawar and Philippa Gardner.

Similar presentations


Presentation on theme: "Games for Static Ambient Logic Giorgio Ghelli joint work with Anuj Dawar and Philippa Gardner."— Presentation transcript:

1 Games for Static Ambient Logic Giorgio Ghelli joint work with Anuj Dawar and Philippa Gardner

2 A Game-Based Proof of Adjunct Elimination in SL(H) Giorgio Ghelli joint work with Anuj Dawar and Philippa Gardner

3 April 2004Giorgio Ghelli - Games for a Spatial Logic3 Spatial logics  Bunched Implication (Pym, O’Hearn, LICS’99, BSL’99, CSL’99): [HE, F]  [H, E-F] and [HE, F]  [H, EF]  Separation Logics (O’Hearn, Reynolds, Yang, Calcagno, MPCS’99, POPL’01, CSL’01, LICS’02): Properties of Heaps, Hoare Triples {emp  x=2} x=cons(1,2) {2,57 1,2}  Ambient Logic (Cardelli, Gordon, Caires, DBPL’99, POPL’00): Talking about the evolution of mobile ambients P  \ mQ (n)n[0]  Spatial (Static) Ambient Logic (and Graph Logic) (Cardelli, Gordon, Gardner, Ghelli, DBPL’99, ESOP’01, ICALP’02): Talking about trees and graphs P  \.Paper[.Author[Cardelli]]

4 April 2004Giorgio Ghelli - Games for a Spatial Logic4 A spatial logic for trees  Paper[… | Author[G] | …]  Paper[True] F  m[φ] iff F=m[F’], F’  φ ( m[F]  m[φ] iff F  φ ) F  True: always  Paper[…| Author[G]] | …  Paper[True] | True F  φ | ψ iff F’, F”. F = F’|F”, F’  φ, F”  ψ ( F’|F”  φ | ψ iff F’  φ, F”  ψ)  Paper[… | Author[G] | …] | Paper[…] | …  Paper[Author[True] | True ] | True (abbrev.:.Paper[.Author[True] ] )  Paper[True] | Paper[True]: exactly two papers

5 April 2004Giorgio Ghelli - Games for a Spatial Logic5 Applications  TQL: from $DB |=.Paper[ Author[G] | Title[$t] ] select PaperByG[ $t ] from $DB |= not.Paper[not.Title[True]] And not exists $X. ( Paper[Title[$X]] | Paper[Title[$X]] ) select TitleIsAKey

6 April 2004Giorgio Ghelli - Games for a Spatial Logic6 Applications  XMLSchema-like Types m[φ]*: 0  m[φ]  m[φ]|m[φ]  …. $DB \ Paper[ Author[T]* | (Journal[T]  Conference[T]) | (Year[T]  0) ]*  Types and constraints can be used to rewrite queries

7 April 2004Giorgio Ghelli - Games for a Spatial Logic7 Quantifying over names  Quantifying over public names: x..paper[.author[x]] |.paper[.author[x]]  Quantifying over hidden names Hidden names: (x)(paper[id[x]|…] | paper[cites[x]|…] ] There is a dangling pointer in F: F  Hx. (.paper.cites[x]  .paper.id[x])

8 April 2004Giorgio Ghelli - Games for a Spatial Logic8 Adjuncts  Mixin types: F \ φ  ψ  G \ φ  F | G \ ψ  Adjunct property: φ  ξ [ ψ 45 φ [ ξ  ψ φ | ξ [ ψ 45 φ [ ξ f ψ

9 April 2004Giorgio Ghelli - Games for a Spatial Logic9 Power of the Adjunct  Without adjunct: Model-checking with  PSPACE (T, φ  T \ φ?) Validity undecidable (φ  T. T \ φ?)  With adjuncts: Model-checking the adjunct decides validity: 0 \ True  φ  F \ True  F|0 \ φ  forall F. F \ φ Hence, model-checking is undecidable Wow,  is powerful

10 April 2004Giorgio Ghelli - Games for a Spatial Logic10 Lozes result (July 2003)  Lozes, adjunct elimination: Consider L(0,|,[],H,  ) (actually, L(H,©, ,…)) For any sentence φ of L(0,|,[],H,  ) an equivalent ψ exists which uses no adjunct (φ ~ ψ  def forall T. T \ φ  T \ ψ)  Ghelli and Conforti: Model-checking of L(0,|,[],H,  ) is undecidable Model-checking of L(0,|,[],H) is decidable  As a consequence: Adjuncts elimination cannot be computable!

11 April 2004Giorgio Ghelli - Games for a Spatial Logic11 Let’s play games  Rules of the game: Two boards (big, quite similar) and a rank (bag of moves) Spoiler wants to prove them different, Duplicators says they are similar enough

12 April 2004Giorgio Ghelli - Games for a Spatial Logic12 How spoiler wins a game  The rank: 2 | moves, one 0 move  The boards (T,U) n 1 [] | n 2 [] | n 3 [] | n 4 [] vs. n 1 [] | n 2 [] | n 3 []  The game n 1 [] | n 2 [] | n 3 [] | n 4 [] vs. n 1 [] | n 2 [] | n 3 [] n1n1 n2n2 n3n3 n4n4 n1n1 n2n2 n3n3 n3n3 n4n4 n3n3

13 April 2004Giorgio Ghelli - Games for a Spatial Logic13 Spoiler loses a game  The rank: k split (|) moves, j m[] moves, one 0 move  The boards (T,U) m 1 []|…|m 2**(k) [] m 1 []|…|m 2**(k)+1 []  The invariant: Either T = U, or they differ by one and are bigger than 2**(k+j)

14 April 2004Giorgio Ghelli - Games for a Spatial Logic14 The H move  The boards: (m) m[m[]] vs. (n 1,n 2 ) n 2 [n 1 []]  H move Spo: xq, {q/m} Dup: {q/n 2 } q[q[]]vs. (n 1 ) q[n 1 []]  x[] move: q[]vs. (n 1 ) n 1 []  x[] move: Spoiler wins

15 April 2004Giorgio Ghelli - Games for a Spatial Logic15 The adjunct move  Spoiler adds T’ to one board (say, T)  Duplicator adds U’ to the other board U  Spoiler chooses whether to go on with: T’ vs. U’ T|T’ vs. U|U’  Adjunct elimination proof in one sentence Why should Spoiler play the useless adjunct move?

16 April 2004Giorgio Ghelli - Games for a Spatial Logic16 To sum up  Given a formula in L(0,|,[],H,  ), there is no computable way of getting rid of   But, given a strategy in Games(0,|,[],H,  ), getting rid of  is extremely easy  Now we know why!  Oh, by the way, you cannot eliminate  from L(0,|,[],,  )…


Download ppt "Games for Static Ambient Logic Giorgio Ghelli joint work with Anuj Dawar and Philippa Gardner."

Similar presentations


Ads by Google