47
UNIVERSIT ` A DEGLI STUDI DI MILANO BICOCCA FACOLT ` A DI SCIENZE MATEMATICHE, FISICHE E NATURALI Corso di Laurea in Informatica OPERATORI DI CHIUSURA NELLE RETI DI OCCORRENZE SUPERVISORI: prof.ssa L. Pomello (relatrice) dott. L. Bernardinello (correlatore) Relazione della prova finale di: Riccardo Vincenzo Vincelli (709588) [email protected] AA 2009-2010 - seconda sessione, 25/11/2010

Operatori di chiusura nelle reti di occorrenze

Embed Size (px)

DESCRIPTION

Definition of topological closure operators in occurrence Petri nets. BSc thesis.

Citation preview

Page 1: Operatori di chiusura nelle reti di occorrenze

UNIVERSITA DEGLI STUDIDI MILANO BICOCCA

FACOLTA DI SCIENZE MATEMATICHE,FISICHE E NATURALI

Corso di Laurea in Informatica

OPERATORI DI CHIUSURANELLE RETI DIOCCORRENZE

SUPERVISORI:

� prof.ssa L. Pomello (relatrice)

� dott. L. Bernardinello (correlatore)

Relazione della prova finale di:Riccardo Vincenzo Vincelli (709588)

[email protected]

AA 2009-2010 - seconda sessione, 25/11/2010

Page 2: Operatori di chiusura nelle reti di occorrenze

Indice

1 Definizioni preliminari 41.1 Insiemi parzialmente ordinati . . . . . . . . . . . . . . . . . . . . 41.2 Tagli e linee . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61.3 N e K densita . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81.4 Reticoli . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81.5 Operatori di chiusura su insiemi parzialmente ordinati . . . . . . 91.6 Reti di Petri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

1.6.1 Reti di occorrenze . . . . . . . . . . . . . . . . . . . . . . 12

2 Operatori di chiusura su reti di occorrenze: un esempio 152.1 Applicabilita e risultati generali . . . . . . . . . . . . . . . . . . . 152.2 La griglia di Petri . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

2.2.1 Struttura . . . . . . . . . . . . . . . . . . . . . . . . . . . 172.2.2 Interpretazione da un punto di vista fisico . . . . . . . . . 192.2.3 Sottostrutture in esame . . . . . . . . . . . . . . . . . . . 23

2.3 I sottinsiemi chiusi . . . . . . . . . . . . . . . . . . . . . . . . . . 242.4 Relazioni . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

2.4.1 li riflessiva . . . . . . . . . . . . . . . . . . . . . . . . . . 272.4.2 li antiriflessiva . . . . . . . . . . . . . . . . . . . . . . . . 292.4.3 co riflessiva . . . . . . . . . . . . . . . . . . . . . . . . . . 312.4.4 co irriflessiva . . . . . . . . . . . . . . . . . . . . . . . . . 36

2.5 Prospetto riassuntivo dei risultati ottenuti . . . . . . . . . . . . . 36

3 Algoritmi proposti e strumenti software di supporto 373.1 Approccio computazionale . . . . . . . . . . . . . . . . . . . . . . 37

3.1.1 Rappresentare un poset . . . . . . . . . . . . . . . . . . . 373.1.2 Algoritmi . . . . . . . . . . . . . . . . . . . . . . . . . . . 383.1.3 Complessita dell’algoritmo principale . . . . . . . . . . . . 40

3.2 Strumenti software di supporto . . . . . . . . . . . . . . . . . . . 41

4 Conclusioni 43

Bibliografia 45

Page 3: Operatori di chiusura nelle reti di occorrenze

Introduzione

Il lavoro di stage e consistito nello studio degli operatori di chiusura sulle reti dioccorrenze, particolari reti di Petri. Piu in dettaglio si e esaminata una precisarete di occorrenze comunemente detta griglia spaziotempo di Petri, individuan-do in essa varie sottostrutture di stati ed identificandone la natura di elementichiusi o non-chiusi rispetto all’operatore definito.Parallelamente a cio sono stati progettati algoritmi rappresentanti l’operatore dichiusura stesso, utilizzabili per isolare gli elementi chiusi di un generico insiemeparzialmente ordinato.

Nell’ambito della teoria della concorrenza la struttura di insieme parzialmenteordinato e sempre stata centrale: essa infatti mette a disposizione un ambienteteorico con cui modellare in modo soddisfacente un sistema concorrente, conside-rando gli elementi del supporto come le componenti del sistema stesso ordinaterispetto ad una relazione che e comunemente intesa come causalita.Le reti di Petri sono un modello principe in quest’area, contraddistinguendosiper una definizione semplice ed una rappresentazione chiara seguita da un’al-trettanto chiara possibilita di simulazione; infine sono pure adatte alla verificaformale di proprieta del sistema modellato.Una famiglia di reti di Petri e quella delle reti di occorrenze tipicamente inte-sa come la traccia dell’esecuzione di un processo concorrente ad essa associato.Non sorprendentemente, una rete di Petri di occorrenze e anche un insieme par-zialmente ordinato: infatti e aciclica e rimane la relazione di flusso, grazie allaquale l’ordine e definito sull’insieme unione di stati ed eventi.In un insieme parzialmente ordinato la relazione base induce un’ulteriore coppiadi relazioni duali: dipendenza ed indipendenza tra elementi. La prima sussistese, dati due elementi qualsiasi, uno e in relazione di dipendenza con l’altro ossiase ne e causa o viceversa; l’indipendenza si ha quando non si ha la dipendenza.Una proprieta di queste relazioni che puo essere stabilita convenzionalmente ela riflessivita, e la scelta nelle applicazioni non e indifferente.Il concetto di chiusura occorre in molteplici aree, ed anche specificatamente pergli insiemi parzialmente ordinati e possibile costruire un operatore di chiusura;esso e definibile assiomaticamente sopra una relazione simmetrica, nel nostrocaso quella di dipendenza od indipendenza. Applicando l’operatore ad unaparticolare struttura, il supporto e suddiviso in sottinsiemi chiusi e non, coninteressanti proprieta formali.Vogliamo applicare l’operatore definito ad una particolare rete di occorrenze, lastruttura tipicamente chiamata griglia spaziotempo di Petri; questa struttura,infinita e regolare, e costruibile direttamente a partire dallo spaziotempo relati-vistico, e nella sua interpretazione principe per il lavoro e esame di una retta del

1

Page 4: Operatori di chiusura nelle reti di occorrenze

piano in rispetto al moto di particelle nel tempo. Nella struttura trova naturaleapplicazione l’utilizzo di una relazione di influenza per ordinare gli eventi, chemodellano interazioni tra particelle, e gli stati, rappresentanti la configurazionedi queste tra un’interazione e l’altra.Volendo studiare l’operatore di chiusura su tale griglia, giacche e infinita none possibile trovare sistematicamente tutti gli insiemi chiusi, ma sfruttando laregolarita e ponendo l’attenzione esclusivamente su alcune sottostrutture chepaiono significative e comunque possibile arrivare a dei risultati effettivi. Variesottostrutture sono esaminate, rispetto a tutti e quattro gli operatori costruibili:infatti la relazione base puo essere presa riflessiva od irriflessiva, e questa sceltadetermina relazioni di dipendenza ed indipendenza riflessiva ed irriflessiva, odirriflessiva e riflessiva rispettivamente.L’interesse per gli insiemi chiusi puo essere puramente teorico, per esempio lafamiglia dei chiusi di un insieme forma un reticolo rispetto all’inclusione, ma siaprono anche interpretazioni per la teoria della concorrenza e della fisica quandoi sottinsiemi chiusi coincidono con un altro tipo di sottinsieme di una rete dioccorrenze, gli insiemi causalmente chiusi: essi possono essere letti nella primaprospettiva come sottocomponenti eseguibili non necessariamente in sequenza,nella seconda come sottoreti coerenti con una certa osservazione sotto tutte lepossibili linee di moto di un medesimo insieme di particelle.Computazionalmente, l’operatore di chiusura corrisponde ad un gruppo di al-goritmi che, dato in input il supporto di un insieme ordinato ed eventualmenteindicazioni circa la relazione, restituisce gli elementi chiusi. Per arrivare allarisposta, seguendo la definizione, un approccio al problema di identificare unsottinsieme come chiuso o non-chiuso consiste nel costruirne l’insieme polare esuccessivamente l’insieme chiusura, tipicamente passando per la costruzione ditali insiemi per ogni suo singolo elemento, e verificare se il risultato e ancora ilsottinsieme di partenza. Essendo che l’insieme delle parti di un insieme ha car-dinalita esponenziale, collezionare i sottinsiemi chiusi e un problema intrattabileper grandi istanze, ma la procedura che da la risposta per un singolo sottinsiemesi mantiene di per se quadratica sia in tempo sia in spazio.L’ambiente in cui e stato sviluppato il codice e una piattaforma di calcolo sim-bolico, e la scelta si motiva fondamentalmente con la presenza di una robustaed estesa libreria di codice e la praticita nella rappresentazione delle strutture.Ulteriori sviluppi al lavoro possono essere tra gli altri l’investigazione di altresottostrutture della griglia di Petri, lo studio di nuove griglie formalmente de-rivabili da questa, lo sviluppo di algoritmi per risolvere al calcolatore problemiaffini come l’identificazione degli insiemi causalmente chiusi di una rete di oc-correnze o l’analisi di sue proprieta formali come la densita.

Nel capitolo 1 sono introdotte le definizioni teoriche necessarie alla compren-sione del lavoro, ossia insiemi parzialmente ordinati, reti di Petri, reti di Petridi occorrenze ed operatori di chiusura anzitutto, cosı come altre, tagli e linee,N e K densita (entrambe riferite agli insiemi parzialmente ordinati), reticoli.Il capitolo 2 e sicuramente il capitolo principale, e nelle sue sezioni trova postola discussione dell’operatore di chiusura applicato ad una particolare struttura,la griglia di Petri, che viene anche illustrata formalmente ed inquadrata in unasua interpretazione fisica, cosı come una giustificazione del perche si e sceltodi studiare gli insiemi chiusi; in questo studio l’idea e quella di verificare sesottostrutture caratteristiche della griglia siano o meno chiuse, ed i risultati a

