3.2.4 Well-definedness proof obligations
There are several locations where well-definedness proof obligations can occur. In the reference of the mathematical notation the well-definedness conditions of each operator are defined by the
-operator (see 3.3.1.2).
For well-definedness conditions the order of axioms, invariants and guards is important. Trivial (
) well-definedness conditions are usually not shown in Rodin.
3.2.4.1 Axioms
For an axiom
, let
denote (the conjunction of) all axioms declared in extended contexts and the axioms already declared in the current context before the axiom in question.
| |
Well-definedness of an axiom |
Name |
label/WD |
Goal |
|
.
3.2.4.2 Invariants
For an invariant
, let
denote (the conjunction of) all the model’s invariants declared before the theorem.
| |
Well-definedness of an invariant |
Name |
label/WD |
Goal |
|
3.2.4.3 Guards
For an invariant
, let
denote (the conjunction of) all the model’s invariants declared before the theorem.
| |
Well-definedness of a guard |
Name |
eventname/guardlabel/WD |
Goal |
|
3.2.4.4 Witnesses
A witness
may contain well-definedness conditions.
| |
Well-definedness of a witness |
Name |
eventlabel/witnesslabel/WWD |
Goal |
|
3.2.4.5 Actions
The assignment
of each action with the label
of an event must be well-defined.
| |
Well-definedness of an action |
Name |
eventlabel/actionlabel/WD |
Goal |
|
3.2.4.6 Variants
A variant
must be well-defined.
| |
Well-definedness of a variant |
Name |
VWD |
Goal |
|