Theory Language
section ‹Language and Semantics›
text ‹In this file, we formalize concepts from section 3:
- Program states and programming language (definition 1)
- Big-step semantics (figure 2)
- Extended states (definition 2)
- Extended semantics (definition 4) and some useful properties (lemma 1)›
theory Language
imports Main
begin
subsection Language
text ‹Definition 1›
type_synonym ('var, 'val) pstate = "'var ⇒ 'val"
type_synonym ('var, 'val) bexp = "('var, 'val) pstate ⇒ bool"
type_synonym ('var, 'val) exp = "('var, 'val) pstate ⇒ 'val"