An Introduction to Separation Logic Summary: Chapter 2 Assertions An Introduction to Separation Logic c 2009 John C. Reynolds February 17, 2009 In this chapter, we give a more detailed exposition of the assertions of separation logic: their meaning, illustrations of their usage, inference rules, and several classes of assertions with special properties. First, we discuss some general properties that are shared among assertions and other phrases occurring in both our programming language and its logic. In all cases, variable binding behaves in the standard manner. In expres- sions there are no binding constructions, in assertions quantifiers are binding constructions, and in commands declarations are binding constructions. In each case, the scope of the variable being bound is the immediately following subphrase, except that in declarations of the form newvar v = e in c, or iterated separating conjunctions of the form e1 v=e0 p (to be introduced in Section 6.1), the initialization e and the bounds e0 and e1 are not in the Collections: Mathematics