2

Page 5: Operatori di chiusura nelle reti di occorrenze

riguardo sono illustrati singolarmente e riassunti.Nel capitolo 3 segue la descrizione di un approccio computazionale alla risoluzio-ne del problema di determinazione dei chiusi in una struttura rappresentante uninsieme parzialmente ordinato: sono introdotti gli algoritmi progettati, accom-pagnati da una breve analisi di complessita, e si presenta l’ambiente di calcolosimbolico in cui essi sono stati sviluppati.Infine nel capitolo conclusivo sono proposte possibili linee di sviluppo del pro-blema trattato, che possono principalmente scaturire dal concentrarsi su altresottostrutture o dall’esaminare strutture alternative derivabili dalla griglia.

3

Page 6: Operatori di chiusura nelle reti di occorrenze

Capitolo 1

Definizioni preliminari

In questa sezione raccogliamo le definizioni principali delle strutture formalid’interesse, con contenuti sia dall’algebra sia dalla teoria della concorrenza, pre-sentando anche esempi nei vari casi.

1.1 Insiemi parzialmente ordinati

Dato un insieme P ed una relazione ≤ su di esso, definiamo la struttura diinsieme parzialmente ordinato (poset, partially ordered set), indicandola con(P,≤), mediante i seguenti assiomi [?]:

� x ≤ x ∀x ∈ P

� (x ≤ y ∧ y ≤ x)⇒ x = y ∀x, y ∈ P

� (x ≤ y ∧ y ≤ z)⇒ x ≤ z ∀x, y, z ∈ P

Notiamo, come al solito, che il simbolo usato ≤ e generico e non vuole indicarela nota relazione minore-uguale, che pure e il classico esempio di relazione ri-flessiva, antisimmetrica e transitiva.Un esempio di insieme parzialmente ordinato e (N+, |), con N+ i naturalipositivi, dove | e la nota relazione divide:

4

Page 7: Operatori di chiusura nelle reti di occorrenze

1

2 3

4

5

6

7

8

9 10

Figura 1.1: Il diagramma di Hasse del poset ({1, ..., 10} ⊆ N, |)

Nel caso in cui valga:

(x ≤ y ∨ y ≤ x) ∀x, y ∈ P

allora diciamo che (P,≤) e un ordine totale (toset).Ancora sui numeri naturali, la struttura (N,≤) con ≤ la nota relazione minore-uguale, e un insieme totalmente ordinato.

Se la coppia (P,≤) non e un insieme totalmente ma parzialmente ordinato,vale:

∃x, y ∈ P : x||y

dove:

x || y ⇔ ¬((x ≤ y)) ∧ (y ≤ x))

Un’altra definizione di insieme parzialmente ordinato, non equivalente alla data,prende la relazione irriflessiva e transitiva; in questo caso (P,<) e un insiemeparzialmente ordinato con ordine stretto:

� 6 ∃x ∈ P : x < x

� (x < y ∧ y < z)⇒ x < z ∀x, y, z ∈ P

5

Page 8: Operatori di chiusura nelle reti di occorrenze

essa ha a modello la relazione minore, e sono analogamente definibili i concettidi relazione d’incomparabilita || e di insieme totalmente ordinato.Esempio noto si ha come sopra, prendendo pero la relazione minore.

Definiamo ora due insiemi in funzione di un generico x ∈ P con (P,R) insiemeordinato:

Dx = {y ∈ P | (x R y) ∨ (y R x)} (cono)Cx = {y ∈ P | x || y} (anticono)

Le due relazioni su cui questi due insiemi sussistono le chiamiamo di dipenden-za lineare (li) e concorrenza (co) rispettivamente, e chiamiamo un insieme diquesta forma, indipendentemente dalla relazione sussistente, polare di P .La prima e riflessiva se l’ordine non e stretto, perche R e in tal caso riflessiva,irriflessiva altrimenti; il duale vale per la seconda (se si assume che ogni elemen-to e dipendente da se stesso allora ogni elemento non puo essere concorrenterispetto a se stesso e viceversa). Entrambe sono simmetriche ed e necessaria-mente transitive.Se prendiamo il poset di sopra (N+, |) ad esempio, per l’elemento bottom 1 va-le D1 = N+, mentre per il secondo elemento 2 vale sicuramente C ⊆ C2 conC = {3, 5, 7}.

Graficamente, queste costruzioni sono rappresentate mediante un particolaregrafico chiamato diagramma di Hasse; esso puo essere definito formalmente, apartire dall’insieme di copertura del poset in esame (vedi ??).

1.2 Tagli e linee

Sia (P,R), con R relazione simmetrica, un poset; una cricca Q ⊆ P e sottinsie-me che forma una catena rispetto alla relazione R, ossia vale:

∀x, y ∈ Q x R y

Q e una cricca massimale se e una cricca e vale pure la seguente:

∀p ∈ P −Q ∃q ∈ Q : ¬(p R y)

Definiamo ora gli insiemi dei tagli e delle linee del poset (denotati da Cuts(P )e Lines(P ) rispettivamente): essi sono gli insiemi di tutte le possibili cricchemassimali costruite su co e su li rispettivamente.

6

Page 9: Operatori di chiusura nelle reti di occorrenze

Figura 1.2: Il sottinsieme Q = {1, 3, 5} e una linea: infatti 1 li 3 li 5, ¬(2 li 3),¬(4 li 3), ¬(6 li 3) e ¬(7 li 5)

Figura 1.3: Il sottinsieme Q = {2, 3} e un taglio; infatti 2 co 3, ¬(1 co 2) e ¬(4co 1)

7

Page 10: Operatori di chiusura nelle reti di occorrenze

1.3 N e K densita

N-densita e K-densita sono due proprieta formali che un insieme parzialmenteordinato puo esibire; la seconda e una generalizzazione della prima e seppur essenon siano centrali nel lavoro, sono presentate perche interessanti nella prospet-tiva fisica della struttura della griglia di Petri, introdotta in ??.Un poset (P,R) e N-denso se vale la seguente:

∀x, y, v, w ∈ P((y R v) ∧ (y R x) ∧ (w R v) ∧ (y co w co x co v))⇒

∃z ∈ P : (y R z R v) ∧ (w co z co x)

Per (P,R) K-denso invece:

∀C ∈ Cuts(P ), L ∈ Lines(P )|C ∩ L| = 1

La K-densita rafforza la densita definita dalla N-densita, che e per cosı direlocale, e si basa sull’interpretare i tagli come stati globali del sistema modellatomediante ordine parziale, le linee come sottoprocessi sequenziali di questo.In un poset K-denso ogni linea attraversa ogni taglio in uno ed un solo puntoe per la K-densita ogni occorrenza di un sottoprocesso dev’essere in un qualchestato.La K-densita ha un’interpretazione fisica quando costruiamo la griglia di Petri,ed al proposito si rimanda a ??.

1.4 Reticoli

Un reticolo (lattice in inglese) R puo essere definito, come struttura autonoma,mediante una tripla (L,∨,∧), dove L e un insieme e ∨,∧ : L2 → L due mappe,normalmente chiamate join e meet rispettivamente; seppur ci sia analogia tratali operazioni ed i connettivi logici or ed and (vedi sotto) tali funzioni nonvanno confuse con questi ultimi.Tali applicazioni devono godere di varie proprieta: associativita, commutativita,idempotenza, assorbimento. Un insieme parzialmente ordinato (P,R) e un re-ticolo (P,∨,∧) se per ogni coppia di x, y ∈ P , esistono gli estremi superiore edinferiore x ∨ y, x ∧ y rispettivamente, entrambi in P .Per esempio l’insieme parzialmente ordinato (P(A),⊆) con A generico forma unreticolo; infatti: ∀X,Y ∈ P(A), sup{X,Y } = X ∪ Y , inf{X,Y } = X ∩ Y , esi puo facilmente verificare che tali operazioni join e meet rispettano i quattroassiomi. Un reticolo si dice completo se esiste un join ed un meet per ognielemento.

8

Page 11: Operatori di chiusura nelle reti di occorrenze

Æ

8a< 8b< 8c<

8b,c< 8a,c< 8a,b<

8a,b,c<

Figura 1.4: Il diagramma di Hasse del reticolo (A = {a, b, c},⊆)

Per rappresentare graficamente i reticoli classicamente si adopera il diagrammadi Hasse, come per i parzialmente ordinati (anche in virtu del fatto che i primipossono essere visti come caso particolare dei secondi).

1.5 Operatori di chiusura su insiemi parzialmen-te ordinati

E ben definito, come ci si aspetta per ogni costruzione algebrica, il concetto diisomorfismo tra insiemi ordinati. Un isomorfismo e definito come una coppia dimappe (φ, φ−1) che preservano la struttura dell’elemento su cui operano (omo-morfismi); nel nostro caso, parlando di insiemi ordinati, l’ordine e preservato, ediremo che due insiemi ordinati P e Q sono φ-isomorfi se vale la seguente:

∃φ : P → Q | x RP y ⇔ φ(x) RQ φ(y)

9

Page 12: Operatori di chiusura nelle reti di occorrenze

dove RP ed RQ sono le relazioni su cui P e Q sono ordinati rispettivamente, eil duale per l’inversa φ−1.Se per esempio (P,RP ) e (Q,RQ) modellano due sistemi le cui componenti pos-sono essere sia dipedenti sia concorrenti tra loro, un sistema distribuito generico,la possibilita di costruire una mappa come quella illustrata suggerisce che essi“fanno la stessa cosa”: per esempio sia una stampante sia un editor di testodevono essere attivati (accensione-esecuzione) e solo dopo questo passo inizialepossono essere utili (ricezione file di stampa-ricezione input tastiera) ma unavolta attivi possono, indipendentemente da quel che l’utente chiede, mandaremessaggi (es. “carta terminata”, “spazio su disco esaurito”).La possibilita di passare da un’istanza ad un’altra e un concetto definito ancheper strutture piu particolari come le reti di Petri e permette lo studio di pro-prieta anche complesse dei sistemi modellati.

