Ministero dell'Universita' e della Ricerca scientifica e tecnologica
Dipartimento Affari Economici
Programmi di Ricerca scientifica - richiesta di cofinanziamento
(DM del 23 aprile 1997)
PROGETTO DI UNA UNITA' DI RICERCA - MODELLO B
Anno 1997 - prot. 9701248444_001

1. Programma di Ricerca di tipo: interuniversitario

Area Scientifico Disciplinare: Scienze matematiche
Per programmi inter-area: Area: Scienze matematiche (90%) 
Area: Ingegneria industriale dell'informazione (10%) 
2. Coordinatore Scientifico del Programma di Ricerca
LEVI 
(Cognome) 
GIORGIO 
(Nome)
(Cognome acquisito - facoltativo)
PISA 
(Università)
SCIENZE MATEMATICHE FISICHE e NATURALI 
(Facoltà)
Dipartimento di Informatica 
(Dipartimento/Istituto)
3. Titolo del Programma di Ricerca Tecniche formali per la specifica, l'analisi, la verifica, la sintesi e la trasformazione di sistemi software.


4. Responsabile Scientifico dell'Unità di Ricerca
PETTOROSSI 
(Cognome) 
ALBERTO 
(Nome)
(Cognome acquisito - facoltativo)
Professore Associato 
(Qualifica)
21/10/47 
(Data di nascita)
PTTLRT47R21G919T 
(Codice di identificazione personale)
ROMA TOR VERGATA 
(Università)
INGEGNERIA 
(Facoltà)
Informatica, Sistemi e Produzione 
(Dipartimento/Istituto)
152518 
(Codice conto Tesoreria Unica del Dip/Ist.)
06 - 7259 7379 
(Prefisso e telefono)
06 - 7716461 
(Numero fax)
adp@iasi.rm.cnr.it 
(Indirizzo di posta elettronica)

5. Settori disciplinari interessati dal Programma di Ricerca
K05A                  K05B

6. Titolo specifico del programma svolto dall'Unità di Ricerca
Metodi formali per la verifica e la trasformazione dei programmi.


7. Descrizione del Programma dell'Unità di Ricerca
 
Si intendono affrontare, nell'ambito dell'approccio alla specifica dei sistemi reattivi basato sulla teoria degli automi, i problemi connessi con la cosiddetta 'esplosione dello spazio degli stati'. La visione del sistema software come macchina a stati utilizzata in diversi linguaggi di specifica e l'esplorazione dello spazio degli stati e' una delle piu' promettenti e semplici strategie di verifica di un sistema. Ma la dimensione dello spazio degli stati diventa spesso proibitiva per la necessita' di tener conto di tutti i possibili comportamenti. Ci si propone di studiare metodi che consentano di trascurare nella verifica qualche comportamento del sistema, senza perdite in certezza della prova.
 
Si intende anche sviluppare la ricerca sulla sintesi di programmi logici da specifiche in logica dei predicati del primo ordine utilizzando regole di derivazione simili a quelle gia' studiate nel campo della trasformazione dei programmi, per esempio, unfolding e folding. Si svilupperanno tecniche basate su proprieta' di terminazione dei programmi per la dimostrazione di correttezza di regole di trasformazione di programmi logici con negazione. A tale scopo occorrera' considerare diverse semantiche della negazione in programmazione logica, quali la negation-as-failure, il completamento di Clark, i modelli perfetti, stabili o ben fondati, e diverse nozioni di terminazione, quali quella esistenziale, universale, e la left-termination. Infine si utilizzeranno estensioni linguistiche del secondo ordine della programmazione logica, ove i predicati, cioe' le procedure, possono essere trattati come argomenti di altri predicati, nel campo della trasformazione e in particolare della specializzazione dei programmi. Si considerera' in particolare il concetto di continuazione per codificare in un argomento di un predicato la sequenza delle chiamate di predicato che dovranno essere effettuate per risolvere un dato goal. Si proseguira' nello sviluppo di un prototipo di un sistema per la sintesi, la trasformazione e la verifica dei programmi logici.

Ci si propone inoltre di affrontare lo studio di modelli computazionali innovativi basati su tecnologia neurale per lo sviluppo e la realizzazione di software ad alto livello di efficienza. A tale scopo verranno analizzate diverse topologie di rete ed i relativi algoritmi di apprendimento e si svilupperanno tecniche che guidino alla scelta delle soluzioni piu efficienti ed adeguate
alla soluzione dei problemi di interesse.


8. Obiettivo del programma dell'Unità di Ricerca
 
8.1 Ci si propone di definire nuove tecniche di riduzione dello spazio degli stati di un sistema software a stati finiti, il piu' possibile indipendenti dalla proprieta' da dimostrare.

