LARA Lecture 15 Language with Specified Procedures Fixpoint Semantics for Procedures Review: Relational Semantics Relational Semantics of Procedures Procedure Contracts for Modular Reasoning Procedure Contracts and Their Meaning Reasoning about Procedures by Inlining Contracts Frame Conditions and Invariants Automated Interprocedural Analysis Interprocedural Analysis - Introduction Some Approaches to Automated Interpocedural Analysis Specification Variables and Data Abstraction Notion and Uses of Specification Variables Proofs and Counterexamples for Java, from slide 18 Specification Variables for Public Interfaces Controlling When Invariants Hold Specification Variables for Overcoming Limitations of FOL Specification Variables for Combination and Decomposition Soundness of Simple Ghost Variables