Tornando nel dettaglio pero, ci interessa investigare una particolare classe dimappe: dall’insieme delle parti di un insieme, dove si ha una relazione arbi-traria R′, in se (endomorfismi), C : P(P ) → P(P ), gli operatori di chiusura(closure operators). Essi sono definibili, per quanto ci riguarda, mediante iseguenti assiomi (Q,Q′ ⊆ P ):

� Q ⊆ C(Q)

� Q ⊆ Q′ ⇔ C(Q) ⊆ C(Q′)

� C(C(Q)) = C(Q)

Si hanno allora le tre proprieta di estensivita, incremento ed idempotenza co-muni ad un qualsiasi operatore di chiusura.Le relazioni R′ cui vogliamo riferirci sono due relazioni li′ e co′ (controparti sul-l’insieme potenza P(P ) di quelle che abbiamo dato in ?? su P ), caratterizzate,posto C = (.)∗∗R′ = ((.)∗R′)∗R′ , dal seguente insieme:

(Q)∗R′ = {p ∈ P | ∀q ∈ Q : (p, q) ∈ R}

dove R : P → P e una relazione simmetrica (li o co); allora C e un operatoredi chiusura esattamente come appena definito e segue tra l’altro che (∅)∗R′ = ∅.Per i nostri scopi quindi, un elemento Q ⊆ P(P ) e un elemento chiuso secondol’operatore di chiusura se (Q)∗∗R′ = Q, ossia se l’elemento coincide con la propriachiusura.

L’esame della proprieta di chiusura di sottostrutture significative di una par-ticolare rete di Petri e argomento principale del lavoro, e la formalizzazione diun operatore C siffatto, come algoritmo, per la risoluzione di questo problemain ambito simbolico, e anch’essa presentata.

1.6 Reti di Petri

Una rete di Petri (Petri net) e un modello formale di un sistema distribuito.Tali strutture si contraddistinguono per versatilita, nella loro forma elementaresono uno strumento immediato in cui e facile la simulazione dell’esecuzione delsistema, e robustezza, essendo ben definite a livello matematico e rappresenta-bili tra l’altro sottoforma di grafi; per questo si prestano ad esempio ad uno

10

Page 13: Operatori di chiusura nelle reti di occorrenze

studio efficace delle proprieta del sistema.Per questa sezione, riferimenti sono [?] e [?]. Prendono il nome dal loro inven-tore, C.A. Petri.Definiamo una rete come una tripla N = (B,E, F ) con B ∩ E = ∅, dove B edE sono insiemi finiti e sono chiamati rispettivamente stati (oppure posti, posi-zioni) ed eventi (oppure transizioni, azioni) mentre F ⊆ (B × E) ∪ (E × B) euna relazione detta relazione di flusso. La struttura e tale per cui valgono

� ∀e ∈ E ∃b, c ∈ B : (b, t), (t, c) ∈ F

� ∀e ∈ E ∃b, c ∈ B((b, t), (t, c) ∈ F )⇒ b 6= c

Gli eventi sono azioni che possono essere eseguite o meno in funzione degli statiloro adiacenti, che in un modello base (rete sicura o binaria, ve ne sono infattimolteplici in letteratura), assumiamo poter essere solo negli stati vero o falso.Gli stati adiacenti connessi ad un evento mediante la relazione di flusso con unarco entrante al primo, nella formalizzazione della rete come grafo, sono dettiprecondizioni ed hanno duale nelle postcondizioni ; nel modello sicuro le primedevono essere vere e le seconde false affinche l’evento ad esse collegato possaavvenire.Una configurazione della rete e un assegnamento di verita a ciascuno stato quin-di, a partire dal quale la rete puo essere fatta evolvere.L’evoluzione consiste nel cosiddetto token game:

� un evento puo accadere (firing) se e solo se tutte le sue precondizioni sonovere e tutte le sue postcondizioni sono false

� il verificarsi di un evento ha come conseguenza l’inversione dei valori diverita degli stati nel suo vicinato: le precondizioni diventano false, lepostcondizioni vere

� ad ogni iterazione si verificano tutti gli eventi abilitati, in parallelo

Esso puo essere formalizzato mediante funzioni caratteristiche per ogni evento,le quali modificano la configurazione corrente se essa permette la loro esecuzione.

Come esempio di rete, proponiamo una rete elementare atta alla modellazio-ne del paradigma produttore-consumatore.Nella sua forma essenziale si hanno due processi, uno detto produttore e l’altroconsumatore appunto, ognuno formato da due sottoprocessi, uno deputato allaproduzione, o consumazione, di un gettone ed un altro al deposito, o ritiro, diquesto, in un apposito buffer.Modellando con una rete di Petri, entrambi i processi sono caratterizzati da duecondizioni ed un’azione ciascuno, ed il buffer e un’ulteriore condizione.

11

Page 14: Operatori di chiusura nelle reti di occorrenze

Figura 1.5: Il sistema produttore-consumatore modellato come Rete di Petrisemplice, in una possibile configurazione, quella dove entrambi gli agenti sonopronti ad espletare la propria funzione

1.6.1 Reti di occorrenze

Una particolare rete e la rete di occorrenze (ingl. occurrence net-process net):essa ha la peculiarita di essere aciclica e di poter essere vista come processo,registrazione di una particolare esecuzione, anche infinita se essa e tale, di unsistema modellato come rete di Petri in termini di stati ed eventi.Una generica rete di Petri e una rete di Petri d’occorrenze se valgono le seguenti:

� ∀b ∈ B |b•| ≤ 1 ∧ |•b| ≤ 1

� ∀x, y ∈ B ∪ E : (x, y) ∈ F+ ⇒ (y, x) /∈ F+

dove b• e •b sono gli insiemi degli eventi con archi rispettivamente uscenti edentranti da una posizione b ∈ B e F+ e la relazione di chiusura transitiva di F .Una rete con queste proprieta, dove ogni posto ha grado al massimo due edaciclica, puo essere vista direttamente come un insieme parzialmente ordinatoin differenti modi, per esempio (B ∪ E,F ∗+) con F ∗+ chiusura transitiva e ri-flessiva della relazione di flusso .Le dinamiche di un sistema distribuito possono essere molteplici ed il fatto checiascuna di queste sia descrivibile mediante una precisa rete di occorrenze im-plica che ogni rete di Petri abbia associata una famiglia di reti di occorrenze.

12

Page 15: Operatori di chiusura nelle reti di occorrenze

Come esempio di rete di occorrenza diverso dalla grid che introdurremo ec-co quella associata ad una particolare run del sistema produttore-consumatorepresentato.L’esecuzione rappresentata e cio che segue dal “gioco delle marche” come primaspiegato, con la condizione iniziale della precedente figura, eseguendo ad ognipasso tutti gli eventi attivati parallelamente.

Figura 1.6: Possibile rete di occorrenze per la rete produttore-consumatore.

13

Page 16: Operatori di chiusura nelle reti di occorrenze

14

Page 17: Operatori di chiusura nelle reti di occorrenze

Capitolo 2

Operatori di chiusura sureti di occorrenze: unesempio

In questa sezione vogliamo prendere in considerazione l’operatore di chiusuradefinito in ?? costruito sulla relazione co e li in tutti e quattro i possibili casi.Sono presentate la griglia spazio-tempo di Petri e le sottostrutture di questa sucui ci si e concentrati; inoltre anche e la costruzione della rete e discussa.Attenzione e riservata alle motivazioni che possono portare ad indagare propriola griglia ed a volerne individuare proprio gli elementi chiusi.

2.1 Applicabilita e risultati generali

Essendo una rete di occorrenze interpretabile come un insieme parzialmente or-dinato ??, l’applicazione di un’operatore di chiusura e sicuramente ben definita.Segue che lo studio della chiusura su di una particolare struttura infinita comequella sotto presentata, la griglia spaziotempo di Petri, puo essere visto comeapplicazione sia su di una particolare rete di occorrenze sia su di un poset; inquesto senso lavori principali risultano [?] e [?].In [?] si mostra che la griglia non ha la proprieta di essere K-densa ma nonN-densa, cosı come l’essere chiuso di una particolare sottostruttura, due unitadi rete connesse mediante uno stato; sono inoltre messe in luce particolari sot-tostrutture della rete come la frontiera di un sottinsieme ed elementi adiacenti.In [?] sono invece presentati molti esempi di chiusi sia sulla griglia classica siasu quella di stati locali, per co cosı come per li, cosı come l’introduzione delconcetto di convessita spaziale.Per introduzione a quel di cui ci occupiamo nel proseguo, vale la pena portaredegli esempi tratti da entrambi questi lavori.

Operativamente, quel che e necessario fare e, una volta ben individuato il sottin-sieme su cui agire, agire gradualmente provando a visualizzarne prima il polarepoi la chiusura: se il risultato e il sottinsieme di partenza, allora questo e unelemento chiuso.

15

Page 18: Operatori di chiusura nelle reti di occorrenze

Quel che formalmente bisogna verificare, e che ogni elemento dell’insieme pola-re sia in relazione (li o co riflessive od antiriflessive nel nostro caso) con ognielemento del sottinsieme di partenza, e lo stesso per il secondo passo, ogni ele-mento della chiusura dev’essere in relazione con ogni elemento del polare.Questo approccio e certamente laborioso ed e adatto solamente al calcolatore;“carta e penna” risulta piu comodo isolare direttamente coni ed anticoni (vedi??).Mostriamo ora una sottostruttura formata da due unita: il polare e la chiusuracoincidono, per la relazione di concorrenza co irriflessiva (in questo caso il polaree talvolta chiamato ortocomplemento).

Figura 2.1: Studio di co irriflessiva su di una particolare sottostruttura formatada due unita: ortocomplemento e chiusura coicidono

Ecco un esempio di insieme chiuso per li riflessiva.

16

Page 19: Operatori di chiusura nelle reti di occorrenze

Figura 2.2: Una sottostruttura chiusa per li riflessiva

