Skip to main content
Top

2017 | OriginalPaper | Chapter

Bringing Order to the Separation Logic Jungle

Authors : Qinxiang Cao, Santiago Cuellar, Andrew W. Appel

Published in: Programming Languages and Systems

Publisher: Springer International Publishing

Activate our intelligent search to find suitable subject content or patents.

search-config
loading …

Abstract

Research results from so-called “classical” separation logics are not easily ported to so-called “intuitionistic” separation logics, and vice versa. Basic questions like, “Can the frame rule be proved independently of whether the programming language is garbage-collected?” “Can amortized resource analysis be ported from one separation logic to another?” should be straightforward. But they are not. Proofs done in a particular separation logic are difficult to generalize. We argue that this limitation is caused by incompatible semantics. For example, emp sometimes holds everywhere and sometimes only on units.
In this paper, we introduce a unifying semantics and build a framework that allows to reason parametrically over all separation logics. Many separation algebras in the literature are accompanied, explicitly or implicitly, by a preorder. Our key insight is to axiomatize the interaction between the join relation and the preorder. We prove every separation logic to be sound and complete with respect to this unifying semantics. Further, our framework enables us to generalize the sound0.ness proofs for the frame rule and CSL. It also reveals a new world of meaningful intermediate separation logics between “intuitionistic” and “classical”.

Dont have a licence yet? Then find out more about our products and how to get one now:

Springer Professional "Wirtschaft+Technik"

Online-Abonnement

Mit Springer Professional "Wirtschaft+Technik" erhalten Sie Zugriff auf:

  • über 102.000 Bücher
  • über 537 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Maschinenbau + Werkstoffe
  • Versicherung + Risiko

Jetzt Wissensvorsprung sichern!

Springer Professional "Technik"

Online-Abonnement

Mit Springer Professional "Technik" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 390 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Maschinenbau + Werkstoffe




 

Jetzt Wissensvorsprung sichern!

Springer Professional "Wirtschaft"

Online-Abonnement

Mit Springer Professional "Wirtschaft" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 340 Zeitschriften

aus folgenden Fachgebieten:

  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Versicherung + Risiko




Jetzt Wissensvorsprung sichern!

Footnotes
1
Pottier also adds a passive execution order which constitutes what he calls a monotonic separation algebra. The idea is similar but goes in a different direction, aiming for a type system and not a separation logic.
 
