LTL
Sissejuhatus
Iga Boole'i muutuja on LTL valem. LTL abil saab väljendada süsteemi järgnevaid omadusi:
- Reachability, et praegusest olekust jõuab soovitud olekuni
- Turvalisus (safety), halb omadus ei saa kunagi rahuldatud
- Liveness, hea omadus rahuldatakse mõnes tuleviku olekus
- Deadlock freedom, tupikolekuni ei jõuta kunagi
Deadlock, A ootab B järgi ning B ootab A järgi. Un-fairness, A ootab B järgi kuid B töötab õigesti aga ei anna kunagi järge A kätte. Näiteks: ristmikul auto saab kunagi paremale pöörata.
Süntaks
Temporaal-loogikas LTL ehk Linear Time Logic vaatleb ühte teed. Öeldakse, et LTL valem φ kehtib mudelis M alates olekust S[j]:
Samamoodi saab öelda, et φ ei kehti mudelis M alates olekust S[j]:
LTL valem on defineeritud kui:
neXt operaator
Omadus φ peab kehtima järgmises olekus (next):
Operaatori võib kirjutada ka kui:
Future operaator
Omadus φ peab kehtima mõnes tuleviku olekus:
Operaatori võib kirjutada ka kui:
Näide: Ma olen kunagi õnnelik.
Global operaator
Omadus φ peab kehtima kõigis tuleviku olekutes:
Operaatori võib kirjutada ka kui:
Näide: Ma olen alati õnnelik.
Until operaator
Omadus φ kehtib lõpuks, kuni seni kehtib ψ kõigis olekutes (until):
Näide: Ma olen õnnelik kuni ma teen midagi valesti.
Näide
Alati kui auto pidurile vajutada siis lõpuks jääb auto seisma:
P kehtib järgmises või ülejärgmises olekus: