Sei sulla pagina 1di 22

Introduzione alla logica modale e al -calcolo modale

Giacomo Lenzi Assegnista di ricerca, Universit` a di Pisa

Questo testo contiene gli appunti di un ciclo di tre seminari sulla logica modale e il -calcolo modale, tenuti dallautore presso il Dipartimento di Matematica dellUniversit` a di Pisa nei mesi di Novembre e Dicembre 2002. Ringrazio il prof. Alessandro Berarducci per avermi proposto di tenere questo ciclo di seminari.

Primo seminario, 8 Novembre 2002 La logica modale

La logica modale risale ad Aristotele, che la utilizz` o per studiare i concetti di necessit` a e possibilit` a. Con la notazione moderna, se P ` e una proposizione, [ ]P signica intuitivamente che P ` e necessariamente vera, e P signica che P ` e possibilmente vera. Il simbolo [ ] si chiama box perch e ricorda le forma di una scatola, e il simbolo si chiama diamond perch e ricorda la forma di un diamante. Se aggiungiamo alla logica proposizionale le due modalit` a di cui sopra, otteniamo la logica modale proposizionale. Quindi, nella sintassi avremo proposizioni atomiche senza struttura, P, Q, . . ., e per ottenere formule pi` u complesse avremo a disposizione la negazione di una formula, , la congiunzione di due formule , la disgiunzione di due formule, , e le modalit` a e [ ].

Ad esempio, formule della logica modale saranno P (Q [ ]R), [] P

ecc. Talvolta nella sintassi, anzich e avere una sola coppia di modalit` a [ ], , si hanno pi` u coppie [i], i , ove i varia in qualche insieme I di indici. Si parla in questo caso di logica polimodale. Adesso per completare la denizione della logica modale potremmo dare assiomi e regole di deduzione che consentono di ragionare nella logica; tuttavia osserviamo che, nella sua lunga storia, la logica modale ` e stata interpretata in molti modi, e gli assiomi e regole pi` u appropriati dipendono dalla scelta dellinterpretazione. Facciamo qualche esempio di interpretazione. Abbiamo anzitutto linterpretazione pi` u antica, basata sui mondi possibili; cio` e, si ha una pluralit` a di mondi, o situazioni, possibili, e [ ]P vuol dire che P ` e vera in tutti i mondi possibili, mentre P signica che P ` e vera in qualche mondo possibile. Unaltra interpretazione ` e quella conoscitiva. In questo caso aermare [ ]P signica aermare di conoscere P , mentre aermare P signica affermare di non poter escludere P . Uninterpretazione nata in ambito matematico ` e quella aritmetica. In questo caso si considerano formule del linguaggio dellaritmetica del primo ordine, i cui simboli sono 0, 1, la somma e il prodotto. Se ` e una tale formula, [ ] signica che ` e dimostrabile nellAritmetica di Peano. La nozione di dimostrabilit` a, di per s e, ` e metateorica, ma tale nozione pu` o essere codicata con una formula aritmetica tramite il procedimento noto come g odelizzazione della sintassi. Quindi, [ ] sar` a anchessa una formula aritmetica, e possiamo iterare le modalit` a scrivendo [ ][ ], ecc. Al variare delle interpretazioni, gli assiomi che ` e ragionevole assumere cambiano. Consideriamo ad esempio lassioma [ ]([ ] ). In ambito conoscitivo, tale formula ` e ragionevole, in quanto ci` o che si conosce ` e vero (il che giustica [ ] ) ed ` e ragionevole che un soggetto cosciente sappia che ci` o che egli conosce ` e vero (il che giustica il box davanti). Daltra parte, in ambito aritmetico, consideriamo una formula falsa sui numeri interi, ad esempio 0 = 1. Allora [ ] signica che laritmetica di 2