Seguono ora dei risultati generali di interesse nell’ambito (vedi ?? per le defi-nizioni richiamate). Se prendiamo li riflessiva, ogni linea e un chiuso, infatti ilpolare e la linea stessa; lo stesso vale un taglio rispetto a co ma irriflessiva. Sivisualizzi ora il cono di un elemento della griglia, sia esso posto o transizione:esso e un chiuso per li; dualmente lo e per co.

2.2 La griglia di Petri

La struttura cui ci riferiamo col nome di griglia spaziotempo di Petri fu intro-dotta nel 1979 da C.A. Petri in [?], all’interno di una riflessione piu ampia circale relazioni esistenti, e le analogie, tra la teoria delle reti di Petri ed aree comela topologia, la logica e la fisica tra le altre.Esaminiamone la struttura e discutiamone l’importanza come discretizzazionedello spaziotempo di E. Einstein e H. Minkowski.

2.2.1 Struttura

La griglia e formalmente una rete di occorrenze e quindi rispetta le definizionidate in ??.La rete e strutturata nella giustapposizione di un’unica struttura elementare,anch’essa a sua volta una rete di occorrenze; questa struttura e composta da unsolo evento, cui vicinato e formato da due precondizioni e due postcondizioni

17

Page 20: Operatori di chiusura nelle reti di occorrenze

(bilanciamento rispetto alle condizioni).La rete puo, fissata la struttura base, essere costruita induttivamente; nell’unita,la prima precondizione e anche la seconda postcondizione di un’altra unita ele-mentare adiacente, la seconda precondizione e anche la prima postcondizione diun’altra unita adiacente ancora, inoltre la prima postcondizione e anche secondaprecondizione di una terza unita adiacente cosı come la seconda precondzionee prima precondizione di una quarta unita pure adiacente. Essendo che questequattro unita adiacenti hanno la struttura sopra definita, si puo ricorrere inmodo del tutto identico a quanto appena scritto e costruire la rete, infinita.

Figura 2.3: L’unita di rete: un evento bilanciato a due precondizioni e duepostcondizioni

18

Page 21: Operatori di chiusura nelle reti di occorrenze

Figura 2.4: La rete puo essere costruita induttivamente

2.2.2 Interpretazione da un punto di vista fisico

In fisica, un modello spaziotempo e un qualsiasi modello matematico che com-bini in un unico continuo lo spazio ed il tempo.Esso e centrale nella fisica moderna, giacche e diretta conseguenza della notateoria della relativita di A. Einstein, in versione ristretta/speciale, dove e postaequivalenza tra spazio e tempo. Lo spaziotempo einsteiniano e sostanzialmenteuno spazio cartesiano reale a quattro dimensioni, le tre spaziali piu il tempo,ed e di H. Minkowski la proposta di legare in modo piu profondo la dimensionespaziale a quella temporale servendosi di uno spazio non-euclideo, anche se si epoi preferito abbandonare questo approccio, che richiede una componente im-maginaria, servendosi solamente di una metrica non-euclidea.Data l’innaturalezza, a livello di rappresentazione, di uno spazio quadridimen-sionale, il nostro discorso puo continuare su di uno spazio tridimensionale sa-crificando la terza componente spaziale, la profondita: le osservazioni possonoessere generalizzate, in particolare con questa riduzione assumiamo che una par-ticella (es. fotone), nel tempo, possa muoversi solo sul piano.Un vettore nello spazio e quindi di forma v = (x, y, t) e puo essere adoperato per

19

Page 22: Operatori di chiusura nelle reti di occorrenze

descrivere la posizione (x, y) di una particella al tempo t; una pratica accortezzaper il sistema di riferimento e fissare le unita dimensionali dimodoche la velocitadella luce c corrisponda ad 1.Per una singola particella, si puo formalizzare il suo moto pensando ad una fun-zione del tempo t che per ogni istante ne ritorni la posizione (x, y) nel piano; ipunti cosı generati costituiscono la linea d’universo di una particella e l’intuibileanalogia con il concetto di linea in un poset presentato in ?? seguira tra poco.Durante il loro moto descritto dalle proprie linee, le particelle hanno interazionil’una con l’altra ed in particolare chiamiamo eventi i punti dello spazio definito.Se ci concentriamo su di un particolare punto-evento ed assumiamo che le parti-celle osservate siano fotoni, posto un sistema opportuno che implichi la velocitadi queste particelle unitaria come detto, essendo che la luce viaggia in linea rettaed in ogni direzione, in corrispondenza di questo si individuano coni cui superficisono inclinate di 45 °rispetto al piano bidimensionale di un preciso istante in cuisi posiziona l’evento: uno consistente nelle possibili linee di universo future delfotone, un altro in quelle passate.

Figura 2.5: Lo spazio in esame prende il nome di spazio di Minkowski

In questo spazio sono individuabili, oltre a quello evidenziato in figura che e diequazione z = k, infiniti altri piani verticali (famiglie x = a ed y = b); ognuna diqueste sezioni rappresenta un particolare esame dello spazio stesso permettendo

20

Page 23: Operatori di chiusura nelle reti di occorrenze

lo studio di una serie di posizioni allineate al variare del tempo.Ora, discretizziamo lo spazio e focalizziamoci su uno di questi piani verticali:esso e costituito da una griglia di eventi, ed e definibile una relazione tra essi,indotta dal fatto che un evento risieda o meno all’interno di uno dei due conidi un altro evento, tradotta, essendo che ora stiamo trattando solo una sezionedei coni, dall’essere o meno all’interno di due triangoli.Ora in questa struttura discreta vogliamo anche tenere in conto una qualcheconfigurazione fisica, piu semplicemente uno stato, delle particelle in movimen-to, mentre passano di evento in evento, ossia tra un’interazione ed un’altra. Laminima interazione cui si puo assistere e quella tra due sole particelle, ed ancheinterazioni complesse seguono da interazioni semplici che intercorrono tra duesoli elementi: da questa assunzione segue la semplificazione per cui ci premequindi conoscere, per due particelle che entrano in rapporto, di ciascuna la suaconfigurazione prima e dopo questo, entrambe ben definite assumendo un princi-pio di conservazione per esse. In pratica allora, serve sostituire un certo numerodi eventi con degli stati, con l’obiettivo che ogni evento porti con se quattro stati,due che testimonino la configurazione delle due particelle prima dell’interazionee due dopo questo. A questo punto la nostra costruzione si presenta come unagriglia formata da due tipi di nodi, eventi e stati; sui primi abbiamo definitouna relazione d’ordine a partire dalla possibilita di due eventi di influenzarsitemporalmente, e graficamente la connessione non puo che passare anche daglistati: essi infatti sono legati agli eventi, rappresentando lo stato delle particellein interazione negli eventi stessi.Ovviamente, la visione globale del sistema e ottenibile esaminando tutti i pianiverticali paralleli.

Pur avendo ora presentato, seppur abbastanza informalmente, la struttura dellagriglia, non l’ abbiamo ancora vista sotto la prospettiva ne di rete di occorrenze(??) ne di rete di Petri ??.Per la struttura di rete di Petri, il lavoro da farsi e sostanzialmente semantico:interpretando i sottinsiemi di eventi e stati proprio come i due insiemi che unitidanno gli elementi di una rete di Petri, la relazione di flusso consiste nella rela-zione d’ordine introdotta.Per arrivare alla definizione di rete di occorrenze invece, osservando la definizio-ne bisogna garantire che il grafo associato sia aciclico e gli stati a grado massimodue. L’aciclicita e data dal fatto che la relazione di influenza con cui ordiniamola griglia non e simmetrica: principio del modello ristretto e che un evento puosubire influenza solo da altri eventi nel passato ed determinare influenza a suavolta per altri solo nel futuro, e non vale il viceversa (fatto intuitivo piu chetecnico). Per il grado invece, osserviamo che per costruzione gli stati cattura-no configurazioni di particelle quand’esse siano tra due soli interazioni-eventi, equindi il loro grado sara esattamente due.

Abbiamo quindi ottenuto una struttura formale propria della teoria della con-correnza per descrivere in termini discreti il percorso di particelle, che abbiamoassunto essere luce, o meglio fotoni, partendo da un ambito teorico totalmentediverso.In questa griglia spaziotempo, il concetto di cono definito in ?? e del tutto ana-logo a quello fisico sopra introdotto a partire dalle linee d’universo, ed una linead’universo ha un’esatta corrispondenza in una linea come inteso dalla definizio-

21

Page 24: Operatori di chiusura nelle reti di occorrenze

ne ?? che abbia la forma di una retta a pendenza qualsiasi, se la particella none deviata nel suo percorso, altrimenti di una generica linea che tiene conto delleinterazioni di questa con altre.La griglia ottenuta non conta pero la proprieta di K-densita, come illustratoda un esempio in figura; riprendendo da quanto detto in ?? cio significa che,considerando il percorso-vita di una singola particella come sottoprocesso delprocesso globale del sistema di particelle, percorso che si registra nella rete, eimpossibile che un osservatore possa conoscere compiutamente, in un precisoistante, lo stato, cioe la configurazione, globale, poiche si hanno sottoprocessicui stato non e univocamente definito.Notiamo che questo fatto discende dal formalismo del modello e di una suaproprieta grazie all’analogia percorso particella-sottoprocesso, senza necessitadi alcun concetto esterno proveniente dalla fisica.

Figura 2.6: La griglia spaziotempo non e K-densa

La relazione di dipendenza e la sua conseguente duale di concorrenza che insi-stono sulla relazione base di influenza dovrebbero essere irriflessiva e riflessivarispettivamente: un evento puo influenzare solo gli eventi futuri a se stesso esclu-so; nonostante cio nei casi studiati tutte e quattro le possibilita sono esplorate.

22

Page 25: Operatori di chiusura nelle reti di occorrenze

Con le opportune generalizzazioni ed accortezze (aggiunta dimensione, sistemariferimento ecc.), e allora sostanzialmente gia aperta la possibilta di interpreta-zione di quel che resta sotto il dominio dell’osservatore in termini di formalismoconcorrente, ed ha quindi senso leggere risultati trovati in termini non solo squi-sitamente teorici ma pure di interesse applicativo.Riferimento principe per questa parte e [?].

2.2.3 Sottostrutture in esame

