Vai al contenuto| Home page|

   Ti trovi in: HOME »Programmi, progetti e risultati »I progetti »PRIN - Programmi di ricerca di Rilevante Interesse Nazionale»Programma di ricerca»Unità di ricerca
INIZIO_TESTO_DA_INDICIZZARE

UNITA' DI RICERCA

italiano - english
Bibliografia
[B04] G. Boudol "A generic membrane model", LNCS 3267, 2004, 208-222.

[BBDS03] F. Barbanera, M.Bugliesi, M. Dezani, V. Sassone "A Calculus of Bounded Capacities", LNCS 2896, 2003, 205-223.

[BCC01] M. Bugliesi, G. Castagna, S. Crafa. "Reasoning about security in mobile ambients", LNCS 2154, 2001, 102-120.

[BCC01b] M. Bugliesi, G. Castagna and S.Crafa "Subtyping and matching for Mobile Objects" . in Proc. of ICTCS'01 , LNCS n. 2202, pp. 235-255, Springer 2001

[BCD83] H. Barendregt, M. Coppo, M.Dezani, "A Filter Lambda-Model and the Completeness of Type Assignment", JSL 48, 1983, 931-940.

[BCS01] Michele Bugliesi, Giuseppe Castagna, and Silvia Crafa. Boxed ambients. In Benjamin Pierce, editor, TACS'01, volume 2215 of LNCS, pages 38-63. Springer-Verlag, 2001.

[BD04] F. Barbanera, U. de' Liguoro, "Type Assignment for Mobile Objects", in COMETA'03, ENTCS. Elsevier, Vol. 104C, pp. 25-38, 2004.

[BDNN01] C. Bodei, P. Degano, F. Nielson, H. Riis Nielson, "Static analysis for the pi -calculus with applications to security". Info. Comp., 168, 2001, 68-92.

[BV+03] Bettini,L., Bono,V. De Nicola,R., Ferrari,G., Gorla,D., Loreti,M., Moggi,E., Pugliese,R., Tuosto,E. and Venneri,B. "The KLAIM Project: Theory and Practice", Global Computing: Programming Environments, Languages, Security and Analysis of Systems, Volume 2874, LNCS, Springer-Verlag, 2003.

[CBC02] S. Crafa, M. Bugliesi, and G. Castagna "Information flow security for boxed ambients", ENTCS 66(3), 2002.

[CC91] F. Cardone and M. Coppo. "Type inference with recursive types". Syntax and Semantics. Information and Computation, 92(1):48-80, 1991.

[CD02] M. Coppo and M. Dezani, "A fully abstract model for higher-order mobile ambients" LNCS 2294, 2002, 255-271.

[CDGS03] M. Coppo, M. Dezani, E. Giovanetti, I. Salvo, "M3 Mobility Types for Mobile Processes in Mobile Ambients", ENTCS 78, 2003.

[CDGP04] M. Coppo., M. Dezani, E. Giovanetti, R. Pugliese, "Dynamic and Local Typing for Mobile Ambients". In J.-J. Levy, E. W. Mayr, AND J. C. Mitchell, ed. IFIP-TCS 2004. (pp. 583-596), Kluwer Academic Publishers.

[CG98] L. Cardelli, A. Gardon, "Mobile Ambients", LNCS 1378, 1998, 140-155.

[CG00] L. Cardelli, A. D. Gordon. "Anytime, Anywhere. Modal Logics for Mobile Ambients". Proceedings of the 27th ACM Symposium on Principles of Programming Languages, 2000. pp 365-377

[CGG00] L. Cardelli, G. Ghelli, and A. D. Gordon "Ambient groups and mobility types", LNCS 1872, 2000, 333-347.

[DDG99] F. Damiani, M. Dezani-Ciancaglini, P. Giannini, "A filter model for mobile processes", MSCS, 9(1), 1999, 63-102.