8.2 Inoltre si vogliono sviluppare tecniche per la derivazione di software corretto ed efficiente a partire da specifiche formali sia nell'ambito della programmazione funzionale che in quello
della programmazione logica. Alcune di queste tecniche sono utilizzabili per la sintesi dei programmi e possono anche essere utilizzate per costruire strumenti automatici per lo sviluppo del software.

8.3 Per quanto attiene ai modelli computazionali innovativi basati su tecnologia neurale ci si propone di definire le tecniche che guidino nella scelta delle soluzioni piu efficienti per la realizzazione di software.
 


9. Base di partenza scientifica

L'approccio alla specifica e alla verifica di programmi basato sulla teoria degli automi e' ampiamente consolidato (vedi, ad esempio, R.P Kurshan, Formal Verification of coordinating processes: The Automata-Theoretic Approach,1996). Uno degli metodi piu' studiati per affrontare con successo il problema dell'esplosione dello spazio degli stati si basa sulla teoria delle tracce di Mazurkiewicz. Si tratta di introdurre un'opportuna relazione di indipendenza sulle azioni e poi considerare per la verifica quei comportamenti originati dall'esecuzione di una sola delle azioni indipendenti. Su questa strada P. Godefroid, in Partial-Order Methods for the verification of Concurrent Systems, LNCS n.1032,1996, ottiene un metodo che da' un buon compromesso tra sforzo computazionale necessario per la ottenere la riduzione e la riduzione stessa. Ma la costruzione dello spazio ridotto dipende dalla proprieta' che
si vuole dimostrare.

Per quanto riguarda la trasformazione e la sintesi dei programmi la metodologia proposta puo' essere applicata con successo a vari paradigmi di programmazione, e in particolare, ai programmi funzionali e logici come mostrato da R. M. Burstall and J. Darlington, in: A Transformation System for Developing Recursive Programs", JACM, Vol. 24, 1, 44-67, 1997, e da H. Tamaki and T. Sato, in: Unfold/Fold Transformation of Logic Programs, Proceedings of the Second International Conference on Logic Programming, Uppsala, Sweden Uppsala University,127-138, 1984.

Nell'ambito della realizzazione di software di tipo neurale ci si basera' sulle caratteristiche dei principali modelli di reti neurali, Reti di Hopfield, Perceptron, Reti Multilayer, Macchina di Boltzmann, Self-Organizing Map, degli algoritmi di apprendimento, Rumelhart-Zipser,Grossberg, e dei criteri di valutazione delle prestazioni dei sistemi realizzati.


10. Durata del Programma di Ricerca 24 (mesi)


11. Pubblicazioni scientifiche più significative del Responsabile dell'Unità di Ricerca

1. Pettorossi, A. and Proietti, M.: "Transformation of Logic Programs: Foundations and  Techniques", Journal of Logic Programming, Vol. 19-20, 1994, 261-320.

2. Proietti, M. and Pettorossi, A.: "Unfolding-Definition-Folding, in this order, for Avoiding Unnecessary Variables in Logic Programs", Theoretical Computer Science 142
    (1) 1995, 89-124.

3. Pettorossi, A. and Proietti, M.: "Rules and Strategies for Transforming Functional and Logic Programs", ACM Computing Surveys, Vol. 28, No. 2, June 1996, 36-414.

4. Pettorossi, A. and Proietti, M.: "A Comparative Revisitation of Some Program Transformation Strategies", Invited paper. In: O. Danvy, R. Glueck, and T. Thiemann
    (eds.), Partial Evaluation, International Seminar, Dagstuhl Castle, Germany, February 1996, Lecture Notes in Computer Science 1110, Springer, 1996, 355-385.