Seguono ora le sottostrutture esaminate; gli elementi presi sono solo ed esclusi-vamente stati.

� singoletto: un singolo stato generico rappresenta una particolare condi-zione atomica del sistema, o da un punto di vista fisico, l’informazioneminima circa una particella/segnale tra un’interazione e la successiva conaltre

� segmento orizzontale infinito: questo segmento e interpretabile come laconfigurazione di un insieme arbitrario infinito di particelle, allineate nellospazio in un preciso istante

� segmento diagonale finito: fissato uno stato di partenza, siano in esamequesto, la seconda postcondizione dell’evento di cui e postcondizione, laseconda postcondizione dell’evento di cui quest’ultimo secondo stato ag-giunto e precondizione e cosı via, fino ad un ultimo stato; fisicamente puorappresentare un segnale che attraversi lo spazio senza deviare a causa diostacoli

� prima precondizione e prima postcondizione di un’unita: la coppia e unadelle possibili quattro coppie in linea in un’unita, le quali rappresentanoun elemento in studio prima e dopo un’interazione con altri

� coppia di precondizioni (o postcondizioni): posti indipendenti simboleg-gianti due configurazioni che stanno per influenzarsi vicendevolmente me-diante un determinato evento (oppure si sono appena toccate)

Data la regolarita insita nella struttura, per costruzione un generico stato e equi-valente ad un qualsiasi altro, e lo stesso vale per le transizioni. Cio e garantitoa partire dai seguenti fatti:

� per gli eventi il fatto e davvero lampante, essendocene solo uno nell’unitabase

� per posizioni in unita differenti ma omologhe, nella griglia, che e in-finita, basta spostare il focus da un’unita all’altra, per ottenere pienacorrispondenza

� un posto che e precondizione in un’unita e postcondizione nell’adiacentee viceversa

D’altra parte, uno stato non e equivalente ad un evento e viceversa: questo eovvio per com’e fatta un’unita; in particolare, scambiando posti e transizioni

23

Page 26: Operatori di chiusura nelle reti di occorrenze

si ottiene ancora una rete di occorrenze ma particolare, essendo che presentasostanzialmente dei conflitti, e puo quindi essere intesa come particolare rete diPetri (detta branching process net, un’evoluzione del modello delle reti di occor-renze che permette diramazioni, per modellare situazioni di conflitto).

Sebbene possa essere possibile riferirsi senza distinzione a stati e transizioninella rete, chiamandoli semplicemente elementi, ed in effetti cio ha senso forma-lizzando la rete come poset (vedi ??), e possibile derivare formalmente nuove retidalla griglia, per esempio eliminando le transizioni e collegando opportunamentegli stati (griglia di stati locali, vedi cap. ??).

2.3 I sottinsiemi chiusi

Lo studio degli operatori di chiusura su reti di occorrenze e la suddivisione trasottinsiemi chiusi e non-chiusi puo risultare significativa sia da un punto di vi-sta esclusivamente concettuale-algebrico, sia dalla prospettiva della teoria dellaconcorrenza ed infine seguendo una chiave di lettura fisica.

Per il primo punto si hanno vari casi, e per citarne qualcuno si ha che sottinsiemichiusi di un poset formano un reticolo completo rispetto all’inclusione; se poila relazione base e anche irriflessiva, si ha un reticolo detto ortocomplementato([?]).

24

Page 27: Operatori di chiusura nelle reti di occorrenze

Figura 2.7: Un insieme parzialmente ordinato ed il reticolo completo dei chiusisu li riflessiva

Riguardo al secondo aspetto, come prima cosa introduciamo il concetto di in-sieme causalmente chiuso all’interno di una rete di occorrenze (causally closedsubset, riferimento e’ ancora [?]). Per una rete di occorrenze N = (B,E, F ), unelemento C ⊆ B ∪ E lo e se:

� ∀e ∈ E, e• ⊆ C ⇒ e ∈ C

� ∀e ∈ E, •e ⊆ C ⇒ e ∈ C

� ∀e ∈ E, e ∈ C ⇒ e• ∪ •e ⊆ C

� ∀c, c′ ∈ C, clic′ ⇒ [c, c′] ⊆ C

dove [c, c] = {p ∈ B ∪ E |c v p v c′} e v la relazione di chiusura transitiva eriflessiva (??).Gli insiemi chiusi definiti in ?? sono anche insiemi causalmente chiusi, ma ilviceversa vale solo se il poset in esame e K-denso ([?]).

Si suggerisce ora l’interpretazione per processi di questo tipo di insiemi.Avendo in mente il token game definito in ??, diciamo che esso e certamenteapplicabile anche ad una rete di occorrenze, poiche essa e pur sempre una rete

25

Page 28: Operatori di chiusura nelle reti di occorrenze

di Petri, basta fissare un assegnamento, vedere quali eventi possono scattare edaggiornare la configurazione, senza nessuna differenza; solitamente pero essendole reti di occorrenze considerate come viste di un processo, il gioco su questenon e svolto.Viene naturale, dato uno stato globale, evolvere la rete esaminando quali eventisiano abilitati e possano quindi scoccare, e difatti la definizione del gioco dataformalizza questo tipo di evoluzione, che manda la configurazione di una re-te al tempo t nella successiva del tempo t + 1. D’ altro canto, nulla vieta difare il contrario, ossia di chiedersi quali eventi scoccati abbiano determinatola configurazione corrente e quale sia stata percio la configurazione all’istanteprecedente t− 1, evoluta nella corrente in funzione dello scoccare di tali eventi;senza entrare in dettaglio quest’operazione puo essere utile quando si voglia fareipotesi circa il passato del sistema concorrente avendo in mano solo il suo statopresente.Mostriamo ora come costruire induttivamente un insieme causalmente chiuso:

� all’interno della rete si isola un taglio formato da soli stati e si pone ognunodi questi vero

� si esegue la regola di scatto sia in avanti sia indietro, aggiungendo all’in-sieme gli eventi risultanti

� si esegue nuovamente la regola di scatto, aggiungendo cosı nuovi stati edeventi

� si itera fintantoche nuovi elementi possano essere aggiunti

Il fatto che la costruzione termini quando nessun nuovo elemento puo essereaggiunto e motivazione del nome stesso, insiemi causalmente chiusi, e ne sug-gerisce l’interpretazione come sottoprocessi nonsequenziali, causalmente chiusigiacche sono costruiti in modo univoco a partire da un taglio di posti.Ulteriori approfondimenti in [?].

Per l’interpretazione fisica, si pensi in prima cosa alla rete come l’ormai consuetomodello del moto di particelle in una porzione dello spazio bidimensionale, neimodi illustrati in ??.Tutti gli stati associati ad una particella si trovano allineati, ed in generale ilpercorso di una prendendo una delle infinite linee possibili, e poniamo che lamappa che a questo proposito mandi stati locali in particelle sia ignota. Se orasi prende un sottinsieme chiuso di posti, supponendo di poter osservare le ri-spettive particelle associate, portando la costruzione su tale sottinsieme si arrivaad una sottorete associata al medesimo insieme di particelle in qualsiasi mappacompatibile con l’osservazione ([?]).

2.4 Relazioni

Le singole relazioni in gioco sono le seguenti:

� li riflessiva

� li antiriflessiva

26

Page 29: Operatori di chiusura nelle reti di occorrenze

� co riflessiva

� co antiriflessiva

Si cerca di argomentare, pur se senza adoperare formalismi, le asserzioni sullechiusure, ed osserviamo che talvolta gli argomenti adoperati si ripetono.

2.4.1 li riflessiva

Singoletto Lo stato singoletto, per li riflessiva, non e un chiuso; costruendoneil polare, si trova che e formato dall’elemento stesso cosı come dai coni dei dueeventi cui questo e condizione.Se ora per la chiusura si costruisce il polare di ogni elemento, ci si accorge che,oltre ovviamente a trovare l’elemento iniziale per simmetria, si trovano semprei due eventi, che rappresentano in qualche modo il link dello stato al propriofuturo ed al proprio passato.Un qualsiasi altro elemento generico del cono e da scartare, e contemporaneoall’evento/transizione che gli e affianco; per l’anticono invece se prendiamo unostato od evento su di un orizzontale che non sia quella dello stato di partenza,esso sara in contemporaneita, e quindi indipendenza, con parte del polare; seinvece prendiamo uno stato in contemporaneita a quello di partenza, esso e inco con uno (se e uno dei due stati immediatamente vicini) od entrambi gli eventiai vertici dei sottoconi.

Figura 2.8: li riflessiva su singoletto: la chiusura e costituita dallo stesso e daidue eventi cui e associato, suoi link (rosa); si evidenzia anche il cono (verde)

27

Page 30: Operatori di chiusura nelle reti di occorrenze

Segmento orizzontale infinito Se consideriamo un segmento orizzontale,il suo polare sara l’insieme vuoto, non e proprio possibile trovare uno o piuelementi in linea con l’intero segmento. Ne segue quindi che la chiusura nonpuo essere il segmento stesso essendo che il polare dell’insieme vuoto e l’insiemevuoto stesso.

Segmento obliquo finito Gli stati diagonali non sono chiusi, cerchiamo divedere brevemente perche.Se consideriamo gli stati della diagonale, essi sono in li l’un con l’altro e conse stessi (riflessivita), ed agevolmente il cono e completabile come in figura.Dovendo costruire la chisura, essa avra gli elementi di partenza (simmetria),piu tutti gli eventi in linea con la diagonale a partire da quello che si trovaprima del primo elmento di questa fino a quello che si trova dopo l’ultimo.Un qualsiasi altro elemento del cono e da scartare (e indipendente da almenoun altro elemento dello stesso); anche nell’anticono nulla si puo prendere, unqualsiasi elemento e in co con l’elemento o gli elementi della sua stessa orizzontalefacenti parte del cono.

Figura 2.9: li riflessiva su diagonale: la chiusura e costituita dalla diagonale edai suoi eventi (rosa)

Precondizione 1 (2) e postcondizione 1 (2) in un’unita Costruendo ilcono li, si arriva a determinare la chiusura come la coppia di partenza ed illoro evento condiviso, con un argomentazione analoga a quella che viene sottopresentata per questa stessa sottostruttura ma sotto li irriflessiva (??).

