undecidability of propositional separation logic and its
play

Undecidability of propositional separation logic and its neighbours - PowerPoint PPT Presentation

Undecidability of propositional separation logic and its neighbours James Brotherston Computer Science Seminar Institute of Cybernetics, Tallinn University of Technology 17 Nov 2011 1/ 27 Outline 1. An overview of propositional separation


  1. Undecidability of propositional separation logic and its neighbours James Brotherston Computer Science Seminar Institute of Cybernetics, Tallinn University of Technology 17 Nov 2011 1/ 27

  2. Outline 1. An overview of propositional separation logic 2/ 27

  3. Outline 1. An overview of propositional separation logic 2. Undecidability of separation logic 2/ 27

  4. Outline 1. An overview of propositional separation logic 2. Undecidability of separation logic 3. Decidable fragments: finite vs. infinite valuations 2/ 27

  5. Outline 1. An overview of propositional separation logic 2. Undecidability of separation logic 3. Decidable fragments: finite vs. infinite valuations 4. Additional results 2/ 27

  6. Outline 1. An overview of propositional separation logic 2. Undecidability of separation logic 3. Decidable fragments: finite vs. infinite valuations 4. Additional results This is joint work with Prof. Max Kanovich, Queen Mary University of London. This talk is based on the paper of the same name (in Proc. LICS’10). 2/ 27

  7. Part I Propositional separation logic 3/ 27

  8. Separation models Separation logic is well established as a formalism for expressing and reasoning about properties of memory. 4/ 27

  9. Separation models Separation logic is well established as a formalism for expressing and reasoning about properties of memory. Definition A separation model is a cancellative partial commutative monoid � H, ◦ , E � . 4/ 27

  10. Separation models Separation logic is well established as a formalism for expressing and reasoning about properties of memory. Definition A separation model is a cancellative partial commutative monoid � H, ◦ , E � . We define: X · Y = def { x ◦ y | x ∈ X, y ∈ Y } whence E ⊆ H is a set of units such that X · E = X . 4/ 27

  11. Separation models Separation logic is well established as a formalism for expressing and reasoning about properties of memory. Definition A separation model is a cancellative partial commutative monoid � H, ◦ , E � . We define: X · Y = def { x ◦ y | x ∈ X, y ∈ Y } whence E ⊆ H is a set of units such that X · E = X . Definition � H, ◦ , E � has indivisible units if h 1 ◦ h 2 ∈ E implies h 1 , h 2 ∈ E . ( NB. All models of practical interest have indivisible units!) 4/ 27

  12. Practical examples of separation models (I) • Heap models � H, ◦ , { e }� , where H = L ⇀ fin RV is the set of heaps ( L is infinite). e is the function with empty domain, and: � h 1 ∪ h 2 if dom ( h 1 ) , dom ( h 2 ) disjoint h 1 ◦ h 2 = undefined otherwise 5/ 27

  13. Practical examples of separation models (I) • Heap models � H, ◦ , { e }� , where H = L ⇀ fin RV is the set of heaps ( L is infinite). e is the function with empty domain, and: � h 1 ∪ h 2 if dom ( h 1 ) , dom ( h 2 ) disjoint h 1 ◦ h 2 = undefined otherwise • A basic example of the above: the RAM-domain model �D , ◦ , { e 0 }� where D is the class of finite subsets of N , the operation ◦ is the union of disjoint sets, and the unit e 0 is ∅ . 5/ 27

  14. Practical examples of separation models (II) • Heap-with-permissions models � H, ◦ , E � , where H = L ⇀ fin ( RV × P ) is a set of heaps with permissions . h 1 ◦ h 2 is defined as before, except that for heaps with the same value at overlapping locations, we add the permissions. 6/ 27

  15. Practical examples of separation models (II) • Heap-with-permissions models � H, ◦ , E � , where H = L ⇀ fin ( RV × P ) is a set of heaps with permissions . h 1 ◦ h 2 is defined as before, except that for heaps with the same value at overlapping locations, we add the permissions. • Stack-and-heap models � S × H, ◦ , E � , where H is a set of heaps or heaps-with-permissions , S = Var ⇀ fin Val is a set of stacks , and � s 1 , h 1 � ◦ � s 2 , h 2 � is defined when s 1 = s 2 and h 1 ◦ h 2 is defined (as above). 6/ 27

  16. Semantics (I) Formulas extend standard propositional connectives with the “multiplicatives” I , ∗ and — ∗ . 7/ 27

  17. Semantics (I) Formulas extend standard propositional connectives with the “multiplicatives” I , ∗ and — ∗ . A valuation for a separation model � H, ◦ , E � is a function ρ from propositional variables to P ( H ). 7/ 27

  18. Semantics (I) Formulas extend standard propositional connectives with the “multiplicatives” I , ∗ and — ∗ . A valuation for a separation model � H, ◦ , E � is a function ρ from propositional variables to P ( H ). Given h ∈ H and formula A we define the relation h | = ρ A by induction on A : 7/ 27

  19. Semantics (I) Formulas extend standard propositional connectives with the “multiplicatives” I , ∗ and — ∗ . A valuation for a separation model � H, ◦ , E � is a function ρ from propositional variables to P ( H ). Given h ∈ H and formula A we define the relation h | = ρ A by induction on A : h | = ρ P ⇔ h ∈ ρ ( P ) h | = ρ F 1 ∧ F 2 ⇔ h | = ρ F 1 and r | = ρ F 2 . . . h | = ρ I ⇔ h = e h | = ρ F 1 ∗ F 2 ⇔ h = h 1 ◦ h 2 and h 1 | = ρ F 1 and h 2 | = ρ F 2 ∀ h ′ . h ◦ h ′ defined and h ′ | = ρ F 1 implies h ◦ h ′ | h | = ρ F 1 — ∗ F 2 ⇔ = ρ F 2 7/ 27

  20. Semantics (I) Formulas extend standard propositional connectives with the “multiplicatives” I , ∗ and — ∗ . A valuation for a separation model � H, ◦ , E � is a function ρ from propositional variables to P ( H ). Given h ∈ H and formula A we define the relation h | = ρ A by induction on A : h | = ρ P ⇔ h ∈ ρ ( P ) h | = ρ F 1 ∧ F 2 ⇔ h | = ρ F 1 and r | = ρ F 2 . . . h | = ρ I ⇔ h = e h | = ρ F 1 ∗ F 2 ⇔ h = h 1 ◦ h 2 and h 1 | = ρ F 1 and h 2 | = ρ F 2 ∀ h ′ . h ◦ h ′ defined and h ′ | = ρ F 1 implies h ◦ h ′ | h | = ρ F 1 — ∗ F 2 ⇔ = ρ F 2 We define � A � ρ = def { h | h | = ρ A } . 7/ 27

  21. Semantics (I) Formulas extend standard propositional connectives with the “multiplicatives” I , ∗ and — ∗ . A valuation for a separation model � H, ◦ , E � is a function ρ from propositional variables to P ( H ). Given h ∈ H and formula A we define the relation h | = ρ A by induction on A : h | = ρ P ⇔ h ∈ ρ ( P ) h | = ρ F 1 ∧ F 2 ⇔ h | = ρ F 1 and r | = ρ F 2 . . . h | = ρ I ⇔ h = e h | = ρ F 1 ∗ F 2 ⇔ h = h 1 ◦ h 2 and h 1 | = ρ F 1 and h 2 | = ρ F 2 ∀ h ′ . h ◦ h ′ defined and h ′ | = ρ F 1 implies h ◦ h ′ | h | = ρ F 1 — ∗ F 2 ⇔ = ρ F 2 We define � A � ρ = def { h | h | = ρ A } . A “sequent” A ⊢ B is valid in � H, ◦ , E � if � A � ρ ⊆ � B � ρ for all ρ . 7/ 27

  22. Semantics (II) In any separation model � H, ◦ , E � we have: � I � ρ = E � A ∗ B � ρ = � A � ρ · � B � ρ ∗ B � ρ largest Z ⊆ H. Z · � A � ρ ⊆ � B � ρ � A — = 8/ 27

  23. Semantics (II) In any separation model � H, ◦ , E � we have: � I � ρ = E � A ∗ B � ρ = � A � ρ · � B � ρ ∗ B � ρ largest Z ⊆ H. Z · � A � ρ ⊆ � B � ρ � A — = In particular this implies restricted ∗ -contraction: � I ∧ A � ρ = � I ∧ A � ρ · � I ∧ A � ρ = � (I ∧ A ) ∗ (I ∧ A ) � ρ 8/ 27

  24. Semantics (II) In any separation model � H, ◦ , E � we have: � I � ρ = E � A ∗ B � ρ = � A � ρ · � B � ρ ∗ B � ρ largest Z ⊆ H. Z · � A � ρ ⊆ � B � ρ � A — = In particular this implies restricted ∗ -contraction: � I ∧ A � ρ = � I ∧ A � ρ · � I ∧ A � ρ = � (I ∧ A ) ∗ (I ∧ A ) � ρ which doesn’t hold in linear logic because, e.g.: � A ∗ B � ρ = Cl( � A � ρ · � B � ρ ) where Cl is a closure operator. This is less precise, and rules out finite valuations since, e.g., Cl( ∅ ) is infinite. 8/ 27

  25. Possible axiomatisations of separation logic • BI, obtained by extending intuitionistic logic with the standard MILL axioms and rules for I, ∗ and — ∗ ; 9/ 27

  26. Possible axiomatisations of separation logic • BI, obtained by extending intuitionistic logic with the standard MILL axioms and rules for I, ∗ and — ∗ ; • BBI, obtained by extending classical logic with the standard MILL axioms and rules for I, ∗ and — ∗ ; 9/ 27

  27. Possible axiomatisations of separation logic • BI, obtained by extending intuitionistic logic with the standard MILL axioms and rules for I, ∗ and — ∗ ; • BBI, obtained by extending classical logic with the standard MILL axioms and rules for I, ∗ and — ∗ ; • a minimal BBI with additives restricted to ∧ and → , i.e. no negation and no falsum (see next slide); 9/ 27

  28. Possible axiomatisations of separation logic • BI, obtained by extending intuitionistic logic with the standard MILL axioms and rules for I, ∗ and — ∗ ; • BBI, obtained by extending classical logic with the standard MILL axioms and rules for I, ∗ and — ∗ ; • a minimal BBI with additives restricted to ∧ and → , i.e. no negation and no falsum (see next slide); • BBI+eW where eW is the restricted ∗ -weakening: I ∧ ( A ∗ B ) ⊢ I ∧ A , which holds in all models with indivisible units. Because of restricted ∗ -contraction we have I ∧ ( A ∗ B ) ≡ I ∧ A ∧ B ; 9/ 27

Recommend


More recommend