Γραμμική χρονική λογική

Η **γραμμική χρονική λογική** (**linear temporal logic**, **LTL**) είναι μια τροπική χρονική λογική με τροπικότητες που αναφέρονται στο χρόνο. Στην LTL, μπορούν να κωδικοποιηθούν προτάσεις για το μέλλον κάποιου μονοπατιού, ώστε μια συνθήκη να είναι τελικά αληθής, ή να είναι αληθής μέχρι ένα άλλο γεγονός να είναι αληθές, κλπ.

## Ιστορία
Η LTL προτάθηκε αρχικά από τον Αμίρ Πνουέλι για την επαλήθευση προγραμμάτων υπολογιστή το 1977.

## Σύνταξη
Η LTL αποτελείται από ένα σύνολο από προτασιακές μεταβλητές p_1, p_2, \dots, τους γνωστούς λογικούς συνδέσμους \neg,\lor,\land,\rightarrow και τους ακόλουθους χρονικούς τροπικούς τελεστές:

***X** για το "επόμενο" (ή **N**)
***G** για το "πάντα" (αγγλ. **g**lobally)
***F** για το "τελικά" (αγγλ. **f**uture)
***U** για το "μέχρι"
***R** για το "απελευθέρωση"

Οι πρώτοι τρεις τελεστές είναι μοναδιαίοι, δηλαδή η **X** \phi είναι καλά ορισμένη πρόταση όταν η \phi είναι μια καλά ορισμένη πρόταση. Οι άλλοι δύο τελεστές είναι δυαδικοί, δηλαδή η \phi **U** \psi είναι καλά ορισμένη πρόταση όταν η \phi και η \psi είναι καλά ορισμένες.

thumb|200px|Ένα μοντέλο της γραμμικής χρονικής λογικής

## Σημασιολογία
Μια πρόταση LTL μπορεί να αποτιμηθεί πάνω σε μια άπειρη ακολουθία από αποτιμήσεις αληθείας, με μια θέση πάνω σε αυτό το μονοπάτι. Μια πρόταση LTL ικανοποιείται από ένα μονοπάτι αν και μόνο αν ικανοποιείται στη θέση 0 αυτού του μονοπατιού. Η σημασιολογία των τροπικών τελεστών δίνεται ως εξής:

Οι σύνδεσμοι **X** και **U** μπορούν να θεωρηθούν θεμελιώδεις και οι υπόλοιποι να οριστούν με βάση αυτούς, επειδή οι ακόλουθες ιδιότητες ικανοποιούνται πάντα:
* **F** \phi = **αληθές** **U** \phi
* **G** \phi = **ψευδές** **R** \phi = \neg **F** \neg\phi
*\psi **R** \phi = \neg(\neg\psi **U** \neg\phi)

## Ισοδυναμίες

X ( \phi \lor \psi ) \equiv X \phi \lor X \psi

X ( \phi \land \psi ) \equiv X \phi \land X \psi

X \neg \phi \equiv \neg X \phi

X ( \phi U \psi ) \equiv ( X \phi ) U ( X \psi )

F ( \phi \lor \psi ) \equiv F \phi \lor F \psi

\neg F \phi \equiv G \neg \phi

G ( \phi \land \psi ) \equiv G \phi \land G \psi

\neg G \phi \equiv F \neg \phi

( \phi \land \psi ) U \rho \equiv ( \phi U \rho ) \land ( \psi U \rho )

\rho U ( \phi \lor \psi ) \equiv ( \rho U \phi ) \lor ( \rho U \psi )

F \phi \equiv F F \phi

G \phi \equiv G G \phi

\phi U \psi \equiv \phi U ( \phi U \psi )

F \phi \equiv \phi \lor X F \phi

G \phi \equiv \phi \land X G \phi

\phi U \psi \equiv \psi \lor ( \phi \land X ( \phi U \psi ) )

\phi W \psi \equiv \psi \lor ( \phi \land X ( \phi W \psi ) )

\phi R \psi \equiv ( \phi \land \psi ) \lor ( \psi \land X ( \phi R \psi ) )