28

Page 31: Operatori di chiusura nelle reti di occorrenze

Precondizioni (postcondizioni) in un’unita Si prendano ora due precon-dizioni (postcondizioni) di un evento.Ragionando sulla figura presentata, semplice e la costruzione del polare. Lachiusura contiene i due elementi di partenza ed i due eventi vertici dei due coni(per i quali, intuitivamente, ogni elemento dei coni rispettivamente deve “pas-sare” per arrivare alla coppia).Un qualsiasi altro elemento dei coni non e nel chiusura perche fuori dal conodello stato/evento che gli e affianco (in contemporaneita).Per ogni elemento esterno invece, e sempre possibile trovare un elemento dei co-ni che non gli sia allineato eccezion fatta che per i due eventi nel vicinato dellacoppia e gli stati seconda e prima postcondizione a questi, come evidenziato infigura; notiamo che i due eventi vicinato sono gli unici esterni ad essere in lineacon entrambi gli eventi vertice dei coni.Non siamo quindi in presenza di un chiuso.

Figura 2.10: Coppia orizzontale per li riflessiva: studiando la coppia concorrenteevidenziata (nero) si ottiene un chiusura contenente questi e gli altri quattroelementi evidenziati (rosa)

2.4.2 li antiriflessiva

Singoletto Prendiamo ancora uno stato singoletto; sono facilmente costruibilii due coni contenenti elementi in linea con esso, e per l’antiriflessivita esso none in nessuno dei due.Ripetendo la costruzione per ogni elemento trovato, si otterra analogamentetutta una serie di coppie di coni, sovrapposte solo parzialmente alla coppia ori-ginale cosı come tra loro.

29

Page 32: Operatori di chiusura nelle reti di occorrenze

Per l’antiriflessivita, qualsiasi elemento su cui facciamo questa seconda costru-zione non puo essere comune in tutti i coni.Inoltre, nessun elemento fuori dagli anticoni puo essere nel chiusura: l’argomen-to e lo stesso trovato per il singoletto su li riflessiva in ??.Quindi in simmetria lo stato di partenza e un chiuso.

Segmento orizzontale infinito Ora riconsideriamo con li antiriflessiva unsegmento orizzontale. E davvero evidente il suo non essere un chiuso: applicandoad esso l’operatore si trova l’insieme vuoto, proprio come per li riflessiva.

Segmento obliquo finito Costruiamo anzitutto il polare come in figura; daesso sono esclusi per antiriflessivita gli stati della diagonale stessa.L’insieme chiusura ha certamente come sottinsieme gli stati diagonali (simme-tria). Per l’irriflessivita pero, non puo contenere un qualsiasi elemento nel pola-re; un elemento dell’antipolare (complemento del polare, il resto della rete), seconsideriamo un segmento all’altezza di uno dei due coni a piramide, e in co congli elementi contemporanei ad esso all’interno di questi, mentre se consideriamolo spazio di elementi tra i due vertici, gli eventi non sono in linea con almenoun evento che pure e parte del polare (precisamente quello in contemporanea adesso stesso), mentre un qualsiasi posto, o e in co con un evento della diagonaleancora, oppure con un vertice delle piramidi.Conclusione e allora che ci troviamo difronte ad un chiuso.

Figura 2.11: Segmento obliquo per li antiriflessiva: nella figura sono evidenziate(verdi) le componenti del polare; ci troviamo di fronte ad un chiuso

30

Page 33: Operatori di chiusura nelle reti di occorrenze

Precondizione 1 (2) e postcondizione 1 (2) in un’unita Prendiamo orala prima precondizione e la prima postcondizione di una transizione qualsiasi.Costruendo i due coni li che uniti danno il polare della coppia, essi escludonoi due elementi per l’antiriflessivita ma hanno in comune l’evento associato aquesti stessi.Per la simmetria, nell’insieme degli elementi in linea antiriflessiva con uno qual-siasi di quelli trovati nel cono, si hanno i due elementi di partenza; ma perl’antiriflessivita, un generico elemento di quelli trovati con la prima applicazio-ne e da scartarsi, giacche non occorre nella coppia di coni costruita partendo daesso stesso.Per escludere i restanti (cioe gli elementi in anticono) si puo adoperare l’argo-mento classico: in ogni orizzontale si trovano elementi non allineati con il cono.Si deduce quindi che siamo in presenza di un chiuso.

Precondizioni (postcondizioni) in un’unita Per una coppia di stati oriz-zontale, costruiti i due coni, ricordiamo che un qualsiasi elemento di questi e dascartarsi poiche non in linea con se stesso (irriflessivita).Costituiscono la chiusura i due elementi di partenza piu tutti e soli gli elementiesterni in linea con entrambi i coni, e non si ha quindi un chiuso.

Figura 2.12: Coppia orizzontale su li irriflessiva: evidenziati i coni e gli elementiche formano la chiusura assieme ai due di partenza (rosa)

2.4.3 co riflessiva

Singoletto Il cono e presto costruito come in figura ora il prossimo passo earrivare alla chiusura.

31

Page 34: Operatori di chiusura nelle reti di occorrenze

Per la simmetria, possiamo gia aggiungere lo stato da cui siamo partiti, e percheesso sia un chiuso dev’essere che nessun altro elemento si puo aggiungere.Ora se aggiungiamo un elemento non presente nell’insieme polare co appenacostruito, esso e certamente in linea con uno degli elementi aggiunti, tra cuisicuramente quello di partenza, e quindi e da scartare. D’altro canto, aggiun-gendo un qualsiasi elemento gia nell’insieme polare co, risultera che esso sarain li con un sottinsieme degli elementi di questo stesso insieme, il che fa sı chedebba essere altrettanto scartato.Resta allora solamente lo stato di partenza, chiuso rispetto all’operatore.

Figura 2.13: Studio di co riflessiva su di uno stato singoletto: e evidenziato lostato in esame, l’anticono (rosso) due elementi di questo e del cono (arancio everde chiaro rispettivamente)

Segmento orizzontale infinito Fissiamo ora la nostra la nostra attenzionesu di un segmento orizzontale di stati, un istante.Calcolando la co del segmento, un qualsiasi elemento e in relazione con se stessoper la riflessivita, e con qualsiasi altro del segmento stesso, cioe con la suacontemporaneita.Continuando nell’esame, sia nel passato sia nel futuro, ci accorgiamo che nonpossiamo aggiungere ne altri stati ne altri eventi: infatti uno qualsiasi di essisara in li con due del segmento, pur essendo in co con gli infiniti restanti.Completata ora la costruzione del primo insieme, il polare, applichiamo unaseconda volta per determinare se effettivamente il segmento e orizzontale e unchiuso: effettivamente sı, poiche banalmente ci ritroviamo nella stessa condizionedel punto precedente.

32

Page 35: Operatori di chiusura nelle reti di occorrenze

Figura 2.14: Segmento orizzontale: e un chiuso secondo co riflessiva

Segmento obliquo finito Prendiamo ora una diagonale di stati e visualiz-ziamone ora i due anti-coni, come in figura: gli elementi all’interno di essi sonochiaramente non in linea con la diagonale.Vale la pena di osservare, anche se e chiaro, che niente altro e in concorrenzacon la diagonale; la diagonale stessa per esempio non lo e perche un qualsiasisuo elemento e in co con se stesso ma in linea con tutti i restanti diagonali.Bisogna quindi ora vedere quali siano gli elementi in co ad entrambi questi anti-coni.Da un qualsiasi elemento della diagonale, non v’e cammino verso qualsiasi altroin uno dei due coni, e viceversa: aggiungiamo allora la diagonale tutta all’insie-me.Ma essa non e un chiuso: difatti la stessa indicazione di raggiungibilita ora datavale anche per gli stati che non sono della diagonale ma sono precondizioni opostcondizioni di eventi tra due stati qualsiasi della diagonale.

33

Page 36: Operatori di chiusura nelle reti di occorrenze

Figura 2.15: Segmento obliquo per co riflessiva: in rosso gli anticoni delladiagonale.

Precondizione 1 (2) e postcondizione 1 (2) in un’unita Se in una sin-gola unita scegliamo invece una precondizione ed una postcondizione in linea edi un medesimo lato, possiamo costruire il polare come in figura.Per la costruzione dell’insieme chiusura, esso avra per simmetria sicuramente lacoppia iniziale, cosı come il resto dell’unita di cui fanno parte (in rosa nell’illu-strazione), chiaramente in concorrenza con entrambi i sottinsiemi dell’insiemeprecedente.D’altra parte pero, nient’altro puo essere aggiunto: si vede chiaramente infattiche aggiungendo un qualsiasi altro elemento, esso risulta in linea con parte delpolare.Non si ottiene quindi un chiuso ma si e riportati all’unita di partenza.

34

Page 37: Operatori di chiusura nelle reti di occorrenze

Figura 2.16: Si evidenzia l’anticono (rosso) della coppia di partenza (stati innero); la chiusura e costituita da questa e dal resto dell’unita (rosa)

Precondizioni (postcondizioni) in un’unita Si prendano ora due stati incontemporaneita, ma facenti parte della stessa unita.L’anticono co e unico, e per la riflessivita ne fa parte la coppia in studio; l’ele-mento e poi un chiuso, dato che nessun elemento dell’anticono puo dirsi slegatoda qualsiasi altro nello stesso, cosı come d’altra parte qualsiasi altro nei coni(che sono in linea con la coppia che e gia nelil polare di se stessa come appenanotato).

35

Page 38: Operatori di chiusura nelle reti di occorrenze

Figura 2.17: La coppia di partenza e chiusa secondo la definizione data su coriflessiva

2.4.4 co irriflessiva

Infine per questo caso, ci limitiamo a rimandare direttamente ai risultati dellatabella in ??: infatti gli argomenti sono identici a quelli gia presentati nei casiprecedenti.

2.5 Prospetto riassuntivo dei risultati ottenuti

Ecco un semplice prospetto indicante i casi discussi; per un sottinsieme, sottoogni tipo di relazione, e indicato se l’elemento e un chiuso o meno.

