Rosario Pugliese

Prof. Rosario Pugliese

University of Florence
orcid

Research Focus & Metrics

Academic Career Length

32Years (1995-Present)

(Calculated once Scilit publication data is synced: current year − year of first publication + 1)

Representative Publications

View All Publications
1 May 1998 in IEEE Transactions on Software Engineering
Verified
Journal Article
Closed access
RNR. De Nicola
R. De Nicola
GFG.L. Ferrari
G.L. Ferrari
Rosario PuglieseRosario Pugliese
Rosario Pugliese
We investigate the issue of designing a kernel programming language for mobile computing and describe KLAIM, a language that supports a programming paradigm where processes, like data, can be moved from one computing environment to another. The language consists of a core Linda with multiple tuple spaces and of a set of operators for building processes. KLAIM naturally supports programming with explicit localities. Localities are first-class data (they can be manipulated like any other data), but the language provides coordination mechanisms to control the interaction protocols among located processes. The formal operational semantics is useful for discussing the design of the language and provides guidelines for implementations. KLAIM is equipped with a type system that statically checks access right violations of mobile agents. Types are used to describe the intentions (read, write, execute, etc.) of processes in relation to the various localities. The type system is used to determine the operations that processes want to perform at each locality, and to check whether they comply with the declared intentions and whether they have the necessary rights to perform the intended operations at the specific localities. Via a series of examples, we show that many mobile code programming paradigms can be naturally implemented in our kernel language. We also present a prototype implementation of KLAIM in Java.

1 July 2014 in ACM Transactions on Autonomous and Adaptive Systems
Verified
Journal Article
Open access
RNRocco De Nicola
Rocco De Nicola
MLMichele Loreti
Michele Loreti
Rosario PuglieseRosario Pugliese
Rosario Pugliese
FTFrancesco Tiezzi
Francesco Tiezzi
The autonomic computing paradigm has been proposed to cope with size, complexity, and dynamism of contemporary software-intensive systems. The challenge for language designers is to devise appropriate abstractions and linguistic primitives to deal with the large dimension of systems and with their need to adapt to the changes of the working environment and to the evolving requirements. We propose a set of programming abstractions that permit us to represent behaviors, knowledge, and aggregations according to specific policies and to support programming context-awareness, self-awareness, and adaptation. Based on these abstractions, we define SCEL (Software Component Ensemble Language), a kernel language whose solid semantic foundations lay also the basis for formal reasoning on autonomic systems behavior. To show expressiveness and effectiveness of SCEL;’s design, we present a Java implementation of the proposed abstractions and show how it can be exploited for programming a robotics scenario that is used as a running example for describing the features and potential of our approach.

1 June 2000 in Theoretical Computer Science
Verified
Journal Article
Closed access
RNRocco De Nicola
Rocco De Nicola
GFGianLuigi Ferrari
GianLuigi Ferrari
Rosario PuglieseRosario Pugliese
Rosario Pugliese
BVBetti Venneri
Betti Venneri

1 January 2001 in SIAM Journal on Computing
Verified
Journal Article
Closed access
MBMichele Boreale
Michele Boreale
RNRocco De Nicola
Rocco De Nicola
Rosario PuglieseRosario Pugliese
Rosario Pugliese
Contextual equivalences for cryptographic process calculi, like the spi-calculus, can be used to reason about correctness of protocols, but their definition suffers from quantification over all possible contexts. Here, we focus on two such equivalences, namely may-testing and barbed equivalence, and investigate tractable proof methods for them. To this aim, we design an enriched labelled transition system, where transitions are constrained by the knowledge the environment has of names and keys. The new transition system is then used to define a trace equivalence and a weak bisimulation equivalence that avoid quantification over contexts. Our main results are soundness and completeness of trace and weak bisimulation equivalence with respect to may-testing and barbed equivalence, respectively. They lead to more direct proof methods for equivalence checking. The use of these methods is illustrated with a few examples concerning implementation of secure channels and verification of protocol correctness.

1 January 2015
Verified
Book Chapter
Closed access
PDF file
RNRocco De Nicola
Rocco De Nicola
DLDiego Latella
Diego Latella
ALAlberto Lluch Lafuente
Alberto Lluch Lafuente
MLMichele Loreti
Michele Loreti
AMAndrea Margheri
Andrea Margheri
AVAndrea Vandin
Andrea Vandin

27 September 2002 in Software: Practice and Experience
Verified
Journal Article
Closed access
PDF file
LBLorenzo Bettini
Lorenzo Bettini
RNRocco De Nicola
Rocco De Nicola
Rosario PuglieseRosario Pugliese
Rosario Pugliese