Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Bunched logic
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
{{short description|Branch of logic}} '''Bunched logic'''<ref name=OP99>{{cite journal|last1=O'Hearn|first1=Peter|last2=Pym|first2=David|title=The Logic of Bunched Implications|journal=[[Bulletin of Symbolic Logic]]|date=1999|volume=5|issue=2|pages=215β244|doi=10.2307/421090|url=http://www.cs.ucl.ac.uk/staff/p.ohearn/papers/BI.pdf|jstor=421090|citeseerx=10.1.1.27.4742|s2cid=2948552 }}</ref> is a variety of [[substructural logic]] proposed by [[Peter O'Hearn]] and [[David Pym]]. Bunched logic provides primitives for reasoning about ''resource composition'', which aid in the compositional analysis of computer and other systems. It has [[category-theoretic]] and truth-functional semantics, which can be understood in terms of an abstract concept of resource, and a proof theory in which the contexts Ξ in an [[Logical consequence|entailment]] judgement Ξ β’ A are tree-like structures (bunches) rather than [[sequence (mathematics)|list]]s or ([[multiset|multi]])[[set (mathematics)|set]]s as in most [[proof calculi]]. Bunched logic has an associated [[type theory]], and its first application was in providing a way to control the [[aliasing (computing)|aliasing]] and other forms of interference in [[imperative program]]s.<ref name=OHearn02>{{cite journal|last1=O'Hearn|first1=Peter|title=On Bunched Typing|journal=[[Journal of Functional Programming]]|date=2003|volume=13|issue=4|pages=747β796|doi=10.1017/S0956796802004495|url=http://www0.cs.ucl.ac.uk/staff/p.ohearn/papers/BunchedTyping.pdf}}</ref> The logic has seen further applications in [[program verification]], where it is the basis of the assertion language of [[separation logic]],<ref name=IO01>{{cite journal|last1=Ishtiaq|first1=Samin|last2=O'Hearn|first2=Peter|title=BI as an assertion language for mutable data structures|journal=POPL|date=2001|volume=28th|issue=3|pages=14β26|doi=10.1145/373243.375719|url=http://www0.cs.ucl.ac.uk/staff/p.ohearn/papers/bi-assertion-lan.pdf|citeseerx=10.1.1.11.4925}}</ref> and in [[systems modelling]], where it provides a way to decompose the resources used by components of a system.<ref name="PymTofts2" /><ref name=":0" /><ref name=":1" />
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)