Sottostruttura li rifl. li antirifl. co rifl. co antirifl.Singoletto no sı sı sıSegmento orizzontale infinito no no sı noSegmento obliquo finito no sı no noPrecondizione 1 (2) e postcondizione 1 (2) in un’unita no sı no noPrecondizioni (postcondizioni) in un’unita no no sı no

36

Page 39: Operatori di chiusura nelle reti di occorrenze

Capitolo 3

Algoritmi proposti estrumenti software disupporto

Discutiamo ora del disegno di alcuni algoritmi cui scopo e riprodurre un ope-ratore di chiusura; essi possono essere quindi utilizzati per investigare compu-tazionalmente la proprieta vista. Ne presentiamo anche una breve analisi dicomplessita.Illustriamo anche il linguaggio programmativo scelto e l’ambiente che lo sup-porta, non trascurando una giustificazione della scelta fatta.

3.1 Approccio computazionale

3.1.1 Rappresentare un poset

E necessario studiare come rappresentare l’insieme ordinato d’input, che struttu-ra dati adoperare. Consideriamo ora la rappresentazione di (P,R), un genericoordine parziale, con P insieme finito.Preliminarmente, definiamo l’insieme di copertura P ′ ⊆ P × P nel seguentemodo:

P ′ = {(p, q) | ((p ≤ q) ∧ (p ≤ r ≤ q))⇒ (p = r)}

La relazione su cui sussiste tale insieme, la relazione di copertura l, permetteinfatti una schematizzazione formale semplice ma realmente informativa del-l’insieme ordinato. Essa non fornisce tutte le coppie di elementi che sono inrelazione, ma l’insieme di coppie che sono, potremmo dire, in relazione direttaed esplicita, senza passare per la transitivita; quando a partire da questo insiemesi risponde circa l’occorrere della relazione tra due elementi generici si sfruttala chiusura transitiva.

In letteratura non si ha riferimento ad una struttura dati precisa per la rap-presentazione di insiemi parzialmente ordinati generici, si ha qualche esempioin piu per quanto concerne particolari strutture ordinate come i reticoli e gli

37

Page 40: Operatori di chiusura nelle reti di occorrenze

alberi, ma questo perche in realta il problema non si pone.Il diagramma di Hasse e l’approccio principe per la rappresentazione grafica diun insieme ordinato (P,R), e consiste nella sua riduzione transitiva come ci sipua aspettare; il risultato finale e un grafo diretto ed aciclico G = (V,E) dove:

� l’insieme dei vertici coincide con l’insieme supporto: V = P

� l’insieme degli archi rispecchia l’ordine definito: (u, v) ∈ E ⇔ (u, v) ∈ P ′

Dalla descrizione segue tra l’altro che:

� l’aciclicita e dovuta al fatto che sono assenti archi a cappio indipendente-mente dal fatto che l’ordine sia riflessivo od irriflessivo, cosı come all’esserela relazione antisimmetrica

� un cammino k =< vi1, ..., vjn > implica, grazie alla transitivita, vi1 ≤ vjn

Il grafo cosı costruito e inoltre minimale nel senso che e il grafo, funzione del-l’insieme ordinato, che rende conto dell’ordine stesso nei modi descritti a minornumero possibile di archi.

Nulla da dire circa la rappresentazione di reticoli, che per gli scopi del lavorosono visti come particolari insiemi ordinati.

3.1.2 Algoritmi

Gli operatori, come gia anticipato, sono algoritmi, che manipolano gli insiemiparzialmente ordinati strutturati, per quanto appena osservato, come grafi.E di seguito presentata la formulazione degli algoritmi e come essi concorronoa determinare l’operatore di chiusura.Per primo passo ci interessa un algoritmo che, dato un sottinsieme Q ⊆ P ,restituisca l’insieme Cq, ∀q ∈ Q illustrato in ??, cosı come Dq, gli insiemi cheabbiamo chiamato polari di Q.Il calcolo di Cq e il primo passo computazionale per il calcolo dei chiusi rispettoall’operatore di chiusura (??); in prima istanza quindi, e necessario:

� per ogni elemento richiesto dell’insieme resituire il corrispondente insiemeli, o co, singolarmente

� restituire l’insieme comune a tutti gli elementi richiesti

Le operazioni algoritmiche necessarie possono essere svolte in molti modi diver-si, e la possibilita anche di spaziare tra diversi algoritmi per la risoluzione di unmedesimo problema e determinata dal fatto che si lavora su grafi, una strutturaalgebrica ma anche dati che gode di molta importanza.L’algoritmo proposto assume, come anticipato, di disporre di sottoalgoritmi perrisolvere problemi classici su grafo, e seppur, superfluo dirlo quasi, e implemen-tabile arbitrariamente, il suo disegno, molto semplice, si adatta perfettamentead un ambiente di calcolo simbolico.

Il codice Algoritmo 1 risolve il problema del primo punto.Ritorna, dato in input il grafo G = (V,E), concettualmente di Hasse ma sostan-zialmente un semplice grafo diretto aciclico, ed un sottinsieme dei suoi vertici

38

Page 41: Operatori di chiusura nelle reti di occorrenze

Q, per ciascuno degli elementi di Q tutti e soli gli elementi di V in relazione diindipendenza-concorrenza (linearita) con esso, ossia non raggiungibili (raggiun-gibili) da questo e viceversa.Per comodita, l’algoritmo ha a parametro anche l’indicazione circa la riflessivitadella relazione.

Algoritmo 1 Parametri sono il grafo con un sottinsieme dei suoi vertici, l’in-dicazione circa la riflessivita o meno della relazione base con cui e ordinatol’insieme. L’algoritmo ritorna, per ogni elemento del sottinsieme, la lista deglielementi in relazione li con esso.

1: procedure PrimoAlgoritmo(G,Q, refl)2: v ← Length[V [G]]3: q ← Length[Q]4: create array of lists A[1...q]5: if refl=True then6: for i = 1 to q do7: for j = 1 to v do8: d1← compute distance between G[V[j]] and Q[i] in G9: d2← compute distance between Q[i] and G[V[j]] in G

10: if Q[i] 6= G[V [j]] and (d1 6=∞ or d2 6=∞) then11: add V[j] to A[i]12: end if13: end for14: end for15: else16: for i = 1 to q do17: for j = 1 to v do18: d1← compute distance between G[V[j]] and Q[i] in G19: d2← compute distance between Q[i] and G[V[j]] in G20: if d1 6=∞ or d2 6=∞ then21: add V[j] to A[i]22: end if23: end for24: end for25: end if26: return A27: end procedure

Le cose sono molto semplici: nel grafo diretto aciclico che rappresenta l’in-sieme ordinato in esame, due vertici qualsiasi sono in relazione di dipendenzase e solo se non c’e cammino che li colleghi, vicendevolmente. Essendo che ilgrafo non e pesato, il peso di un cammino e semplicemente il numero di verticitoccati, tipicamente escludendo il nodo di partenza ma contando quello di arri-vo per avere il vicinato legato da cammini singoli archi a distanza unitaria. Setale peso e infinito, allora un nodo non e raggiungibile partendo da un altro.Se si sta investigando un certo elemento del sottinsieme, gli elementi ad esso indipendenza sono aggiunti alla lista di quest’ultimo nella struttura predisposta,che e infine ritornata.

39

Page 42: Operatori di chiusura nelle reti di occorrenze

Osserviamo che costruito un algoritmo per risolvere su li, la modifica da farsi ebanale, per un dato q ∈ Q in esame, per calcolare il suo insieme co; altrimenti sipuo utilizzare lo stesso algoritmo dal fatto che l’insieme co sara il complemen-to, rispetto all’insieme tutto P , dell’insieme li trovato. Per sola completezza, epresentato anche questa scelta nel seguente Algoritmo 2.

Algoritmo 2 Parametri sono il grafo con un sottinsieme dei suoi vertici, l’in-dicazione circa la riflessivita o meno della relazione base con cui e ordinatol’insieme. L’algoritmo ritorna, per ogni elemento del sottinsieme, la lista deglielementi in relazione co con esso.

1: procedure PrimoAlgoritmoBis(G,Q, refl)2: A← PrimoAlgoritmo(G,Q, refl)3: return complement set of A with respect to V[G]4: end procedure

Il prossimo passo da fare e passare a lavorare in modo esclusivo sui sottinsie-mi del supporto, e costruire una mappa C come definita nell’assiomatizzazionedi operatori di chiusura in ??.Per prima cosa e sufficiente semplicemente costruire l’insieme intersezione dellafamiglia di insiemi ritornata da PrimoAlgoritmo, il che e triviale.Chiamiamo questo algoritmo PrimoAlgoritmoIntersect (avra anch’esso un dualePrimoAlgoritmoBisIntersect per lo studio di co, omesso); esso e Algoritmo 3

Algoritmo 3 Parametri sono il grafo con un sottinsieme dei suoi vertici, l’in-dicazione circa la riflessivita o meno della relazione base con cui e ordinatol’insieme. L’algoritmo ritorna i nodi concorrenti comuni all’insieme Q dato.

1: procedure PrimoAlgoritmoIntersect(G,Q, refl)2: A← PrimoAlgoritmo(G,Q,refl)3: B ← intersection set of the sets in A4: return B5: end procedure

Ora, dato un sottinsieme Q ⊆ P per (P,R) ordine, applicare C(Q), ossia duevolte PrimoAlgoritmoIntersect, restituisce un elemento dell’insieme delle parti,e per C(Q) = Q, Q per definizione e elemento chiuso.

Trovare tutti i chiusi di un certo insieme e ovviamente un problema di com-plessita temporale esponenziale, dato che la cardinalita dell’insieme delle partie 2n.

3.1.3 Complessita dell’algoritmo principale

Vale la pena di analizzare, seppur brevemente ed informalmente, la complessitatemporale e spaziale dell’algoritmo 1.

Tempo:

40

Page 43: Operatori di chiusura nelle reti di occorrenze

� il doppio ciclo for alla linea 6 viene eseguito esattamente qv volte, dovev = |V | e q = |Q| per un grafo di input G = (V,E) ed un sottinsieme divertici Q

