Understanding Formal Semantics of Programming Languages: From Lambda Calculus to Separation Logic

Slide Note
Embed
Share

Explore the foundational concepts of formal semantics in programming languages, covering Lambda Calculus, Untyped and Simply-typed languages, Imperative languages, Operational and Hoare logics, as well as Separation logic. Delve into syntax, reduction rules, typing rules, and operational semantics in various language paradigms.


Uploaded on Aug 05, 2024 | 5 Views


Download Presentation

Please find below an Image/Link to download the presentation.

The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author. Download presentation by click this link. If you encounter any issues during the download, it is possible that the publisher has removed the file from their server.

E N D

Presentation Transcript


  1. Review

  2. 2021 12 23 1-2 8:00-9:50 B-205 40% + 60% QQ

  3. Formal Semantics of Programming Languages Lambda Calculus Untyped Simply typed Imperative languages Operational semantics Hoare logic Separation logic

  4. Untyped lambda calculus Syntax Semantics (reduction rules)

  5. Simply-typed lambda calculus Syntax Reduction rules

  6. Simply-typed lambda calculus Typing rules

  7. A simple imperative language Syntax

  8. Operational semantics Small-step

  9. Operational semantics Big-step

  10. Hoare logic Hoare triple validity Inference rules for partial correctness

  11. Separation logic The extended programming language Syntax & operational semantics

  12. Separation logic The assertion language

  13. Separation logic Locality Safety monotonicity Frame property

  14. Formal Semantics of Prog. Lang. Lambda Calculus Untyped Reduction Simply typed Reduction vs typing : progress & preservation Imperative languages Operational semantics Small-step & big-step Hoare logic Reasoning using Hoare logic Separation logic Assertion semantics & locality

Related