Peano ` e inconsistente (dimostra una falsit` a), e [ ] signica la negazione, cio` e laritmetica di Peano ` e consistente. Se ora mettiamo un box davanti, otteniamo che laritmetica di Peano prova la sua consistenza; ma questo ` e falso per il secondo teorema di incompletezza di G odel. Inne, uninterpretazione che unica molte di quelle storicamente precedenti ` e linterpretazione relazionale di Kripke. Qui la logica viene interpretata su gra, cio` e insiemi dotati di relazioni. In questo modo la logica modale ci consente di ragionare sui gra, e questa idea viene applicata soprattutto in informatica. Infatti, in informatica, i gra forniscono un modello per molti tipi di sistemi: hardware, software, ecc. Lidea ` e che un sistema ` e visto come un oggetto che ha molti stati possibili, e che pu` o passare da uno stato allaltro mediante lesecuzione di azioni. Il grafo che modella il sistema avr` a quindi gli stati come vertici, e le azioni come relazioni tra vertici. Risulta che molte propriet` a desiderabili di sistemi possono essere controllate mediante modellizzazione con un grafo. Facciamo qualche esempio. Una prima categoria di propriet` a` e la safety: lidea ` e che qualcosa di cattivo non accadr` a mai. Ad esempio, nel controllo di una stampante condivisa da vari utenti, non si vuole che la stampante serva due utenti contemporaneamente. Una categoria duale alla precedente ` e la liveness: qualcosa di buono, prima o poi, accadr` a. Per esempio, sarebbe desiderabile che se un utente chiede laccesso alla stampante, prima o poi lo otterr` a. Un terzo tipo di propriet` a, stavolta di tipo innitario, ` e la fairness: qualcosa di buono accadr` a innite volte. Ad esempio, ` e desiderabile che se un sistema operativo serve due utenti, il controllo passi dalluno allaltro innite volte, o in altri termini, non succeda mai che uno dei due utenti monopolizzi il sistema indenitamente: questo non sarebbe equo (fair). Un altro tipo di propriet` a sono quelle cicliche: qualcosa di buono avviene ogni tot unit` a di tempo. Ovviamente queste propriet` a sono fondamentali per la costruzione di orologi, timer, ecc. La logica modale e le sue estensioni permettono di formalizzare il problema di vericare la correttezza di un sistema come un problema di verit` a di certe formule in certe strutture matematiche (i gra). Formalmente, un grafo ` e una coppia (V, R), ove V ` e un insieme di vertici e R ` e una relazione binaria su V . Poich e le formule da interpretare sui gra conterranno atomi, possiamo considerare anche strutture formate da un grafo (V, R) pi` u un sottoinsieme di V per ogni atomo che si vuole interpretare. 3

Pi` u in generale, un sistema di transizione ` e una struttura S = (V, R1 , . . . , Rn , P1 , . . . , Pm ), ove V ` e un insieme, R1 , . . . , Rn sono relazioni binarie su V , e P1 , . . . , Pm sono sottoinsiemi di V , che interpretano gli atomi P1 , . . . , Pm rispettivamente. La semantica di una formula della logica modale ` e formalizzata mediante una relazione ternaria di soddisfazione S, v |= ove S ` e un sistema di transizione, v ` e un vertice di S e ` e una formula modale. La relazione ` e denita per induzione su : S, v |= Pi vale se e solo se v Pi ; S, v |= vale se e solo se non ` e vero che S, v |= ; S, v |= 1 2 vale se e solo se S, v |= 1 e S, v |= 2 ; S, v |= 1 2 vale se e solo se S, v |= 1 oppure S, v |= 2 ; S, v |= Ri vale se e solo se esiste un punto w tale che vRi w e S, w |= ; S, v |= [ Ri ] vale se e solo se per ogni punto w tale che vRi w si ha S, w |= . Notiamo che le ultime due clausole, relative a box e diamond, prescrivono in sostanza che la formula sia vera in qualche stato accessibile da quello corrente (per il diamond), o che sia vera in tutti gli stati accessibili (per il box). La relazione di soddisfazione permette di associare a ogni formula modale e a ogni sistema di transizione S un insieme di vertici di S , cio` e |||| = {v S | S, v |= }. Passiamo a un paio di traduzioni tra la logica modale ed altre logiche. Anzitutto, per ogni formula esiste una formula t (x) del primo ordine, su un linguaggio di predicati unari e binari, tale che si ha sempre S, v |= se e solo se S |= t (v ). Infatti t ` e data da: 4

tP (x) = P (x) per ogni atomo P ; t = t ; t1 2 = t1 t2 ; t1 2 = t1 t2 ; t


R (x)

= y. xRy t (y );

t[R] (x) = y. xRy t (y ). Risulta anzi che la traduzione pu` o essere fatta nella logica del primo ordine con due variabili (ove si permette di quanticare pi` u volte la stessa variabile) e poich e questo frammento della logica del primordine ` e decidibile, la traduzione implica la decidibilit` a della logica modale. Cio` e, esiste un algoritmo per vericare se una formula modale ` e identicamente vera. Comunque, dal punto di vista computazionale, la logica modale ` e meno complessa della logica a due variabili: il suo problema di decidibilit` a` e PSPACE completo, vedi [12], mentre quello della logica a due variabili ` e NEXPTIME completo, vedi [8]. Una seconda traduzione ` e quella della logica intuizionista nella logica modale, proposta da G odel negli anni 30. Ricordiamo che la sintassi della logica intuizionista proposizionale ha gli atomi e i connettivi (negazione), (congiunzione) e (disgiunzione), pi` u limplicazione 1 2 che, a differenza della logica classica, non ` e denibile a partire dagli altri connettivi. La traduzione, che chiameremo M od, ` e data induttivamente: M od(P ) = [ ]P ; M od(1 2 ) = M od(1 ) M od(2 ); M od(1 2 ) = M od(1 ) M od(2 ); M od() = [ ]M od(); M od(1 2 ) = [ ](M od(1 ) M od(2 )). La traduzione consente di collegare la logica modale con la logica intuizionista proposizionale: si ha che una formula ` e intuizionisticamente valida se e solo se M od() ` e una formula modale vera in tutti i punti di tutti i sistemi di transizione riessivi e transitivi.

Tornando alle applicazioni informatiche, abbiamo detto che un sistema ` e descritto dal grafo dei suoi stati. In realt` a, per` o, la specica di un sistema non riguarda la struttura dettagliata del sistema, ma solo il suo comportamento. Quindi ` e interessante chiedersi cosa sia il comportamento di un sistema, o almeno, quando due sistemi hanno lo stesso comportamento. La risposta oggi comunemente accettata ` e la bisimulazione, dovuta a Park, vedi [16]. La denizione ` e la seguente. Siano S, T due sistemi a n relazioni, v un punto di S e w un punto di T . Diciamo che S, v ` e bisimile a T, w se esiste una relazione B S T tale che: B vale tra v e w; B rispetta gli atomi, cio` e se xBy , allora x e y vericano le stesse proposizioni atomiche; B completa i quadrati nel senso seguente: se xBy e xRi x , allora esiste un y tale che yRi y e x By ; lo stesso avviene dallaltra parte: se xBy e yRi y , allora esiste un x tale che xRi x e x By . Osserviamo che ogni relazione di va e vieni tra sistemi di transizione, nel senso della teoria dei modelli, ` e una bisimulazione, ma non viceversa: ad esempio, sono bisimili N con la relazione di successore (x succ y se y = x +1) nel punto 0, e Z con la relazione di successore nel punto 0. Inoltre, la logica modale ` e invariante per bisimulazione; cio` e, se S, v ` e bisimile a T, w, allora S, v e T, w vericano le stesse formule modali. Questo ` e un esercizio, mentre il viceversa ` e un teorema; precisamente si ha: Teorema (Van Benthem, [20]). Sia una formula del primo ordine su un linguaggio di predicati unari e binari, invariante per bisimulazione. Allora equivale a una formula modale. Quindi, la logica modale corrisponde al frammento invariante per bisimulazione della logica del primo ordine. Una variante nitaria di questo teorema ` e la seguente: Teorema (Rosen, [19]) Sia una formula del primo ordine su un linguaggio di predicati unari e binari, invariante per bisimulazione sui gra niti. Allora equivale a una formula modale sui gra niti. Il limite della logica modale ` e la sua scarsa espressivit` a, puramente locale. Infatti, la verit` a di una formula modale di lunghezza n in un modello dipende solo dai punti a distanza al pi` u n dal punto di riferimento. 6

In particolare, la logica modale ` e troppo debole per esprimere le propriet` a desiderabili di sistemi informatici di cui sopra. Per ottenere la possibilit` a di esprimere propriet` a globali, sono necessarie logiche pi` u potenti che introdurremo nei prossimi seminari.