� il tempo necessario a conoscere la distanza tra due nodi e da porre costantese una matrice delle distanze (o strutture equivalenti) sono gia memoriz-zate; il calcolo per averla richiede tempo O(v + |E|) se si usa BFS adesempio

� il doppio ciclo for alla linea 16 e alternativo all’altro e se ne consideraquindi uno solo

Il caso peggiore e percio rappresentato da q = v, cioe Q = V , quadratico, el’overhead per il calcolo delle distanze sarebbe massimo se |E| = v(v − 1)/2,ossia un grafo completo, ma questo non e proprio il caso perche si trattanodiagrammi di Hasse, che tipicamente hanno un numero di archi ridotto: unodei fattori determinanti in questo senso e l’antisimmetria cosı come l’assenza dicappi indipendentemente dalla riflessivita.

Spazio:

� l’array di liste creato alla linea 4 e di lunghezza q; nel caso peggiore ognielemento indagato e in relazione con ogni altro elemento del supporto(compreso se stesso se l’opzione e la riflessivita), determinando liste tuttedi lunghezza v e risultando in una struttura quadratica per q = v

� il grafo con le distanze tra i suoi vertici puo essere memorizzato in unamatrice, quadratica in v; dato pero che i diagrammi di Hasse sono tal-volta matrici sparse potrebbe, se strettamente necessario, essere indicatol’utilizzo di apposite strutture dati (es. dizionario di chiavi, lista di listeo coodinate ecc)

Si conclude allora che l’algoritmo presentato e di natura quadratica.

3.2 Strumenti software di supporto

Nell’ultima decade, il calcolo simbolico ha guadagnato grande rilevanza in molticampi, sia teorici, come la manipolazione simbolica di formule in un contesto diautomated theorem proving, sia strettamente applicativi, ad esempio per la dif-ferenziazione e l’integrazione, distinguendosi anche per le possibilita in terminidi software dedicato, anche specifico, presenti.Unitamente alla possibilita di calcolare la risposta secondo tali scenari, sorge lanecessita, spesse volte, di visualizzarla graficamente, terminata la computazio-ne, se possibile avendo il massimo controllo circa la forma di questo output.Un testo introduttivo riguardo sia il primo sia il secondo aspetto e [?].

Un moderno computer algebra system (CAS) e una piattaforma software general-purpose (nonostante il nome) in grado di effettuare calcolo simbolico e possibil-mente rappresentare graficamente i risultati ottenuti.Esistono varie alternative a riguardo, le piu famose sono certamente WolframMathematica, Matlab e Maple, presenti per molti sistemi operativi e con l’op-portunita di licenze studente agevolate.

41

Page 44: Operatori di chiusura nelle reti di occorrenze

Proprio l’utilizzo della prima e stato centrale per quanto riguarda la parte percosı dire pratica del lavoro illustrata, ma anche per la gestione di molta dellagrafica inserita nel documento per esempio.La scelta di un CAS durante lo stage per lo sviluppo del software e motivata,tra le altre, dalle seguenti:

� possibilita di sfruttare un’ampia libreria ready-to-use: un alto numerodi algoritmi centrali nel dominio di lavoro (es. algoritmi su grafi) vieneofferto, e quindi possibile concentrarsi esclusivamente sul codice da scrivereeffettivamente zero per il problema

� ambiente di lavoro immediato da utilizzare: il codice puo essere como-damente scritto all’interno di una finestra di lavoro, interpretato e su-bito eseguito senza l’utilizzo di programmi esterni, mediante una GUIfunzionale

� opportunita di richiamare codice Mathematica da programmi esterni inesecuzione e viceversa: l’ambiente non soffre di “balcanizzazione” ed esempre possibile, in caso non si voglia portare codice esistente per lapiattaforma in altri linguaggi, richiamare dinamicamente i contenuti

Si incontrano molti testi dedicati allo sviluppo su Wolfram Mathematica; untesto adoperabile come quick reference ma sufficientemente ricco per avere unapanoramica delle funzionalita e [?].

42

Page 45: Operatori di chiusura nelle reti di occorrenze

Capitolo 4

Conclusioni

Questo lavoro e consistito in una parte di studio teorico cosı come nello sviluppoapplicativo di algoritmi.

Dopo avere introdotto e definito un operatore di chiusura per insiemi parzial-mente ordinati, grazie al fatto che una rete di occorrenze e formalizzabile anchenei termini di queste strutture, si e presentata l’ analisi dell’operatore su di unaparticolare rete, la griglia spaziotempo di Petri.Tale analisi e stata posta nella seguente forma: individuare particolari sotto-strutture di stati all’interno della rete, ed argomentare il loro essere o menoelementi chiusi.Inoltre, sono stati indicati dei motivi circa l’interesse che si puo avere sia nell’in-dividuare particolari elementi rispetto all’operatore su di una struttura, comeappunto gli elementi chiusi, sia nel prendere in esame proprio la griglia di Petriin quanto modello di un sistema fisico relativistico.

Gli algoritmi sviluppati hanno come obiettivo quello della costruzione esplicitadell’operatore descritto: essi possono essere utilizzati per individuare automati-camente i sottinsiemi chiusi di un insieme parzialmente ordinato finito.Accompagnano gli algoritmi una breve analisi di complessita degli stessi, cosıcome qualche fatto sulla convenienza implementativa di un ambiente di calcolosimbolico come quello adottato, nella fattispecie una piattaforma di tipo com-puter algebra system come Wolfram Mathematica.1

Molteplici possono essere gli ulteriori approfondimenti e sviluppi, i quali posso-no nascere sia dall’abbracciare nell’analisi nuove sottostrutture, sia dall’adottarecome struttura di studio reti derivate dalla rete spaziotempo, sia infine svilup-pando nuovi algoritmi e strutture dati per i problemi incontrati.

Anzitutto vale la pena di notare che il lavoro svolto e partito dall’analisi disottostrutture di stati della rete, non di eventi: se pure nella costruzione degliinsiemi polare e chiusura di un dato sottinsieme si includono anche eventi, lasottostruttura di partenza da definire come elemento chiuso o non-chiuso e statasempre un insieme di soli stati. Quindi si potrebbe partire col ripetere le stesse

1Il software sviluppato e depositato presso il laboratorio MCD-MC3.

43

Page 46: Operatori di chiusura nelle reti di occorrenze

costruzioni sulla stessa struttura, ma dualmente (considerare un singolo evento,un segmento infinito di eventi orizzontali ecc). Ci si aspetta che nel genericocaso le cose vadano in modo abbastanza analogo, ma non si puo costruire nessu-na equivalenza a priori dato che, come illustrato, non si possono far coinciderestati ed eventi.Citando altre sottostrutture, sia di stati sia di eventi, da considerare, tra le sva-riate possibilita che sembrano interessanti si hanno non un segmento diagonalefinito ma infinito, dei segmenti zig-zag (formati intuitivamente concatenandosegmenti diagonali opposti), coppie o piu generalmente n-uple di elementi arbi-trariamente distanti nello spazio della struttura.

Volendo invece costruire una nuova struttura a partire dalla griglia, una for-malmente derivabile e quella che chiamiamo griglia di stati locali : questa grigliapuo benissimo essere costruita ancora induttivamente; cambia ovviamente l’u-nita base, costituita eliminando l’evento e collegando in flusso direttamente glistati, in modo opportuno, ossia in modo che sia preservato l’ordine e la strutturaordinata data dal sottinsieme degli stati della griglia originaria sia isomorfa allanuova struttura.

Figura 4.1: L’unita della griglia di stati locali

D’altro canto e ragionevole lo sviluppo di ulteriori algoritmi per insiemi parzial-mente ordinati, ed in tal senso oltre alla risoluzione di problemi classici nellateoria degli ordini ([?]), altri computazionalmente interessanti incontrati nel la-voro possono essere trovare le linee ed i tagli di una rete di occorrenze cosı comeil verificarne la N o K densita, oppure costruire un insieme causalmente chiuso,operazione per la quale un approccio iterativo e gia definito nella teoria ([?]).A causa del fatto che, a priori, queste computazioni richiedono di esaminare lospazio esponenziale di tutti i possibili sottinsiemi, un approccio ingenuo dev’es-sere necessariamente sostituito da altri a livello algoritmico (es. programmazionedinamica) oppure partendo da risultati teorici (che per prima cosa permettanodi ridurre lo spazio).Infine, la griglia di Petri e infinita, e quindi un’idea potrebbe anche essere proget-tare una struttura dati infinita per rappresentarla alfine d’aprire una possibilitadi studio effettivamente realizzabile al calcolatore.

44

Page 47: Operatori di chiusura nelle reti di occorrenze

Bibliografia

[1] B.A. Davey H.A. Priestley. Introduction to Lattices and Order. CambridgeUniversity Press, second edition, 2002.

[2] J. L. Peterson. Petri nets. ACM Comput. Surv., 9(3), 1977.

[3] W. Reisig G. Rozenberg. Lectures on petri nets I: Basic models. In PetriNets, volume 1491 of Lecture Notes in Computer Science. Springer, 1998.

[4] L. Bernardinello L. Pomello S. Rombola. Closure operators and latti-ces derived from concurrency in posets and occurrence nets. FundamentaInformaticae, 2009.

[5] L. Bernardinello C. Ferigato L. Pomello S. Rombola. Closure operatorsassociated to partially ordered sets. In Workshop on Non-Classical Modelsfor Automata and Applications - NCMA 2009. Austrian Computer Society,2009.

[6] C. A. Petri. Nets, time and space. Theor. Comput. Sci., 153(1&2), 1996.

[7] L. Lamport. The mutual exclusion problem: part I - a theory of interprocesscommunication. J. ACM, 33(2):313–326, 1986.

[8] G. Birkhoff. Lattice Theory. American Mathematical Society, third edition,1979.

[9] E. L. Fiume. An introduction to scientific, symbolic and graphiccomputation. A K Peters, Ltd., first edition, 1995.

[10] S. Mangano. Mathematica Cookbook. O’Reilly, first edition, 2010.

45