Theory Definitions
section "Underlying concepts and formal definitions"
theory Definitions
imports Small_Step
begin
subsection "Global context definitions"
text ‹
As compared with my previous paper \<^cite>‹"Noce24"›:
▪ Type @{text flow}, which models any potential program execution flow as a list of instructions,
occurring in their order of execution, is extended with two additional instructions, namely an input
instruction @{text "IN x"} and an output instruction @{text "OUT x"} standing for the respective
additional commands of the considered extension of language IMP.
▪ Function @{text run_flow}, which used to map a pair formed by such a program execution flow
@{text cs} and a starting program state @{text s} to the resulting program state, here takes two
additional parameters, namely a starting trace of inputs @{text vs} and a stream of input values
@{text f}, since they are required as well for computing the resulting program state according to
the semantics of the considered extension of language IMP.
\null
›
declare [[syntax_ambiguity_warning = false]]