Secondo seminario, 29 Novembre 2002 La logica temporale

Abbiamo visto che la logica modale non ` e abbastanza espressiva per formalizzare le pi` u importanti propriet` a di correttezza dei sistemi informatici. Vedremo, nel terzo e ultimo seminario, che questo problema si pu` o risolvere introducendo il -calcolo modale. Questo secondo seminario riguarda la logica temporale, la cui espressivit` a si colloca a mezza strada tra la logica modale e il -calcolo. La logica temporale si occupa di concetti come sempre, mai, qualche volta, ecc. Essa ` e una branca della logica di origine antica, ma solo negli anni 50 ` e stata studiata matematicamente, a cominciare dal lavoro di Prior, vedi [18]. Negli anni 70 ` e stata applicata alla verica di correttezza dei sistemi informatici, a cominciare dal lavoro di Pnueli, vedi [17]. Per applicare la logica temporale bisogna ssare un modello matematico del tempo. Ci sono vari possibili modelli di tempo. Il tempo pu` o essere assunto discreto o continuo, nito o innito, lineare o ramicato, unidirezionale o bidirezionale, ecc. Le logiche temporali di cui ci occuperemo, e che sono specializzate per la verica di sistemi, assumono le seguenti propriet` a del tempo: il tempo ` e discreto: tra un istante e laltro, si hanno solo un numero nito di istanti intermedi; il tempo ` e innito nel futuro e nito nel passato: c` e un primo istante ma non un ultimo; il tempo uisce dal passato al futuro e siamo interessati a cosa accadr` a nel futuro: questa scelta ` e dettata dalle applicazioni, in cui lo scopo ` e fare previsioni sul comportamento di un sistema. Invece, lalternativa tra tempo lineare e ramicato d` a luogo a due possibilit` a egualmente interessanti. Il tempo si dice lineare se in ogni istante, il sistema pu` o evolvere in un solo modo nellistante successivo, cosicch e levoluzione del 7

sistema ha la forma di una linea. Invece, il tempo si dice ramicato se in ogni istante, il sistema pu` o evolvere in molti modi; in questo caso levoluzione del sistema a partire da un istante iniziale ha la forma di un albero. Cominciamo a descrivere una logica temporale lineare, in seguito passeremo alle logiche ramicate (branching in inglese). La logica temporale lineare, LT L, si ottiene aggiungendo alla logica proposizionale quattro operatori temporali F, G, O, U con il seguente signicato. Sia P una proposizione. La formula F P signica che P ` e vera in qualche istante futuro. La formula GP signica che P ` e vera in ogni istante futuro, ed ` e quindi la formula duale di F P . Inoltre, la formula OP signica che P ` e vera nel prossimo istante. Inne, U ` e un operatore binario: se P, Q sono propriet` a, la formula P U Q signica che la formula P vale no al primo istante in cui vale Q (U viene dallinglese until, nch e). Per precisare meglio il signicato degli operatori temporali, possiamo introdurre quelle che chiameremo le strutture lineari. Una struttura lineare ` e data da S = (N, P1 , . . . , Pn ), ove N ` e linsieme dei numeri naturali 0, 1, 2, 3 . . . e P1 , . . . , Pn sono sottoinsiemi di N, che interpretano le proposizioni atomiche P1 , . . . , Pn . Abbiamo una relazione binaria di soddisfazione S |= , ove S ` e una struttura lineare e ` e una formula di LT L, denita induttivamente. Per poter scrivere la clausole della denizione, data una struttura lineare S e un numero i, denotiamo S i (lo i-esimo shift di S ) come la struttura lineare ove Pj ` e interpretato dallinsieme {x i | x i, x Pj }. Intuitivamente, S i |= signica che ` e vera allistante i N. Abbiamo ora le clausole: S |= Pj se 0 Pj ; S |= se non ` e vero che S |= ; S |= 1 2 se S |= 1 e S |= 2 ; S |= 1 2 se S |= 1 oppure S |= 2 ; S |= O se S 1 |= ; 8

S |= F se S i |= per qualche i; S |= G se S i |= per ogni i; S |= 1 U 2 se esiste i per cui S i |= 2 , e per ogni j con j < i, si ha S j |= 1 . Facciamo qualche esempio di formula LT L che mostra che, a dierenza della logica modale, la logica temporale ` e abbastanza potente da esprimere molte propriet` a desiderabili globali dei sistemi. Se P ` e una propriet` a del sistema che si vuole evitare, allora GP dice che P non accadr` a mai: questo ` e un esempio di propriet` a di safety. Se P, Q sono propriet` a, P F Q dice che, se in un punto ho P , allora in qualche punto successivo ho Q; per esempio, se un utente chiede laccesso a una stampante, prima o poi lo otterr` a; questo ` e un esempio di propriet` a di liveness. Una propriet` a di liveness pi` u forte ` e P OQ; nel caso della stampante, dice che una richiesta di accesso alla stampante ` e soddisfatta immediatamente. Combinando gli operatori temporali possiamo esprimere anche propriet` a di fairness; per esempio, la formula GF P signica che P ` e vera innite volte; inne la formula duale F GP signica che P ` e vera in tutti i punti salvo un numero nito. La logica temporale lineare LT L che abbiamo esposto ` e quella pi` u usata. Nel caso delle logiche branching c` e pi` u variet` a. Noi esporremo qui le logiche CT L (Computation Tree Logic) e la sua estensione CT L . In entrambi i casi lidea ` e di estendere la logica temporale lineare con i quanticatori sui cammini, denotati A ed E . Quindi se ` e una formula, E signica che ` e vera in qualche cammino, e A signica che ` e vera in ogni cammino. In CT L il modo in cui appaiono i quanticatori ` e soggetto ad alcune restrizioni, mentre in CT L non c` e nessuna restrizione. Quindi per semplicit` a cominceremo ad esporre la semantica di CT L e poi passeremo a CT L. Le formule di CT L sono ottenute dalle formule atomiche mediante gli operatori booleani, gli operatori lineari F, G, O, U , e i quanticatori sui cammini A, E . Per denire la semantica di CT L usiamo strutture branching, cio` e strutture del tipo S = (V, R, P1 , . . . , Pn ), ove V ` e un insieme non vuoto, R ` e una relazione binaria su V e P1 , . . . , Pn sono sottoinsiemi di V , che interpretano gli atomi P1 , . . . , Pn . 9

