TLA⁺

TLA +  je specifikační jazyk založený na teorii množin , logice prvního řádu a časové logice akcí ( TLA, temporal logic of actions )  . Vyvinutý Leslie Lamport [1] , výzkumník v teorii distribuovaných systémů .

Historie

Temporální logiku zavedl Amir Pnueli v 70. letech 20. století. Leslie Lamport viděl nedostatečnost tohoto nápadu pro popis systémů jako celku a dospěl k myšlence potřeby používat stavové automaty , které  dostaly význam vzorců časové logiky, které popisují všechny možné cesty provádění. Tak se zrodila myšlenka časové logiky akcí (TLA), která časovou logiku doplnila o následující [2] :

V důsledku usilovné práce na myšlenkách TLA se objevil jazyk specifikace nazvaný TLA + [2] .

Popis

Jazyk TLA + je svým duchem poněkud podobný Z-notaci a možná dokonce vznikl pod jeho vlivem [1] .

Specifikace TLA je dočasný vzorec, často nazývaný Spec, který je predikátem (výrokem) o chování . Chování představuje možný způsob provedení systému nebo jinými slovy představuje možnou historii vesmíru, kterou systém může obsahovat. Chování vyhovující Spec jsou správné chování systému [1] .

Stav je přiřazení hodnot proměnným, krok je dvojice stavů. Nyní lze chování považovat za nekonečnou posloupnost stavů a ​​kroky chování lze nazvat dvojicí po sobě jdoucích stavů chování. Predikát stavu je funkce, jejíž výsledek, booleovská hodnota true nebo false, odpovídá příkazu stavu. Akce je funkce, která má význam predikátu nad krokem. Tato funkce zahrnuje jak proměnné prvního kroku, tak i druhého, které jsou obvykle označeny prvočíslem [1] .

Jedna z nejjednodušších netriviálních specifikací je následující [1] :

Zde Init  je predikát stavu, Next  je akce, v i  jsou proměnné,  je jediným časovým operátorem v této specifikaci (pravda ve všech budoucích stavech).

Poznámky

  1. 1 2 3 4 5 Habrias, Frappier, 2006 , 7.1 Přehled TLA+.
  2. 1 2 Leslie Lamport: Jazyk specifikace TLA+ . Získáno 13. listopadu 2014. Archivováno z originálu 8. března 2016.

Literatura