On peut (avec difficulté) définir une sémantique opérationnelle pour
un langage de programmation. Considérons que l'état du système
(
) est
décrit par l'état des variables du système: (
), il est relativement facile de définir l'effet des diverses
instructions sur cet état du système.
On notera
la valeur de
dans l'état
.
Par exemple:
x:=e
où
On peut donc définir l'effet des instructions sur les états du
système:
est une fonction (partielle) de
dans
. Par exemple, comme on vient de le voir:
On peut donc définir l'effet des instructions sur les états du
système:
est une fonction (partielle) de
dans
. Par exemple, comme on vient de le voir:
Définir pour une instruction if then
else.
Vérifier que while C do I od est équivalent à if C then I; while C do I od fi
Ce résultat peut servir à définir
:
Soit
(où
est une fonction de l'ensemble des états
dans l'ensemble de états) défini pour chaque état
par:
On peut vérifier
que:
et donc que
est une point fixe de
(i.e. une fonction
telle que
)