I cammini che ci interessano saranno sequenze innite v0 , v1 , . . . , vn , . . . di elementi di V , tali che vi Rvi+1 per ogni numero i N. Per semplicit` a assumiamo che: la relazione R sia totale su V , nel senso che per ogni v V esiste w V tale che vRw. Questo implica che da ogni punto parte almeno un cammino innito; la struttura sia un albero; cio` e, esista un punto r, detto radice, tale che per ogni punto v esista un solo cammino nito da r a v , cio` e una sola sequenza nita v0 , . . . , vn tale che v0 = r, vn = v e vi Rvi+1 per ogni i < n. Avremo una relazione ternaria di soddisfazione S, |= , ove S ` e una struttura branching, ` e un cammino e ` e una formula di CT L . La relazione ` e denita induttivamente in ; diamo qui le clausole relative agli operatori lineari e ai quanticatori. Anche sui cammini abbiamo gli operatori di shift: se ` e un cammino, = v0 , v1 , . . . , vn , . . . e i N, i ` e li-esimo susso di : i = vi , vi+1 , vi+2 , . . . Abbiamo le clausole: S, |= Pj se il primo vertice di sta in Pj ; S, |= O se S, 1 |= ; S, |= F se S, i |= per qualche i; S, |= G se S, i |= per ogni i; S, |= U se per qualche i si ha S, i |= e S, j |= per ogni j < i; S, |= E se S, |= per qualche cammino che ha lo stesso primo vertice di ; S, |= A se S, |= per ogni cammino che ha lo stesso primo vertice di . 10

In alcuni casi la verit` a di una formula su un cammino dipende solo dal primo vertice del cammino. Questo succede in particolare per le cosiddette formule di stato (ricordiamo che i vertici di un grafo corrispondono agli stati di un sistema), denite come gli elementi del pi` u piccolo insieme di formule F S tali che: gli atomi stanno in F S ; FS ` e chiuso per operatori booleani; se ` e una formula qualunque di CT L , E e A stanno in F S . Quindi, se ` e una formula di stato e v ` e un vertice di una struttura branching, possiamo porre S, v |= se S, |= per un qualunque cammino che parte da v . In particolare, tra le formule di stato ci sono le formule della sottologica di CT L nota come CT L. Deniamo CT L come linsieme delle formule di CT L ove: ogni quanticatore A, E appare immediatamente prima di un operatore lineare F, G, O, U ; ogni operatore lineare appare immediatamente dopo un quanticatore. Facciamo qualche esempio di formule CT L e CT L . Siano P, Q due proposizioni. Anzitutto, in CT L abbiamo la formula EOP , che equivale a dire che esiste un successore in cui vale P , proprio come loperatore diamond della logica modale. Analogamente abbiamo la formula AOP , che equivale a dire che in ogni successore vale P . Quindi questa formula corrisponde alla modalit` a box della logica modale, e quindi CT L include la logica modale. Un altro esempio di CT L ` e AGP , che signica che P accadr` a sempre, nel senso che accadr` a in ogni punto di ogni cammino che parte dal punto in cui la formula ` e valutata. Questa ` e una propriet` a di tipo safety. Notiamo che non ` e detto che tutti i punti della struttura siano raggiungibili dal punto in cui si valuta la formula; la formula non dice nulla sui punti irraggiungibili. Analogamente, in CT L abbiamo EF P , cio` e, P vale in qualche punto di qualche cammino che parte dal punto in cui la formula ` e valutata. Questa ` e una propriet` a di tipo liveness. 11

Unaltra liveness pi` u complicata esprimibile in CT L ` e AF P : in ogni cammino esiste un punto che verica P . Tale propriet` a si chiama talvolta inevitabilit` a. Usando lUntil possiamo poi, sempre in CT L, scrivere E (P U Q), che dice che in qualche cammino, P vale no alla prima volta in cui vale Q; analogamente, A(P U Q) dice che ci` o vale in ogni cammino. Combinando gli operatori lineari abbiamo in CT L formule come AGEF P , che signica: in ogni futuro c` e un futuro successivo in cui vale P . Passando a formule CT L che non sono (sintatticamente) in CT L, possiamo segnalare limportante formula di fairness EGF P , che signica che esiste un cammino in cui P vale innite volte. In realt` a EGF P non ` e neanche equivalente ad alcuna formula di CT L; questo segue dai risultati di [5]. La formula duale sar` a AF GP , che dice che in ogni cammino, P vale ovunque salvo un numero nito di punti. La denizione della semantica di LT L e CT L suggerisce traduzioni di queste logiche in formalismi pi` u standard, come la logica del primo ordine o del secondo ordine. Infatti, LT L si traduce nella logica del primo ordine su N arricchito con lordine e un sottoinsieme per ogni atomo; chiamiamo F O() questa logica. Per ogni formula LT L esiste una formula t (x) F O() tale che, per ogni struttura lineare S per ogni i N, S i |= se e solo se S |= t (i). Si ha anche una traduzione inversa: Teorema (Kamp, [10]) Ogni formula di F O() equivale a una formula di LT L. Quindi le due logiche sono equivalenti. Per dimostrare il teorema ` e necessario includere in LT L loperatore Until; questo motiva lintroduzione di tale operatore in LT L. Una seconda traduzione ` e quella di CT L in una logica del secondo ordine, che chiameremo path logic; cio` e, si tratta della logica del primo ordine sulla relazione R, a cui si aggiungono quanticatori ristretti a cammini: per qualche cammino si ha... oppure per ogni cammino si ha.... Per ogni formula di CT L si ha una formula path (X ) della path logic (con una variabile del secondo ordine libera) tale che, per ogni struttura branching S , si ha S, |= se e solo se S |= path ( ).