5. Pettorossi, A., Proietti, M., and Renault, S.: "Reducing Nondeterminism while Specializing Logic Programs", In: Proceedings of the 24th ACM Symposium on Principles
    of Programming Languages (POPL '97), La Sorbonne, Paris, France, 1997, ACM Press, 1997, 414-427.

6. Pettorossi, A. and Proietti, M.: "Program Derivation via List Introduction", In: R. Bird and L.G.L.T. Meertens (eds.) Proceedings of the IFIP TC2 Working Conference on
    Algorithmic Languages and Calculi, Le Bischenberg, France, February 17-21, 1997, Chapman & Hall, 1997, 296-323.

7. Pettorossi, A. and Proietti, M.: "Transformation of Logic Programs", in: D. M. Gabbay, C. J. Hogger, and J. A. Robinson (eds.), Handbook of Logic in Artificial
    Intelligence and Logic Programming, Vol. 5, Logic Programming, Oxford University Press, 1998, 697-787.


12. Risultati ottenibili con fondi propri


13. Risorse umane impegnabili nel Programma dell'Unità di Ricerca
(un docente-ricercatore può far parte di una sola Unità di Ricerca)

13.1 Personale universitario dell'Università sede dell'Unità di Ricerca

 
No. Cognome Nome Dipart./Istituto Qualifica Mesi Uomo
1. Fachini  Emanuela Informatica, Sistemi e Produzione Professore Ordinario 9
2. Pettorossi Alberto Informatica, Sistemi e Produzione Professore Associato  9
3. Buttarazzi  Berta Informatica, Sistemi e Produzione Ricercatore  9
13.2 Personale universitario di altre Università:
No. Cognome Nome Università Dipart./Istituto Qualifica Mesi uomo
13.3 Titolari di borse ex L. 398/89 art. 4 (post-dottorato e specializzazioni)
No. Cognome Nome Dipart./Istituto Mesi uomo
13.4 Titolari di borse per dottorato di ricerca
No. Cognome Nome Università sede amm. Dipart./Istituto Ciclo Mesi uomo
13.5 Personale extrauniversitario - aggregabile al programma senza oneri aggiuntivi
No. Cognome Nome Ente Qualifica Mesi uomo
13.6 Personale a contratto
No. Cognome Nome Qualifica Costo previsto Mesi uomo
1. Renault Sophie Dottore di Ricerca 10,000  4

14. Risorse finanziarie a sostegno del Programma già disponibili all'atto della domanda
(tutte le cifre sono espresse in milioni)

QUADRO RD

Provenienza anno di assegnazione importo disponibile nome Resp. Naz.
Universita' 1997  5,400 
Dipartimento    
MURST (ex 40%)  antecedente 1995  
MURST (ex 40%)  1995 4,700   Andrea Maggiolo Schettini
MURST (ex 40%)  1996  
CNR    
Unione Europea    
Altro    
TOTALE    10,100
14.1 Altro (origine e importi dettagliati):


15. Risorse finanziarie acquisibili in data successiva a quella della domanda e utilizzabili a sostegno del Programma
(tutte le cifre sono espresse in milioni)

QUADRO RA

Provenienza anno della domanda o stipula del contratto stato di approvazione disponibilità per il programma
Università  1997   accettato  6,200
Dipartimento      
CNR      
Unione Europea      
Altro      
TOTALE      6,200
15.1 Disponibilità per il programma(articolare negli anni di durata del programma)

15.2 Altro (origine e importi dettagliati)


16. Apparecchiature o grandi attrezzature

16.1 Disponibili ed utilizzabili per la ricerca proposta
(tutte le cifre sono espresse in milioni)

descrizione anno di acquisizione valore all'acquisto finanziamenti ottenuti dal MURST % di utilizzo per la ricerca proposta
         
         
         
L'uso delle attrezzature disponibili richiede, per la ricerca proposta, interventi di adeguamento? no

Quota necessaria per l'adeguamento:


16.2 Descrizione sintetica dell'adeguamento richiesto


16.3 Richiesta di grandi attrezzature (GA)
(tutte le cifre sono espresse in milioni)
  1. Descrizione:

  2.  

    Valore presunto (milioni):

     

  3. Descrizione:

  4.  

    Valore presunto (milioni):

     

  5. Descrizione:

  6.  

    Valore presunto (milioni):

     


17. Certifico la disponibilità e l'utilizzabilità dei fondi si
 
 
Firma ________________________________  (per la copia da depositare presso l'Ateneo) 

18. Costo complessivo del Programma dell'Unità di Ricerca (in milioni di lire)
Costo complessivo  

di cui: 

 37,000 
 
Voce  importo 
Materiale inventariabile - (Voce A)   7,000
Spese generali - (Voce B)   30,000
Grandi attrezzature - (Voce GA)   
 
Risorse disponibili all'atto della domanda (RD)   10,100
Risorse acquisibili (RA)   6,200
Cofinanziamento richiesto al MURST   20,700
Costo minimo per garantire  
la possibilità di verifica dei risultati 
 27,000
Occorre precisare che la quota di cofinanziamento massimo del Programma di Ricerca deve essere pari a:
(Totale RD + Totale RA) x 1.5 per progetti Interuniversitari e
(Totale RD + Totale RA) x 0.66 per progetti Intrauniversitari

(per la copia da depositare presso l'Ateneo e per l'assenso alla divulgazione via Internet delle informazioni riguardanti i programmi finanziati; legge del 31.12.96 n° 675 sulla "Tutela dei dati personali")
 
 
Firma ____________________________________  Data 29/7/97