## Ειδικοί σύνδεσμοι
Κάποιοι συγγραφείς ορίζουν ένα δυαδικό τελεστή *αδύναμο μέχρι* (*weak until*) με το σύμβολο **W**, η σημασιολογία του οποίου μοιάζει με αυτήν του τελεστή *μέχρι* αλλά η συνθήκη τερματισμού δε χρειάζεται να ισχύει (όπως στην *απελευθέρωση*). Είναι μερικές φορές χρήσιμος γιατί οι τελεστές **U** και **R** μπορούν να οριστούν με βάση αυτόν:
*\psi **U** \phi = **F** \phi\land(\psi **W** \phi)
*\psi **R** \phi = \phi **W** (\psi\land\phi)
*\phi **W** \psi = \psi **R** (\psi\lor\phi)
*\phi **W** \psi = (\phi **U** \psi)\lor**G** \phi

## Σημαντικές ιδιότητες
Υπάρχουν δύο ειδών ιδιότητες που μπορούν να εκφραστούν με τη χρήση γραμμικής χρονικής λογικής: οι ιδιότητες χρονικής **ασφάλειας** (**safety**) συνήθως δηλώνουν ότι *κάτι κακό δε συμβαίνει ποτέ* (**G**\neg\phi), ενώ οι ιδιότητες **ζωτικότητας** (**liveness**) δηλώνουν ότι *κάτι καλό συνεχίζει να συμβαίνει* (**GF**\psi ή **G**(\phi \rightarrow**F**\psi)). Γενικά: οι ιδιότητες της πρώτης κατηγορίας είναι αυτές στις οποίες οποιοδήποτε αντιπαράδειγμα έχει ένα τέτοιο πρόθεμα ώστε, με οποιοδήποτε τρόπο και αν επεκταθεί σε ένα άπειρο μονοπάτι, να είναι ακόμα αντιπαράδειγμα. Στις ιδιότητες της δεύτερης κατηγορίας όμως, κάθε πεπερασμένο πρόθεμα ενός αντιπαραδείγματος μπορεί να επεκταθεί σε ένα άπειρο μονοπάτι που ικανοποιεί την πρόταση.

## Σχέσεις με άλλες λογικές
Η LTL είναι ισοδύναμη με τη λογική πρώτου βαθμού στην ολική διάταξη FO[<] , καθώς και με τις κανονικές εκφράσεις χωρίς άστρο και με τα ντετερμινιστικά αυτόματα πεπερασμένων καταστάσεων με πολυπλοκότητα βρόχου 0.

## Έλεγχος μοντέλων γραμμικής χρονικής λογικής (θεωρία αυτομάτων)
Ένα σημαντικός τρόπος ελέγχου μοντέλων είναι η έκφραση της επιθυμητής ιδιότητας (όπως οι παραπάνω) με τελεστές LTL και ο έλεγχος αν το μοντέλο την ικανοποιεί. Μια τεχνική είναι η δημιουργία ενός αυτόματου Büchi που να είναι "ισοδύμαμο" με το μοντέλο και ενός που να είναι "ισοδύναμο" με την άρνηση της ιδιότητας. Αν το μοντέλο ικανοποιεί την ιδιότητα, τότε η τομή των δύο μη-ντετερμινιστικών αυτομάτων Büchi είναι κενή.

## Εφαρμογές
Μια από τις εφαρμογές της γραμμικής χρονικής λογικής είναι η προδιαγραφή των προτιμήσεων (preference) στην Planning Domain Definition Language (preference-based planning).

## Αναφορές
* Αμίρ Πνουέλι: The temporal logic of programs. Proceedings of the 18th Annual Symposium on Foundations of Computer Science (FOCS), 1977,  46-57. DOI= 10.1109/SFCS.1977.32

## Δείτε επίσης
* Χρονική λογική και επαλήθευση πεπερασμένων καταστάσεων
* Λογική υπολογιστικού δένδρου (Computation tree logic, CTL)
* CTL*
* Χρονική λογική διαστημάτων (Interval temporal logic, ITL)
* Αυτόματο Büchi

## Εξωτερικοί σύνδεσμοι
* Παρουσίαση της LTL 
* Linear-Time Temporal Logic and Büchi Automata 

Κατηγορία:Λογική για Υπολογιστές
Κατηγορία:Χρονική λογική
Κατηγορία:Τυπικές μέθοδοι