12

Inoltre, si verica che tutte le formule di CT L sono invarianti per bisimulazione. Nella direzione inversa si ha: Teorema (Moller-Rabinovitch, [14]) Ogni formula della path logic invariante per bisimulazione equivale a una formula di CT L . Quindi, CT L equivale al frammento della path logic invariante per bisimulazione. Il teorema sopra ci dice che CT L ` e molto potente, infatti ` e chiamata talvolta la logica branching piena. Tuttavia ci sono propriet` a desiderabili che CT L non pu` o esprimere. Consideriamo una proposizione P , e denotiamo con Even(P ) il fatto che in qualche cammino, P vale in tutti i punti pari. Notiamo che Even(P ) ` e invariante per bisimulazione. Teorema (Wolper, [22]) Even(P ) non ` e esprimibile in CT L . I limiti del potere espressivo di CT L motivano lintroduzione di logiche pi` u potenti come il -calcolo modale, che sar` a loggetto del prossimo seminario.

Terzo e ultimo seminario, 13 Dicembre 2002 Il -calcolo modale

Lidea ` e di partire dalla logica modale e aggiungere due operatori e che rappresentano i minimi e massimi punti ssi degli operatori insiemistici. Consideriamo linsieme potenza di un insieme A, cio` e linsieme di tutti i sottinsiemi di A, che denoteremo P (A). Consideriamo una funzione f da P (A) in P (A). Assumiamo che f sia monotona rispetto allinclusione, cio` e X Y A implichi f (X ) f (Y ). Chiamiamo punto sso di f un insieme E tale che E = f (E ). Allora, per un teorema di Tarski, f ha un minimo punto sso, denotato X.f (X ) e un massimo punto sso, denotato X.f (X ). Lutilit` a degli operatori e segue dal fatto che molti concetti della logica temporale possono essere descritti come punti ssi di certe funzioni insiemistiche. La sintassi del -calcolo modale si ottiene aggiungendo alla logica modale delle variabili di punto sso X, Y, . . . e gli operatori X.(X ) e X.(X ), 13