Literature
1.
go back to reference Appel, A.W., Dockins, R., Hobor, A., Beringer, L., Dodds, J., Stewart, G., Blazy, S., Leroy, X.: Program Logics for Certified Compilers, Cambridge (2014) Appel, A.W., Dockins, R., Hobor, A., Beringer, L., Dodds, J., Stewart, G., Blazy, S., Leroy, X.: Program Logics for Certified Compilers, Cambridge (2014)
2.
go back to reference Appel, A.W., McAllester, D.A.: An indexed model of recursive types for foundational proof-carrying code. ACM Trans. Program. Lang. Syst. 23(5), 657–683 (2001)CrossRef Appel, A.W., McAllester, D.A.: An indexed model of recursive types for foundational proof-carrying code. ACM Trans. Program. Lang. Syst. 23(5), 657–683 (2001)CrossRef
3.
go back to reference Appel, A.W., Melliès, P.-A., Richards, C.D., Vouillon, J.: A very modal model of a modern, major, general type system. In: Proceedings of the 34th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (2007) Appel, A.W., Melliès, P.-A., Richards, C.D., Vouillon, J.: A very modal model of a modern, major, general type system. In: Proceedings of the 34th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (2007)
4.
go back to reference Atkey, R.: Amortised resource analysis with separation logic. Logical Methods Comput. Sci. 7(2) (2011) Atkey, R.: Amortised resource analysis with separation logic. Logical Methods Comput. Sci. 7(2) (2011)
5.
6.
go back to reference Birkedal, L., Reus, B., Schwinghammer, J., Støvring, K., Thamsborg, J., Yang, H.: Step-indexed Kripke models over recursive worlds. In: Proceedings of the 38th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (2011) Birkedal, L., Reus, B., Schwinghammer, J., Støvring, K., Thamsborg, J., Yang, H.: Step-indexed Kripke models over recursive worlds. In: Proceedings of the 38th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (2011)
8.
go back to reference Brotherston, J., Kanovich, M.: Undecidability of propositional separation logic and its neighbours. In: 2010 25th Annual IEEE Symposium on Logic in Computer Science (LICS), pp. 130–139. IEEE (2010) Brotherston, J., Kanovich, M.: Undecidability of propositional separation logic and its neighbours. In: 2010 25th Annual IEEE Symposium on Logic in Computer Science (LICS), pp. 130–139. IEEE (2010)
9.
go back to reference Brotherston, J., Villard, J.: Parametric completeness for separation theories. In: The 41st Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (2014) Brotherston, J., Villard, J.: Parametric completeness for separation theories. In: The 41st Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (2014)
10.
go back to reference Calcagno, C., O’Hearn, P.W., Yang, H.: Local action and abstract separation logic. In: Proceedings of the 22nd Annual IEEE Symposium on Logic in Computer Science, LICS 2007, pp. 366–378, Washington, DC, USA. IEEE Computer Society (2007) Calcagno, C., O’Hearn, P.W., Yang, H.: Local action and abstract separation logic. In: Proceedings of the 22nd Annual IEEE Symposium on Logic in Computer Science, LICS 2007, pp. 366–378, Washington, DC, USA. IEEE Computer Society (2007)
11.
go back to reference Chen, H., Ziegler, D., Chajed, T., Chlipala, A., Kaashoek, M.F., Zeldovich, N.: Using crash hoare logic for certifying the FSCQ file system. In: Miller, E.L., Hand, S. (eds.) Proceedings of the 25th Symposium on Operating Systems Principles, SOSP 2015, Monterey, CA, USA, 4–7 October 2015, pp. 18–37. ACM (2015) Chen, H., Ziegler, D., Chajed, T., Chlipala, A., Kaashoek, M.F., Zeldovich, N.: Using crash hoare logic for certifying the FSCQ file system. In: Miller, E.L., Hand, S. (eds.) Proceedings of the 25th Symposium on Operating Systems Principles, SOSP 2015, Monterey, CA, USA, 4–7 October 2015, pp. 18–37. ACM (2015)
12.
go back to reference Dinsdale-Young, T., Birkedal, L., Gardner, P., Parkinson, M.J., Yang, H.: Views: compositional reasoning for concurrent programs. In: The 40th Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (2013) Dinsdale-Young, T., Birkedal, L., Gardner, P., Parkinson, M.J., Yang, H.: Views: compositional reasoning for concurrent programs. In: The 40th Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (2013)
15.
go back to reference Galmiche, D., Méry, D., Pym, D.J.: The semantics of BI and resource tableaux. Mathe. Struct. Comput. Sci. 15(6), 1033–1088 (2005)MathSciNetCrossRefMATH Galmiche, D., Méry, D., Pym, D.J.: The semantics of BI and resource tableaux. Mathe. Struct. Comput. Sci. 15(6), 1033–1088 (2005)MathSciNetCrossRefMATH
16.
go back to reference Gotsman, A., Berdine, J., Cook, B.: Precision and the conjunction rule in concurrent separation logic. Electr. Notes Theor. Comput. Sci. 276, 171–190 (2011)MathSciNetCrossRefMATH Gotsman, A., Berdine, J., Cook, B.: Precision and the conjunction rule in concurrent separation logic. Electr. Notes Theor. Comput. Sci. 276, 171–190 (2011)MathSciNetCrossRefMATH
17.
go back to reference Hobor, A., Dockins, R., Appel, A.W.: A theory of indirection via approximation. In: Proceedings of the 37th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (2010) Hobor, A., Dockins, R., Appel, A.W.: A theory of indirection via approximation. In: Proceedings of the 37th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (2010)
18.
go back to reference Hur, C.-K., Dreyer, D., Vafeiadis, V.: Separation logic in the presence of garbage collection. In: Proceedings of the 26th Annual IEEE Symposium on Logic in Computer Science, LICS 2011, 21–24 June 2011, Toronto, Ontario, Canada, pp. 247–256 (2011) Hur, C.-K., Dreyer, D., Vafeiadis, V.: Separation logic in the presence of garbage collection. In: Proceedings of the 26th Annual IEEE Symposium on Logic in Computer Science, LICS 2011, 21–24 June 2011, Toronto, Ontario, Canada, pp. 247–256 (2011)
19.
go back to reference Ishtiaq, S.S., O’Hearn, P.W.: BI as an assertion language for mutable data structures. In: Conference Record of POPL 2001: The 28th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (2001) Ishtiaq, S.S., O’Hearn, P.W.: BI as an assertion language for mutable data structures. In: Conference Record of POPL 2001: The 28th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (2001)
20.
go back to reference Jensen, J.B.: Techniques for model construction in separation logic. Ph.D. thesis, IT University of Copenhagen, March 2014 Jensen, J.B.: Techniques for model construction in separation logic. Ph.D. thesis, IT University of Copenhagen, March 2014
21.
go back to reference Jensen, J.B., Birkedal, L.: Fictional separation logic. In: Programming Languages and Systems - 21st European Symposium on Programming (2012) Jensen, J.B., Birkedal, L.: Fictional separation logic. In: Programming Languages and Systems - 21st European Symposium on Programming (2012)
22.
go back to reference Jung, R., Swasey, D., Sieczkowski, F., Svendsen, K., Turon, A., Birkedal, L., Dreyer, D.: Iris: Monoids and invariants as an orthogonal basis for concurrent reasoning. In: Proceedings of the 42nd Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (2015) Jung, R., Swasey, D., Sieczkowski, F., Svendsen, K., Turon, A., Birkedal, L., Dreyer, D.: Iris: Monoids and invariants as an orthogonal basis for concurrent reasoning. In: Proceedings of the 42nd Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (2015)
24.
go back to reference Larchey-Wendling, D., Galmiche, D.: Exploring the relation between intuitionistic BI and boolean BI: an unexpected embedding. Mathe. Struct. Comput. Sci. 19(3), 435–500 (2009)MathSciNetCrossRefMATH Larchey-Wendling, D., Galmiche, D.: Exploring the relation between intuitionistic BI and boolean BI: an unexpected embedding. Mathe. Struct. Comput. Sci. 19(3), 435–500 (2009)MathSciNetCrossRefMATH
26.
go back to reference O’Hearn, P.W., Yang, H., Reynolds, J.C.: Separation and information hiding. In: Proceedings of the 31st ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL 2004, Venice, Italy, 14–16 January 2004, pp. 268–280 (2004) O’Hearn, P.W., Yang, H., Reynolds, J.C.: Separation and information hiding. In: Proceedings of the 31st ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL 2004, Venice, Italy, 14–16 January 2004, pp. 268–280 (2004)
29.
go back to reference Pilkiewicz, A., Pottier, F.: The essence of monotonic state. In: Proceedings of TLDI 2011: 2011 ACM SIGPLAN International Workshop on Types in Languages Design and Implementation, pp. 73–86 (2011) Pilkiewicz, A., Pottier, F.: The essence of monotonic state. In: Proceedings of TLDI 2011: 2011 ACM SIGPLAN International Workshop on Types in Languages Design and Implementation, pp. 73–86 (2011)
30.
go back to reference Pottier, F.: Syntactic soundness proof of a type-and-capability system with hidden state. J. Funct. Program. 23(1), 38–144 (2013)MathSciNetCrossRefMATH Pottier, F.: Syntactic soundness proof of a type-and-capability system with hidden state. J. Funct. Program. 23(1), 38–144 (2013)MathSciNetCrossRefMATH
31.
go back to reference Pym, D.J., O’Hearn, P.W., Yang, H.: Possible worlds and resources: the semantics of BI. Theor. Comput. Sci. 315(1), 257–305 (2004)MathSciNetCrossRefMATH Pym, D.J., O’Hearn, P.W., Yang, H.: Possible worlds and resources: the semantics of BI. Theor. Comput. Sci. 315(1), 257–305 (2004)MathSciNetCrossRefMATH
32.
go back to reference Reynolds, J.C.: Intuitionistic reasoning about shared mutable data structure. In: Millennial Perspectives in Computer Science, pp. 303–321. Palgrave (2000) Reynolds, J.C.: Intuitionistic reasoning about shared mutable data structure. In: Millennial Perspectives in Computer Science, pp. 303–321. Palgrave (2000)
33.
go back to reference Simpson, A.K.: The proof theory and semantics of intuitionistic modal logic. Technical report, University of Edinburgh, College of Science and Engineering, School of Informatics (1994) Simpson, A.K.: The proof theory and semantics of intuitionistic modal logic. Technical report, University of Edinburgh, College of Science and Engineering, School of Informatics (1994)
Metadata
Title
Bringing Order to the Separation Logic Jungle
Authors
Qinxiang Cao
Santiago Cuellar
Andrew W. Appel
Copyright Year
2017
DOI
https://doi.org/10.1007/978-3-319-71237-6_10

Premium Partner