[DFPV00] R. De Nicola, G. Ferrari, R. Pugliese, and B. Venneri. "Types for Access Control". Theoretical Computer Science special issue on Coordination, 240(1):215{254, 2000.

[DLB00] P.Degano, F.Levi, C.Bodei "Safe Ambients: Control Flow Analysis and Security", LNCS 1961, 2002, 199-214.

[GM04] P. Gardner, S. Maffeis, "Modelling Dynamic web Data", Proc. of. Appsem'04, Tallinn, Lausen and Dan Suciu, editors, 2004

[G04] Elio Giovannetti. "Type inference for mobile ambients in prolog". In CATS 2004, ENTCS, 2004.

[GP03] D. Gorla, R. Pugliese, "Resource Access and Mobility Control with Dynamic Privileges Acquisition" Proceedings of the 30th International Colloquium on Automata, Languages and Programming (ICALP 2003), LNCS 2719, pagg. 119-132. Springer 2003.


[HH97] T. Hartonas, M. Hennessy, "Full Abstractness for a Functional/Concurrent Language with Higher-Order Value-Passing", Inf. Comp. 145(1), 1998, 64-106.

[HM85] M. C. B. Hennessy, R. Milner. "Algebraic laws for nondeterminism and concurrency". JACM 32(1), 1985, 137-161.

[HM02] Massimo Merro and Matthew Hennessy. Bisimulation Congruences in Safe Ambients. In POPL'02, pages 71-80, New York, 2002. ACM Press.

[HR03] M. Hennessy, J. Riely, "Trust and Partial Typing in Open Systems of Mobile Agents", Journal of Automated Reasoning, 2003. To appear.

[HR02] M. Hennessy, J. Riely, "Resource Access Control in Systems of Mobile Agents", Inf. Comp. 173, 2002, 82-120.

[LS00] F. Levi, D. Sangiorgi, "Controlling Interference in Ambients", POPL'00, 2000,

[MS02] M. Merro, V. Sassone, "Typing and Subtyping Mobility in Boxed Ambients", LNCS 2421, 2002, 304-320.

[MZ04] I. Margazia, M. Zacchi, "A Filter Model for Safe Ambients ", ENTCS 2004 (in via di pubblicazione).

[NHN99] F. Nielson, R. R. Hansen, H. Riis Nielson, "Abstract interpretation of mobile ambients", LNCS 1694, 1999, 134-148.

[SW01] D. Sangiorgi, D. Walker "The pi-calculus: a Theory of Mobile Processes", Cambridge University Press , 2001

[TT00] T. Amtoft, F. Turbak. ""Faithful Translations between Polyvariant Flows and Polymorphic Types", LNCS 1782, 2000, 26-40.

[W02] Joe Wells. "The essence of principal typings". In P. Widmayer, F. Triguero, R. Morales, M. Hennessy, S. Eidenbez, and R. Conejo, editors, ICALP'02, volume 2380 of LNCS, pages 913-925, Berlin, 2002. Springer-Verlag.

Programma di ricerca

Fondamenti Logici dei Sistemi Distribuiti e Codice Mobile
Università di riferimento
Università degli Studi di TORINO - INFORMATICA - TORINO(TO)
Responsabile dell'Unità di ricerca
Mario COPPO
Descrizione
Il programma di ricerca e' diviso secondo i task del progetto in cui è coinvolta la nostra unità



Sistemi di Tipi


Il nostro obiettivo e' quello di sviluppare e analizzare sistemi di tipi adatti a esprimere proprieta' come controllo di mobilita' e accesso a risorse in uno scenario di "global computing" dove gli agenti computazionali sono mobili e possono interagire in vari modi col contesto: consumando o offrendo risorse, scambiando dati e codice, modificando lo stato di altre componenti. In quest'ottica i tipi spesso contengono informazioni circa le azioni che possono essere svolte dai processi e i termini ben tipati possono essere visti come agenti che portano una prova certificata di (alcuni aspetti del) loro comportamento. Sebbene molto lavoro sia stato fatto in questa direzione siamo ancora lontani dall'avere una visione consolidata di cosa debbano rappresentare i tipi in questo contesto e di quali metodologie e strumenti siano utili per sfruttarne le proprieta'. Un difetto principale della maggior parte dei sistemi di tipi esistenti e' rappresentata dal fatto che tutti, in misura diversa, si basano sulla presenza di assunzioni globali che non sembrano realistiche nel nostro caso.

Siamo pero' interessati a studiare i sistemi di tipi anche in un'altra prospettiva. Le regole di type-checking possono anche essere considerate come un supporto formale per la definizione di strumenti di analisi adatti a ricavare tipi corretti per processi le cui annotazioni di tipo sono mancanti o incomplete. I tipi cosi' ricavati possono poi essere confrontati con il comportamento atteso dei processi per vedere se questo e' conforme a specifiche restrizioni su mobilita' e uso di risorse. Tuttavia non molto sembra essere stato fatto in questa direzione. Un esempio e' dato dall'algoritmo di inferenza di tipi in [CDGS03] la cui implementazione (disponibile in linea) e' presentata in [G04]. Un'analoga esperienza e' in corso per il piu' ricco sistema di [CDGP04].

Il contributo dell'unita' si sviluppera' secondo due filoni principali: Disegno di Sistemi di tipi e Inferenza di tipi e analisi statica .



Disegno di Sistemi di tipi

Un obiettivo primario della nostra unita' sara' quello di studiare sistemi di tipi adatti a esprimere proprieta' di mobilita' e accesso a risorse in cui le regole di type-checking siano essenzialmente locali e non richiedano informazioni incrociate sul comportamento di agenti che potrebbero entrare in cooperazione. Siamo infatti interessati a sistemi che siano in grado accettare nuove componenti o rilasciarle in modo sicuro, senza bisogno che le verifiche di tipo sulla compatibilita' e il buon comportamento di queste siano state precedentemente effettuate. Questo richiede che alcuni controlli circa la compatibilita' dei tipi siano realizzati al momento dell'interazione. Inoltre non si puo' assumere, come in molti approcci precedenti, che solo componenti conosciute e certificate entrino a far parte del sistema, ma bisogna considerare che anche componenti non tipate o parzialmente tipate possano venirvi incluse. Questo sembra richiedere un meccanismo per consentire alcuni controlli dinamici di tipo sugli agenti non tipati o tipati in modo non certificato. Per modellare situazioni reali inoltre dobbiamo tenere in conto che i diritti di accesso dei processi non dovrebbero essere fissati una volta per sempre ma dovrebbero essere in grado essere cambiati dinamicamente da altri agenti di controllo. Per esempio un processo che richiede una stampante puo' essere autorizzato ad accedere alla risorsa quando un processo di controllo decide che e' venuto il suo turno. Questo richiede l'introduzione di opportune primitive per modificare i tipi dinamicamente mantenendo ragionevole l'overhead dovuto ai necessari controlli.

Pensiamo di sviluppare questo programma partendo da sistemi di riferimento come il Calcolo degli Ambienti o sue varianti (per esempio [LS02], [BCS01), ma considereremo anche sistemi "piatti" come D-pi [HR03] o KLAIM [BV+03]. Il nostro obiettivo e' quello di sviluppare, se possibile, metodologie applicabili a una grande classe di sistemi e non specifiche di uno in particolare. Tuttavia il nostro approccio implica una stretta interconnessione tra il disegno dei sistemi di tipo e le sottostanti primitive di comunicazione e mobilita'. Questo potrebbe avere impatto sul calcolo sottostante suggerendo l'introduzione di nuove primitive o la modifica di alcune gia' esistenti e lo sviluppo di piu' complesse nozioni di dominio basate sul concetto di membrana [B04]. In questo programma sara' importante la collaborazione con il sito di Firenze, in cui sono gia' state affrontato tematiche simili [GP03]. In questa ottica intendiamo anche studiare in modo piu' concreto sistemi ottenuti integrando primitive e concetti di linguaggi di programmazione e la rappresentazione ed elaborazione dei dati.
Siamo interessati in particolare allo studio di sistemi che integrino la mobilita' con calcoli per oggetti e con strutture-dati rappresentate mediante linguaggi come l'XML. Il sito di Venezia, con cui si intende collaborare, ha gia' sviluppato esperienze in sistemi di questo tipo [BCS01b]


Algoritmi di inferenza e analisi statica

Un'altro obiettivo primario della nostra unita' e' quello di definire strumenti di analisi basati sull'inferenza di tipi nei sistemi sviluppati nel punto precedente o in varianti di essi. A questo scopo siamo particolarmente interessati a sviluppare sistemi che abbiano la proprieta' del "principal typing", per poter definire strumenti composizionali di analisi basati su di essi. Per ottenere cio' potrebbe essere richiesta una modifica delle regole di assegnazione, per esempio per reintrodurre una nozione di ambiente globale. Tale ambiente, utile per raccogliere informazioni circa i processi cooperanti, sarebbe tuttavia necessario solo nella fase di analisi, per esplorare in maggior dettaglio il comportamento di componenti critiche. Questo approccio e' gia' stato applicato a una variante del Calcolo degli Ambienti in [CDGS03], il cui sistema di tipi e' pero' ancora in larga misura basato su assunzioni globali. Siamo anche interessati alla possibilita' di realizzare implementazioni prototipali di questi sistemi, seguendo l'approccio di [G04]

Siccome i tipi possono essere visti come strumenti per realizzare forme di analisi statica, siamo anche interessati a studiare le relazioni tra i metodi basati sull'inferenza di tipi e altri classici metodi di analisi statica applicati al controllo delle risorse in calcoli con mobilita'. Le relazioni con l'analisi di flusso, si veda per esempio [DLB00] e [CBC02], quest'ultimo in particolare sviluppato dal sito di Venezia, sembrano particolarmente interessanti.


Equivalenze comportamentali


Non sembra chiaro fino a quale punto le usuali tecniche di prova per i processi concorrenti e mobili, basati in particolare sulla definizione di equivalenze, possano essere applicate a calcoli con tipi parziali o dinamici. Lo studio delle equivalenze e' focalizzato a fornire strumenti per provare proprieta', come leggi algebriche o trasformazioni, che possono aiutare a comprendere le proprieta' dinamiche di base degli agenti e a definire utili traduzioni. Intendiamo studiare tali proprieta' utilizzando sia le tecniche consolidate della teoria della concorrenza sia (principalmente) quelle basate sulla costruzione di filtri modelli.


Bisimulazioni e lts

Vogliamo studiare la possibilita' di applicare strumenti classici come quelli basati sulla definizione di bisimulazioni e tecniche coinduttive correlate ai sistemi sopra menzionati. A questo scopo dobbiamo individuare una nozione opportuna di osservabile, e investigare come la nozione di labelled transition system (lts) puo' essere adattata/modificata per i sistemi di nostro interesse. Questo dipende anche dal tipo di interazioni col contesto che si debbono considerare (per esempio modificazione dinamica dei tipi) e dalle altre componenti del sistema (per es. oggetti). Sara' rilevante, in questa parte del programma, la cooperazione con il sito di Bologna che possiede notevole esperienza in queste tecniche ([SW01]).


Costruzione di Filtri Modelli

Un rilevante obiettivo della nostra unita' e' quello di investigare fino a che punto la costruzione di filtri modelli puo' essere applicata per definire utili equivalenze per sistemi con mobilita' e tipi dinamici o parziali e confrontarle eventualmente con le equivalenze osservazionali definite con strumenti piu' standard. Questo potrebbe richiedere un rafforzamento e modifica della struttura dei tipi per renderli sufficientemente espressivi da caratterizzare il comportamento dei processi. Proprieta' come terminazione o deadlock potrebbero essere caratterizzabili in questo modo. I labelled ransition systems potrebbero rivelarsi utili in queste costruzioni come suggerito da esperienze precedenti [MZ04]. In generale le relazioni tra lts e filtri modelli saranno approfondite.