Axiomatic semantics is an approach based on
mathematical logic
Mathematical logic is the study of formal logic within mathematics. Major subareas include model theory, proof theory, set theory, and recursion theory. Research in mathematical logic commonly addresses the mathematical properties of forma ...
for proving the
correctness of computer programs.
It is closely related to
Hoare logic
Hoare logic (also known as Floyd–Hoare logic or Hoare rules) is a formal system with a set of logical rules for reasoning rigorously about the correctness of computer programs. It was proposed in 1969 by the British computer scientist and l ...
.
Axiomatic semantics define the meaning of a command in a program by describing its effect on assertions about the program state. The assertions are logical statements—predicates with variables, where the variables define the state of the program.
See also
*
Algebraic semantics (computer science) — in terms of algebras
*
Denotational semantics — by translation of the program into another language
*
Operational semantics — in terms of the state of the computation
*
Formal semantics of programming languages — overview
*
Predicate transformer semantics — describes the meaning of a program fragment as the function transforming a
postcondition to the
precondition needed to establish it.
*
Assertion (computing)
References
Formal specification languages
Logic in computer science
Programming language semantics
{{Formalmethods-stub