characterizing bisimulations categorie, processi, linguaggi: algebra e logica al servizio...
TRANSCRIPT
![Page 1: Characterizing Bisimulations Categorie, processi, linguaggi: Algebra e logica al servizio dellinformatica Paolo Bottoni Anna Labella](https://reader035.vdocuments.site/reader035/viewer/2022062512/5542eb58497959361e8c33a7/html5/thumbnails/1.jpg)
• Characterizing Bisimulations Categorie, processi, linguaggi: Algebra e logica al servizio dell’informatica
Paolo Bottoni
Anna Labella
![Page 2: Characterizing Bisimulations Categorie, processi, linguaggi: Algebra e logica al servizio dellinformatica Paolo Bottoni Anna Labella](https://reader035.vdocuments.site/reader035/viewer/2022062512/5542eb58497959361e8c33a7/html5/thumbnails/2.jpg)
Automi e stati
Un automa è descritto da:
Stati STransizioni, cioè mosse elementari da un alfabeto A che sono “accettate” per passare da uno stato all’altro.
Partiamo dagli automi
![Page 3: Characterizing Bisimulations Categorie, processi, linguaggi: Algebra e logica al servizio dellinformatica Paolo Bottoni Anna Labella](https://reader035.vdocuments.site/reader035/viewer/2022062512/5542eb58497959361e8c33a7/html5/thumbnails/3.jpg)
Partiamo dagli automi
Un automa è un sottomonoide del monoide SS
Per ogni a in A, fa: S S
Un omomorfismo tra monoidi non corrisponde affatto ad un Omomorfismo tra automi
Dato un monoide M, questo è il monoide associato ad un automa
Si tratta di una somiglianza “occasionale”, non è “naturale”
![Page 4: Characterizing Bisimulations Categorie, processi, linguaggi: Algebra e logica al servizio dellinformatica Paolo Bottoni Anna Labella](https://reader035.vdocuments.site/reader035/viewer/2022062512/5542eb58497959361e8c33a7/html5/thumbnails/4.jpg)
Le categorie
Sono di particolare importanza le strutture “libere”, cioè quelle che non godono di più proprietà di quelle loro richieste
La struttura algebrica di categoria tiene conto dei morfismi, oltre che degli oggetti.
•Canonicità: si pone un problema e gli si dà una soluzioneunica a meno di isomorfismi
•Naturalità: le buone costruzioni devono essere invarianti per trasformazioni
![Page 5: Characterizing Bisimulations Categorie, processi, linguaggi: Algebra e logica al servizio dellinformatica Paolo Bottoni Anna Labella](https://reader035.vdocuments.site/reader035/viewer/2022062512/5542eb58497959361e8c33a7/html5/thumbnails/5.jpg)
Torniamo agli automi
Un automa è un insieme di stati “arricchito” sul monoide dei linguaggi P(A*).
Un morfismo tra automi è indotto da un “cambiamento di base” tra i rispettivi monoidi di linguaggi.
s s’ww’
A* B*
P(B*)P(A*)
AutBAutA
![Page 6: Characterizing Bisimulations Categorie, processi, linguaggi: Algebra e logica al servizio dellinformatica Paolo Bottoni Anna Labella](https://reader035.vdocuments.site/reader035/viewer/2022062512/5542eb58497959361e8c33a7/html5/thumbnails/6.jpg)
Alcune proprietà
Vale l’assiomatizzazione per le espressioni regolari (Salomaa, Kozen), in particolare la distributività: a (b+c) = ab + ac
Adesso tutto funziona perfettamente: le operazioni tra i linguaggi si “sollevano” ad operazioni tra automi
In particolare somma e concatenazione
![Page 7: Characterizing Bisimulations Categorie, processi, linguaggi: Algebra e logica al servizio dellinformatica Paolo Bottoni Anna Labella](https://reader035.vdocuments.site/reader035/viewer/2022062512/5542eb58497959361e8c33a7/html5/thumbnails/7.jpg)
Il caso non deterministico [Milner]nel calcolo paralleloNon sappiamo più nulla sugli stati, ma possiamo fare “esperimenti” per scoprire il comportamento di un processo
I processi come scatole nere
a
cb
?=
a a
cb
![Page 8: Characterizing Bisimulations Categorie, processi, linguaggi: Algebra e logica al servizio dellinformatica Paolo Bottoni Anna Labella](https://reader035.vdocuments.site/reader035/viewer/2022062512/5542eb58497959361e8c33a7/html5/thumbnails/8.jpg)
Osservatori ed esperimenti
Gli osservatori sono processi noti il cui comportamento viene forzato a coincidere con quello di una scatola nera:
a a a
cb b
||
Urrah!
![Page 9: Characterizing Bisimulations Categorie, processi, linguaggi: Algebra e logica al servizio dellinformatica Paolo Bottoni Anna Labella](https://reader035.vdocuments.site/reader035/viewer/2022062512/5542eb58497959361e8c33a7/html5/thumbnails/9.jpg)
a a a
cb b
||
Boh!
Osservatori ed esperimenti
Gli osservatori sono processi noti il cui comportamento viene forzato a coincidere con quello di una scatola nera:
![Page 10: Characterizing Bisimulations Categorie, processi, linguaggi: Algebra e logica al servizio dellinformatica Paolo Bottoni Anna Labella](https://reader035.vdocuments.site/reader035/viewer/2022062512/5542eb58497959361e8c33a7/html5/thumbnails/10.jpg)
Ciò non può succedere nell’altro caso
a a
cb b
||
Urrah!
Quindi a (b+c) ≠ ab + ac
Osservatori ed esperimenti
![Page 11: Characterizing Bisimulations Categorie, processi, linguaggi: Algebra e logica al servizio dellinformatica Paolo Bottoni Anna Labella](https://reader035.vdocuments.site/reader035/viewer/2022062512/5542eb58497959361e8c33a7/html5/thumbnails/11.jpg)
Gli alberi
Si possono pensare alberi generalizzati ad altri tipi di semireticoli L (o anche strutture molto più generali) (Walters-Kasangian)Con morfismi le simulazioni
a
cb c bb
a a
b c
![Page 12: Characterizing Bisimulations Categorie, processi, linguaggi: Algebra e logica al servizio dellinformatica Paolo Bottoni Anna Labella](https://reader035.vdocuments.site/reader035/viewer/2022062512/5542eb58497959361e8c33a7/html5/thumbnails/12.jpg)
I morfismi tra alberi
Le simulazioni possono essere non strette e quindi non rispettare il nondeterminismo
Questo è un esempio di monomorfismo non stretto
a
cb
a a
b c
![Page 13: Characterizing Bisimulations Categorie, processi, linguaggi: Algebra e logica al servizio dellinformatica Paolo Bottoni Anna Labella](https://reader035.vdocuments.site/reader035/viewer/2022062512/5542eb58497959361e8c33a7/html5/thumbnails/13.jpg)
Proprietà universale
Gli alberi finiti sul monoide libero sono la struttura libera come categoria con somma e con prodotto semidistributivo
Se gli alberi regolari vengono considerati come espressioni regolari generalizzate, hanno un’assiomatizzazione finita (DN-L)
Generalizzazione dei linguaggi
Caratterizzazione delle bisimulazioni (D. Gorla)
![Page 14: Characterizing Bisimulations Categorie, processi, linguaggi: Algebra e logica al servizio dellinformatica Paolo Bottoni Anna Labella](https://reader035.vdocuments.site/reader035/viewer/2022062512/5542eb58497959361e8c33a7/html5/thumbnails/14.jpg)
Alberi con simulazioni
Proposizione 1
Gli alberi con le simulazioni formano una categoria coerente.Cioè possiamo definire nell’insieme parzialmente ordinato dei sottoggetti di un oggetto tutti gli operatori positivi:
intersezione congiunzioneunione disgiunzione
immagine quantificatore esistenziale
che soddisfano opportune condizioni di coerenza (un’altra forma della naturalità)
![Page 15: Characterizing Bisimulations Categorie, processi, linguaggi: Algebra e logica al servizio dellinformatica Paolo Bottoni Anna Labella](https://reader035.vdocuments.site/reader035/viewer/2022062512/5542eb58497959361e8c33a7/html5/thumbnails/15.jpg)
Alberi con simulazioni strette
Proposition 2
Gli alberi con le simulazioni strette formano una categoria di Heyting (cioè. un “logos” [Freyd] ). Cioè possiamo definire nell’insieme parzialmente ordinato dei sottoggetti di un oggetto tutti gli operatori positivi e negativi:
implicazionenegazione
quantificatore universale
![Page 16: Characterizing Bisimulations Categorie, processi, linguaggi: Algebra e logica al servizio dellinformatica Paolo Bottoni Anna Labella](https://reader035.vdocuments.site/reader035/viewer/2022062512/5542eb58497959361e8c33a7/html5/thumbnails/16.jpg)
Associare un linguaggio logico ad una categoria
•Possiamo definire operatori positivi e negativi per tutte le formule,
•I negativi si comporteranno bene soltanto sulle formule “strette”.
Possiamo parlare di computazioni con questo linguaggio
Oggetti TipiSottoggetti FormuleMorfismi Termini
Monomorfismi Deduzioni
![Page 17: Characterizing Bisimulations Categorie, processi, linguaggi: Algebra e logica al servizio dellinformatica Paolo Bottoni Anna Labella](https://reader035.vdocuments.site/reader035/viewer/2022062512/5542eb58497959361e8c33a7/html5/thumbnails/17.jpg)
Una serie di operatori che si trasformanoin lettere funzionali e predicative del linguaggio
Se L’ è generato da un alfabeto con un elemento speciale †, possiamo: • Cancellare tutte le sue occorrenze come etichetta mediante un operatore del, oppure
• Rimuovere tutti i cammini contenenti † mediante un operatore res
Tree ha un prodotto tensore
![Page 18: Characterizing Bisimulations Categorie, processi, linguaggi: Algebra e logica al servizio dellinformatica Paolo Bottoni Anna Labella](https://reader035.vdocuments.site/reader035/viewer/2022062512/5542eb58497959361e8c33a7/html5/thumbnails/18.jpg)
Una logica più che coerente
1. Una logica coerente [Johnstone 2002] è un linguaggio tipato con gli operatori positivi, l’uguaglianza ed il sistema deduttivo comprendente le regole ), ), ), ), ) e )
2. Una logica intuizionista del primo ordine [Johnstone 2002] è un linguaggio tipato con tutti gli operatori, l’uguaglianza ed il sistema deduttivo comprendente le regole ), ), ), ), ), ) e ) (in questo caso le regole ) sono regole derivabili)
3. Una logica più che coerente è un linguaggio tipato con tutti gli operatori, l’uguaglianza ed il sistema deduttivo comprendente le regole della logica del primo ordine, eccetto la seconda parte delle regole ) e ).
![Page 19: Characterizing Bisimulations Categorie, processi, linguaggi: Algebra e logica al servizio dellinformatica Paolo Bottoni Anna Labella](https://reader035.vdocuments.site/reader035/viewer/2022062512/5542eb58497959361e8c33a7/html5/thumbnails/19.jpg)
![Page 20: Characterizing Bisimulations Categorie, processi, linguaggi: Algebra e logica al servizio dellinformatica Paolo Bottoni Anna Labella](https://reader035.vdocuments.site/reader035/viewer/2022062512/5542eb58497959361e8c33a7/html5/thumbnails/20.jpg)
Teorema
Gli alberi sono un modello di una logica “più che coerente”perché contengono una sottostruttura che è una categoria di Heyting (modello di una logica intuizionista).Anzi contengono una sottostruttura che è un topos.(modello di una logica intuizionista di ordine superiore).
In questi linguaggi possiamo usare gli operatori sopra menzionati, ma anche una famiglia di modalità X : “è deterministicamente vero rispetto ad un tipo X”Tutte le formule che comnciano per X si comporteranno bene nella logica intuizionista
![Page 21: Characterizing Bisimulations Categorie, processi, linguaggi: Algebra e logica al servizio dellinformatica Paolo Bottoni Anna Labella](https://reader035.vdocuments.site/reader035/viewer/2022062512/5542eb58497959361e8c33a7/html5/thumbnails/21.jpg)
Esempio di formula che non si comporta bene
Questa significa che abbiamo una simulazione del processo X mediante il processo Y più deterministico,
dove due computazioni di X sono simulate da altrettante in Y con la stesse successioni di mosse,
magari dimenticandone qualcuna nella seconda
![Page 22: Characterizing Bisimulations Categorie, processi, linguaggi: Algebra e logica al servizio dellinformatica Paolo Bottoni Anna Labella](https://reader035.vdocuments.site/reader035/viewer/2022062512/5542eb58497959361e8c33a7/html5/thumbnails/22.jpg)
Un altro esempio
con x di tipo X, y di tipo Y, supponiamola vera una volta interpretata nel contesto Y. Allora ci sarà un mono da Y alla sua interpretazione.
Se togliamo la quantificazione universale, la nuova formula sarà ancora interpretata come sottoggetto di Y, ma, non corrispondendo ad un mono stretto, non ci sarà un mono da Y a questo sottoggetto. Questo fatto falsifica la seconda parte della regola ).
![Page 23: Characterizing Bisimulations Categorie, processi, linguaggi: Algebra e logica al servizio dellinformatica Paolo Bottoni Anna Labella](https://reader035.vdocuments.site/reader035/viewer/2022062512/5542eb58497959361e8c33a7/html5/thumbnails/23.jpg)
Possiamo parlare di:Cooperative computation through pictures
Dato un alfabeto di immagini elementari V costruiamo un monoide-semireticolo Imediante l’operazione di sovrapposizione
![Page 24: Characterizing Bisimulations Categorie, processi, linguaggi: Algebra e logica al servizio dellinformatica Paolo Bottoni Anna Labella](https://reader035.vdocuments.site/reader035/viewer/2022062512/5542eb58497959361e8c33a7/html5/thumbnails/24.jpg)
1 2
x1=4, x2=2
x1=5, x2=1 x1=1, x2=5
x1=2, x2=4
x1=3, x2=3
x1=6, x2=0
x1=0, x2=6
x1=8, x2=6
Esempi di sovrapposizione lineare
![Page 25: Characterizing Bisimulations Categorie, processi, linguaggi: Algebra e logica al servizio dellinformatica Paolo Bottoni Anna Labella](https://reader035.vdocuments.site/reader035/viewer/2022062512/5542eb58497959361e8c33a7/html5/thumbnails/25.jpg)
1 2
0
t
e
0
t
e
0
t
e
0
e
1 &1 2
0
t
e
0 t
1 &2 2
Esempi di sovrapposizione bidimensionale
0
t
e
0 t
1 &3 2
![Page 26: Characterizing Bisimulations Categorie, processi, linguaggi: Algebra e logica al servizio dellinformatica Paolo Bottoni Anna Labella](https://reader035.vdocuments.site/reader035/viewer/2022062512/5542eb58497959361e8c33a7/html5/thumbnails/26.jpg)
Un gioco basato sul problema dei 4-colori
Ai giocatori (Proponente e Opponente) viene data una collezione di mappe
Trovare una colorazione di una mappa usando al più quattro colori in modo che regioni adiacenti non siano colorate nello stesso modo,
![Page 27: Characterizing Bisimulations Categorie, processi, linguaggi: Algebra e logica al servizio dellinformatica Paolo Bottoni Anna Labella](https://reader035.vdocuments.site/reader035/viewer/2022062512/5542eb58497959361e8c33a7/html5/thumbnails/27.jpg)
? ?
k1 k2
il Proponente vince se può proporre una regione che l’Opponente non può colorarel’ Opponente vince se riesce a completare la colorazione.
La vittoria dipende dall’indovinare la mappa giusta.
Il proponente sceglie una regione da una mappa (ignota all’Opponente) e lo sfida a colorarla secondo le regole del gioco usando la sovrapposizione; una regione già colorata non può essere cambiata
Dopo che l’Opponente ha colorato, il Proponente sceglie una nuova regione (non necessariamente sulla stessa mappa) ed il gioco prosegue.
![Page 28: Characterizing Bisimulations Categorie, processi, linguaggi: Algebra e logica al servizio dellinformatica Paolo Bottoni Anna Labella](https://reader035.vdocuments.site/reader035/viewer/2022062512/5542eb58497959361e8c33a7/html5/thumbnails/28.jpg)
Possiamo “filtrare” alberi e linguaggi
Usando formule contenenti i corrispondenti sintattici degli operatori , , res e del
![Page 29: Characterizing Bisimulations Categorie, processi, linguaggi: Algebra e logica al servizio dellinformatica Paolo Bottoni Anna Labella](https://reader035.vdocuments.site/reader035/viewer/2022062512/5542eb58497959361e8c33a7/html5/thumbnails/29.jpg)
Relazioni con la logica dei fuzzy sets[Novak, Perfilieva, Mockor 1999]
• Classificazione dell’appartenenza
• Classificazione dell’uguaglianza ?
![Page 30: Characterizing Bisimulations Categorie, processi, linguaggi: Algebra e logica al servizio dellinformatica Paolo Bottoni Anna Labella](https://reader035.vdocuments.site/reader035/viewer/2022062512/5542eb58497959361e8c33a7/html5/thumbnails/30.jpg)
Bibliografia