Operational semantics

The operational semantics is to describe a technique of computer science to the meaning or the semantics of computer programs. The effect of a program is regarded as a step change in state of an abstract machine. Operational semantics is used to prove properties of individual programs or to conduct programs related to each other.

Central to the operational semantics is the notion of program state. A state describes it (in most cases ) an assignment of program variables as well as a position in the program. Furthermore defines when and how to change states. This is done either with the help of a state transition function, or by so-called inference rules (ie rule-based ). State transition function or inference rules define an interpreter.

To work with the operational semantics of a program, usually a small piece of the original program is abstracted. There is situated an abstract program equivalent to the original (the specific program ), and that can be executed by an abstract interpreter. The effects produced by this abstract program on the states of the abstract machine, are equivalent to the conditions that are obtained when the specific program is executed.

A special case of the operational semantics is the operational semantics Structurally (SOS), which was introduced by Gordon Plotkin.

Examples of the use of the operational semantics, the semantics specifications Algol 60, PL / I or VDL.

In addition to the operational semantics there is also the denotational semantics and the axiomatic semantics to describe the semantics of computer programs.

621748
de