Separation Logic (II) Acknowledgment: slides taken from Reynolds’ mini-course CS 818A3.

Slides:



Advertisements
Similar presentations
Soundness of Higher-order Frame Rules (How did category theory help me?) Hongseok Yang Seoul National University Joint work with Lars Birkedal and Noah.
Advertisements

Slide 1 doc.: IEEE /1092r0 Submission Simone Merlin, Qualcomm Incorporated September 2010 Slide 1 ACK Protocol and Backoff Procedure for MU-MIMO.
Techniques for proving programs with pointers A. Tikhomirov.
INF 212 ANALYSIS OF PROG. LANGS Type Systems Instructors: Crista Lopes Copyright © Instructors.
New Order Violations Process In order to Submit an Order there are many rules that need to be adhered to. For example, each Order needs a Time Tracker.
Chapter 9 Subprogram Control Consider program as a tree- –Each parent calls (transfers control to) child –Parent resumes when child completes –Copy rule.
CSE 131B – Compiler Construction II Discussion 4: Project 1 1/31/2007.
Ordering and Consistent Cuts
On the Relationship Between Concurrent Separation Logic and Assume-Guarantee Reasoning Xinyu Feng Yale University Joint work with Rodrigo Ferreira and.
Local Reasoning Peter O’Hearn John Reynolds Hongseok Yang.
Separation Logic A Logic of Shared Mutable Data Structures John Reynolds CMU Extended subset Mooly Sagiv.
CS 561, Sessions 28 1 Uncertainty Probability Syntax Semantics Inference rules.
Copyright © 2003 Pearson Education Canada Inc. Slide 7-91 Chapter 8 Flexible Budgets, Variances, and Management Control: II.
Feudal C Automatic memory management with zero runtime overhead CS263 - Spring 1999 Scott McPeak Dan Bonachea Carol Hurwitz C.
Adapted from Prof. Necula UCB CS 1641 Overview of COOL ICOM 4029 Lecture 2 ICOM 4029 Fall 2008.
Low-Level Program Verification. Components of a Certifying Framework certified code (machine code + proof) specifications: program safety/security/correctness.
Chapter 6 1 © Prentice Hall, 2002 The Physical Design Stage of SDLC (figures 2.4, 2.5 revisited) Project Identification and Selection Project Initiation.
Axiomatic Methods for Software Verification Hongseok Yang.
Concurrency Verification. Why concurrency verification Concurrent programs show in many systems –Multi-task support in OS kernels –Handling interrupts.
© Andrew IrelandDependable Systems Group Cooperative Reasoning for Automatic Software Verification Andrew Ireland School of Mathematical & Computer Sciences.
David Evans CS200: Computer Science University of Virginia Computer Science Lecture 18: Think Globally, Mutate Locally.
Kindergarten: Unit 08 Lesson 01 Partial 100s Chart How to create a Partial 100s Chart from the Five Frame Mat C.
Poster Problems - Walking the Line Slide #1. Poster Problems - Walking the Line Slide #2.
Skills and Processes Results….Now What?. Maryland Science Content Standard Students will be able to give reasons for the importance of waiting until an.
A Logic of Partially Satisfied Constraints Nic Wilson Cork Constraint Computation Centre Computer Science, UCC.
Chapter 13: Structures. In this chapter you will learn about: – Single structures – Arrays of structures – Structures as function arguments – Linked lists.
Lecture No 13 Functional Dependencies & Normalization ( II ) Mar 3 rd 2011 Database Systems.
Separation and Information Hiding Peter W. O’Hearn (Queen Mary, University of London) John C. Reynolds (Carnegie Mellon University) Hongseok Yang (Seoul.
Transformations Translation “MATH 11” –
Teaching Listening. What for? General info Specific info Organization of ideas Cultural interest Sequence of events Lexical items Structural items Functional.
1 CS Programming Languages Class 22 November 14, 2000.
Lecture 4-1CS250: Intro to AI/Lisp Logical Reasoning I Lecture 4-2 January 25 th, 1999 CS250.
A particular manufacturer produces AA batteries that are designed to last an average of 17 hours with a standard deviation of 0.8 hours. Quality control.
基 督 再 來 (一). 經文: 1 你們心裡不要憂愁;你們信神,也當信我。 2 在我父的家裡有許多住處;若是沒有,我就早 已告訴你們了。我去原是為你們預備地去 。 3 我 若去為你們預備了地方,就必再來接你們到我那 裡去,我在 那裡,叫你們也在那裡, ] ( 約 14 : 1-3)
Distributive Property of Multiplication 306 x 2
Low-Level Program Verification
continued on next slide
                                                                                                                                                                                                                                                
continued on next slide
continued on next slide
YG - CS170.
Chapter 9: Virtual-Memory Management
مدیریت استراتژيک منابع انسانی
Concurrent Separation Logic
The 4 Functions of Management
Cooperative Reasoning for Automatic Software Verification
Knowledge Representation and Inference
Programming Languages and Paradigms
Слайд-дәріс Қарағанды мемлекеттік техникалық университеті
Pointers And Memory Acknowledgement: THE Slides are Prepared FROM SLIDES PROVIDED By NANCY M. AMATO AND Jory Denny.
.. -"""--..J '. / /I/I =---=-- -, _ --, _ = :;:.
Kindergarten: Unit 08 Lesson 01 Partial 100s Chart
Separation Logic and Concurrency Verification
II //II // \ Others Q.
I1I1 a 1·1,.,.,,I.,,I · I 1··n I J,-·
Concurrent Separation Logic
Concurrent Separation Logic
Ռազմավարական կառավարում
Separation Logic Acknowledgment: slides taken from Reynolds’ mini-course CS 818A3.
Separation Logic (III)
Multiple Choice Quiz.
Artificial Intelligence
ICOM 4029 Fall 2003 Lecture 2 (Adapted from Prof. Necula UCB CS 164)
Use the ten frames to help solve the problems
COMPUTER HISTORY, PRESENT & FUTURE. What is a Computer? A computer is a machine that can be instructed to carry out sequences of arithmetic or logical.
Welcome to Who Wants to be a Millionaire
. '. '. I;.,, - - "!' - -·-·,Ii '.....,,......, -,
continued on next slide
continued on next slide
Presentation transcript:

Separation Logic (II) Acknowledgment: slides taken from Reynolds’ mini-course CS 818A3

Specifications Partial correctness: Total correctness: Note the spec now requires c does not abort.

Examples

The Frame Rule (O’Hearn) (FR)

Why the Frame Rule is Sound

Inference Rules for Mutation One rule implies another.

Inference Rules for Deallocation

Inference Rules for Allocation

Rules for Nonoverwriting Allocation

Rules for General Allocation

Rules for General Allocation (2)

An Inadequate Local Rule by taking r to be emp

An Inadequate Local Rule (2)

An Adequate Local Rule

Rules for Nonoverwriting Lookup

Rules for General Lookup

Rules for General Lookup (2)

From (LKL) to (LKG)

From (LKG) to (LKL)

Example: Gluing Records

Another Example: Relative Pointers