ove (X ) ` e una qualunque formula sintatticamente positiva in X ; cio` e, ogni occorrenza di X deve comparire entro un numero pari di negazioni. La clausola di positivit` a garantisce la monotonia, ed ` e necessaria perch e le formule non positive possono dare luogo a operatori senza punti ssi: ad esempio, la funzione F denita da F (X ) = X (la negazione) non ha punti ssi nellinsieme potenza di un qualunque insieme non vuoto. Come la logica modale, il -calcolo modale si interpreta su strutture S = (V, R, P1 , . . . , Pn ), e la semantica di una formula del -calcolo ` e formalizzata mediante una relazione ternaria di soddisfazione S, v |= ove S ` e una struttura come sopra, v ` e un vertice di S e ` e una formula del -calcolo. Le clausole sono le stesse della logica modale, pi` u le seguenti: S, v |= X.(X ) se v appartiene al pi` u piccolo insieme E uguale a ||(E )||; S, v |= X.(X ) se v appartiene al pi` u grande insieme E uguale a ||(E )||. Ricordiamo che ||(E )|| denota linsieme dei punti di S che vericano (E ). Vediamo qualche esempio di formula del -calcolo. Un primo esempio banale ` e X.X . Questa formula ` e identicamente falsa, in quanto lequazione banale X = X ha come soluzione tutti i sottoinsiemi della struttura, e quindi la minima soluzione ` e linsieme vuoto. Altrettanto banalmente, X.X ` e identicamente vera, perch e la massima soluzione di X = X ` e linsieme di tutti i punti. Anche X. X ` e identicamente falsa, in quanto si verica che lequazione X = X ` e vera sullinsieme vuoto, che ` e quindi la minima soluzione (notiamo che X ` e linsieme dei punti che hanno qualche successore in X ; quindi si ha = ). Invece, X.[ ]X identica una propriet` a non banale, cio` e` e linsieme dei punti benfondati dai quali non parte nessun cammino innito. Questo si pu` o vericare considerando lequazione X = [ ]X , ove [ ]X ` e linsieme dei punti che hanno tutti i successori in X . Chiamando BF linsieme dei punti benfondati, basta vericare che: 14

BF verica lequazione, cio` e BF = [ ]BF ; BF ` e la minima soluzione, cio` e se X = [ ]X , allora BF X . Le formule del -calcolo possono diventare dicili da comprendere al crescere della loro lunghezza; una euristica che pu` o aiutare a comprenderne il signicato ` e lidea di vedere le formule dinamicamente, come ricerche di punti con certe propriet` a, svolte muovendosi lungo le frecce del grafo. Il dice che la ricerca deve terminare, mentre il dice che la ricerca non deve necessariamente terminare. Come esempio di applicazione di questa euristica, consideriamo la formula X. P X. Questa formula dice che deve esistere un punto accessibile che gode della propriet` a P , cio` e, corrisponde alla formula della logica temporale EF P . Infatti, partendo dal punto in cui la formula ` e valutata, iteriamo la seguente verica: se il punto corrente verica P , abbiamo nito; se no, selezioniamo una direzione (infatti, il diamond modale signica che si sceglie una direzione) e continuiamo la ricerca in quella direzione. Il allinizio della formula dice che la ricerca deve terminare, e lunico modo per terminare la ricerca ` e trovare un punto che gode di P . Notiamo che la formula precedente esprime una propriet` a di tipo liveness: qualcosa di buono, prima o poi, accadr` a. Come secondo esempio, duale al precedente, consideriamo la formula X. P [ ]X. Questa formula dice che tutti i punti accessibili godono della propriet` a P, cio` e corrisponde alla formula temporale AGP . Infatti, partendo dal punto in cui la formula ` e valutata, iteriamo la seguente verica: se il punto corrente verica P , abbiamo un fallimento; altrimenti, continuiamo la ricerca in tutte le direzioni (infatti il box modale signica prendere tutte le direzioni). Notiamo che la formula precedente esprime una propriet` a di tipo safety: se la negazione P di P ` e una propriet` a cattiva, abbiamo che qualcosa di cattivo non accadr` a mai. Combinando i minimi e i massimi punti ssi riusciamo anche a ottenere propriet` a di tipo fairness: ad esempio, la formula X. Y. (P X) Y

15

signica che esiste un cammino innito ove P occorre innite volte, cio` e corrisponde alla formula temporale EGF P . In generale, si dimostra che ogni formula della logica temporale CT L , introdotta nel seminario precedente, ` e equivalente a una formula del calcolo. Nel seminario precedente avevamo anche visto che ci sono propriet` a utili che la logica temporale non pu` o esprimere: ad esempio, le propriet` a cicliche, che dicono che qualcosa di buono occorre ogni tot passi. Tuttavia queste sono esprimibili nel mu calcolo: ad esempio la formula X. P X

dice che esiste un cammino in cui P occorre ogni due passi, e corrisponde quindi alla formula Even(P ) introdotta nel seminario precedente. Gli esempi mostrano che il -calcolo ` e molto espressivo. Possiamo chiederci se la sua espressivit` a possa essere caratterizzata in termini di logiche pi` u familiari. Risulta che la logica giusta con cui confrontare il -calcolo ` e la logica monadica del secondo ordine (l.m.s.o.), cio` e, la logica ottenuta dalla logica del primo ordine aggiungendo la quanticazione, esistenziale o universale, sugli insiemi di punti. In particolare, poich e il calcolo parla di gra, considereremo la l.m.s.o. sulla seguatura dei gra, data da un simbolo di relazione binaria e un numero arbitrario di simboli per predicati unari. Notiamo anzitutto che la semantica stessa del -calcolo ci d` a una traduzione del -calcolo nella l.m.s.o., che estende la traduzione che abbiamo visto nel primo seminario dalla logica modale nella logica del primo ordine. Data una formula del -calcolo, la sua traduzione t sar` a denita induttivamente con le stesse clausole del caso modale, pi` u le seguenti: caso base: tE (x) = x E ; tX.(X ) (x) = E. (y. y E t(E ) (y )) x E ; tX.(X ) (x) = E. (y. y E t(E ) (y )) x E . Notiamo che nelle clausole precedenti, la condizione y. y E t(E ) (y ) formalizza lequazione E = (E ). Unaltra osservazione ` e che il -calcolo pu` o essere immerso in una logica modale con disgiunzioni e congiunzioni innite, mediante la costruzione dei 16

