Linear Time Time Logic (LTL) in Spin
Formulas of temporal or temporal logic of linear time (Linear Temporal Logic) are used as specifications (constraints, requirements) of the model in the Promela language.
Each such formula can consist of global names (and even local ones - special syntax <process-name>[<process-number>]:<variable name>) variables connected by logical links zero-order logic and by LTL operators.
LTL temporal operators in Spin
LTL formulas are constructed using temporal operators that describe the behavior of variables over time - how values should change or remain unchanged at different simulation steps.
The table below shows the main LTL operators supported by the Spin tool.
| Graphical notation (used in LTL literature) | Short operator designations in Spin | Alternative operator designations in Spin | Operator Descriptions |
|---|---|---|---|
or G |
|
|
Formula |
◊ or F |
|
|
Formula |
∪ or U |
|
|
Formula |
W |
|
|
Formula |
R |
|
|
Formula |
◯ |
|
|
Formula |
Designations of logical connectives allowed in LTL Spin
In addition to temporal operators, LTL formulas use the usual logical connectives - negation, conjunction, disjunction, and others.
The table below shows their designations in Spin and in the LTL literature.
| Graphical notation (in the literature) | Short designation in Spin | Alternative designation in Spin | Description |
|---|---|---|---|
|
Denial. |
||
∧ |
|
|
Conjunction (logical "And"). |
∨ |
` |
` |
|
|
Disjunction (logical "OR"). |
⨁ |
|
The exclusive "OR" (XOR). |
⟹ |
|
|
|
Implication ("if …, then …"). |
⟺ |
|