minimi e massimi punti ssi per approssimazione transnita; lidea ` e di denire la approssimazioni ordinali X.(X ) e X.(X ) ponendo 0 X.(X ) = f alse; +1 X.(X ) = ( X.(X )); X.(X ) = e analogamente 0 X.(X ) = true; +1 X.(X ) = ( X.(X )); X.(X ) = risulta ora X.(X ) =
< X.(X ) < X.(X )

per ordinale limite;

per ordinale limite; X.(X ) X.(X ),

X.(X ) =

ove lunione e lintersezione sono fatte su tutti gli ordinali . In particolare, poich e la logica modale innitaria ` e invariante per bisimulazione, anche il -calcolo ` e invariante per bisimulazione. Nella direzione inversa, si ha il seguente risultato: Teorema (Janin-Walukiewicz, [9]) Sia una formula della logica monadica del secondo ordine sulla segnatura dei gra, invariante per bisimulazione. Allora ` e equivalente a una formula del -calcolo. Quindi, il -calcolo coincide col frammento invariante per bisimulazione della l.m.s.o. sui gra. Questo ci d` a la caratterizzazione cercata del -calcolo in termini di logiche tradizionali. Il problema della soddisfacibilit` a del -calcolo ` e: data una formula , decidere se ` e vera in qualche punto di qualche grafo. Questo problema ` e decidibile, come nel caso della logica modale, ma la sua complessit` a ` e maggiore, nel senso che il problema richiede un tempo esponenziale nella lunghezza della formula, vedi [6]. Quindi, per dimostrare i teoremi del calcolo, ` e utile avere altri strumenti oltre alla procedura di decisione, ad esempio un sistema di assiomi e regole completo per derivare le formule identicamente vere, analoghi ai sistemi usati nella logica del primo ordine. Per questo motivo ` e interessante il sistema assiomatico per il -calcolo proposto da Kozen in [11], che consiste negli assiomi e regole seguenti: 17

tutti gli assiomi e le regole della logica modale; lassioma di punto sso (X.(X )) X.(X ); la regola di induzione: dalla premessa ( ) segue la conclusione X.(X ) , purch e X non sia libera in . Notiamo che gli assiomi e regole di cui sopra sono corretti; cio` e, gli assiomi sono identicamente veri, e se la premessa di una regola ` e identicamente vera, lo ` e anche la conclusione. In particolare, la regola di induzione ` e sound perch e X.(X ) non ` e solo la minima soluzione di (X ) = X , ma anche la minima soluzione di (X ) X . La completezza del sistema di Kozen, invece, non ` e banale da dimostrare ed ` e stata dimostrata da Walukiewicz in [21]. Quindi, ogni formula del calcolo identicamente vera ` e dimostrabile nel sistema. La dimostrazione della completezza usa, tra gli altri ingredienti, una classe di formule del calcolo chiamate formule disgiuntive. In queste formule, intuitivamente, la disgiunzione pu` o essere usata liberamente, mentre la congiunzione ` e ammessa solo in una forma molto ristretta. Prima di denire le formule disgiuntive, introduciamo alcuni operatori modali derivati, di ariet` a n 0 qualunque; cio` e, date n formule 1 , . . . , n , poniamo Cover(1 , . . . , n ) = [ ](1 . . . n ) 1 . . . n .

Cio` e, Cover(1 , . . . , n ) dice che i gli del punto corrente sono coperti da 1 , . . . , n , e ciascun i ` e presente in qualche glio. Notiamo che box e diamond sono denibili a partire dagli operatori cover: = Cover(, true) [ ] = Cover() Cover(). Linsieme D delle formule disgiuntive ` e il pi` u piccolo insieme di formule del -calcolo tale che: gli atomi e gli atomi negati appartengono a D; se , D allora D;

18

sia una congiunzione di atomi, atomi negati, variabili e variabili negate, e siano 1 , . . . , n D. Allora la formula Cover(1 , . . . , n ) appartiene anchessa a D; sia (X ) una formula di D in cui X compare sempre positivamente, e mai in contesti del tipo X . Allora X.(X ) e X.(X ) appartengono anchesse a D. Risulta che ogni formula del -calcolo ` e equivalente a una formula disgiuntiva. Inoltre le formule disgiuntive hanno una struttura pi` u semplice di una formula del -calcolo arbitraria: una formula disgiuntiva ` e soddisfacibile se e solo se, rimpiazzando le variabili di tipo con f alse e quelle di tipo con true, si ottiene una formula soddisfacibile. Questo d` a un algoritmo lineare per la soddisfacibilit` a delle formule disgiuntive. Un difetto del -calcolo ` e la scarsa leggibilit` a delle sue formule, soprattutto quando contengono molti minimi e massimi punti ssi. Ci si pu` o chiedere se tanti punti ssi siano realmente necessari, o se basti un numero limitato di punti ssi per esprimere tutte le formule del -calcolo. Il problema si pu` o formalizzare in termini di classi di alternanza di punti ssi. Cio` e introduciamo una successione di classi di formule Nk , Mk , dovuta a Niwinski, nel modo seguente: N0 e M0 coincidono con linsieme delle formule senza punti ssi, cio` e, la logica modale; Nk+1 ` e la chiusura di Nk Mk rispetto alla composizione e alloperatore , ove comporre con signica rimpiazzare un atomo ssato di con ; analogamente, Mk+1 ` e la chiusura di Nk Mk rispetto alla composizione e alloperatore . Ci si pu` o chiedere se tutto il -calcolo equivalga a Nk per qualche k . Questo ` e il cosiddetto problema della gerarchia del -calcolo, e in breve, la sua storia ` e la seguente. Gi` a da [5] segue che il -calcolo non coincide con le composizioni di N1 e M1 ; un esempio ` e la formula che traduce la propriet` a temporale EGF P . Il fatto che EGF P non stia in M2 segue da [2]. In [15], Niwinski mostra che la gerarchia ` e innita se ci si restringe alle formule senza congiunzione. In [3], Bradeld mostra che la gerarchia ` e innita nel caso generale, ma senza esibire formule di data complessit` a k, 19

cio` e, che stanno in un dato Nk ma non nei livelli inferiori. In [13], lautore esibisce una tale formula per k = 3, e una successione di formule k che hanno complessit` a k nel -calcolo positivo (per la precisione, la nozione di alternanza usata dallautore ` e quella di Emerson, che ` e leggermente pi` u debole di quella di Niwinski). In [4], Bradeld ha poi semplicato la dimostrazione ed ha fornito esempi espliciti di formule che stanno in Nk ma non nei livelli inferiori, per ogni k . Segnaliamo anche il lavoro di Arnold in questo ambito, che in [1] ha dato una elegante dimostrazione dellinnit` a della gerarchia sugli alberi binari, decorati con predicati unari. Vediamo lidea della dimostrazione. Gli alberi binari decorati con predicati unari formano uno spazio metrico completo rispetto alla distanza d(A, B ) = 2h , ove h ` e la minima altezza di un punto ove A e B dieriscono. Si considera una successione di formule Wk , dovute a Walukiewicz, che esprimono lesistenza di una strategia vincente per uno dei due giocatori di un gioco di parit` a sul grafo. Un gioco di parit` a si gioca su un grafo, i cui vertici sono etichettati con un insieme nito di numeri. I due giocatori partono da un punto del grafo e percorrono a turno una freccia. Se uno dei due giocatori non pu` o muovere, laltro vince. Se no, si ha una successione innita di punti, e vince il primo giocatore se il minimo numero che occorre innite volte ` e pari. Risulta che Wk appartiene a Nk , e ogni formula del -calcolo di livello Nk si riduce a Wk mediante contrazioni dello spazio metrico. Ora Wk non pu` o appartenere a Mk , altrimenti Wk apparterrebbe a Nk e si avrebbe una contrazione tale che, per ogni albero A, A Wk se e solo se (A) Wk . Ma ` e una contrazione, quindi (teorema di Banach-Caccioppoli) ha un punto sso, cio` e un albero A0 tale che (A0 ) = A0 . Allora si ricava lassurdo: A0 Wk se e solo se A0 Wk . Quindi Wk appartiene a Nk , ma non ai livelli inferiori. Il legame tra il -calcolo e i giochi di parit` a` e molto stretto. Ad esempio tali giochi sono connessi con il problema del model checking per il -calcolo, cio` e dato un grafo nito G, un punto v e una formula , decidere se G, v |= . Il problema del model checking ` e polinomialmente equivalente al problema di determinare il vincitore di un gioco di parit` a. Entrambi i problemi sono nella classe di complessit` a N P e, per complementazione, anche in coN P , vedi [7]. Sarebbe molto desiderabile un algoritmo polinomiale.

20

References
[1] A. Arnold, The mu-calculus alternation-depth hierarchy is strict on binary trees, RAIRO Informatique th eorique et applications 33, 329339, 1999. [2] A. Arnold and D. Niwinski, Fixed point characterization of B uchi automata on innite trees, J. Inf. Process. Cybern. EIK 26, 453-461, 1990. [3] J. Bradeld, The modal -calculus alternation hierarchy is strict, Proceedings of CONCUR 96, Lecture Notes in Computer Science n. 1119, 233-246, 1996. [4] J. Bradeld, Simplifying the modal -calculus alternation hierarchy, Proceedings of STACS 98, Lecture notes in Computer Science n. 1373, 39-49, 1998. [5] A. Emerson and E. Clarke, Characterizing correctness properties of parallel programs using xpoints, in: Automata, Languages and Programming, 7th Colloquium, Lecture Notes in Computer Science n. 85, 169-181, 1980. [6] A. Emerson, C. Jutla, The complexity of tree automata and logics of programs, SIAM Journal of Computing 29, 132-158, 1999. [7] A. Emerson, C. Jutla, P. Sistla, On model checking for fragments of -calculus, Proceedings of 5th Int. Conference on Computer Aided Verication, Lecture Notes in Computer Science n. 697, 385-396, 1993. [8] E. Gr adel, P. Kolaitis and M. Vardi, On the decision problem for twovariable rst-order logic, Bull. Symbolic Logic 3: 53-69, 1997. [9] D. Janin, I. Walukiewicz, On the expressive completeness of the model mu-calculus w.r.t. monadic second order logic, Proceedings of CONCUR 96, Lecture Notes in Computer Science n. 1119, 263-277, 1996. [10] H. Kamp, Tense logic and the theory of linear order, Ph. D. Dissertation, University of California at los Angeles, 1968. [11] D. Kozen, Results on the propositional -calculus. Theoretical Computer Science 27, 333-354, 1983.

21

[12] R. Ladner, The computational complexity of provability in systems of modal propositional logic. SIAM Journal of Computing 6 (3): 467-480, 1977. [13] G. Lenzi, The -calculus and the hierarchy problem, Ph. D. Thesis, Scuola Normale Superiore, Pisa, 1997. [14] F. Moller, A. Rabinovich: On the expressive power of CT L , Proceedings of LICS 99, 360-369, 1999. [15] D. Niwinski, On xed point clones, 13th colloquium on Automata, Languages and Programming, Lecture Notes in Computer Science n. 226, 464-473, 1986. [16] D. Park, Concurrency and automata on innite sequences, Lecture Notes in Computer Science n. 154, 561-572, 1981. [17] A. Pnueli, The temporal logic of programs, Proceedings of the 18th IEEE Symposium on Foundations of Computer Science, 46-57, 1977. [18] A. Prior, Time and Modality, Oxford University Press, 1957. [19] E. Rosen, Modal logic over nite structures, Technical Report, university of Amsterdam, 1995. [20] J. Van Benthem, Modal Correspondence Theory, dissertation, Mathematical Institute, University of Amsterdam, 1976. [21] I. Walukiewicz, Completeness of Kozens axiomatization of the propositional -calculus, Information and Computation 157, 142-182, 2000. [22] P. Wolper, Temporal logic can be more expressive, Information and Control 56, 72-99, 1983.

22