Ugo Montanari
University of Pisa
Network
Latest external collaboration on country level. Dive into details by clicking on the dots.
Publication
Featured researches published by Ugo Montanari.
Journal of the ACM | 1997
Stefano Bistarelli; Ugo Montanari; Francesca Rossi
We introduce a general framework for constraint satisfaction and optimization where classical CSPs, fuzzy CSPs, weighted CSPs, partial constraint satisfaction, and others can be easily cast. The framework is based on a semiring structure, where the set of the semiring specifies the values to be associated with each tuple of values of the variable domain, and the two semiring operations (+ and X) model constraint projection and combination respectively. Local consistency algorithms, as usually used for classical CSPs, can be exploited in this general framework as well, provided that certain conditions on the semiring operations are satisfied. We then show how this framework can be used to model both old and new constraint solving and optimization schemes, thus allowing one to both formally justify many informally taken choices in existing schemes, and to prove that local consistency techniques can be used also in newly defined schemes.
Constraints - An International Journal | 1999
Stefano Bistarelli; Ugo Montanari; Francesca Rossi; Thomas Schiex; Gérard Verfaillie; Hélène Fargier
In this paper we describe and compare two frameworks for constraint solving where classical CSPs, fuzzy CSPs, weighted CSPs, partial constraint satisfaction, and others can be easily cast. One is based on a semiring, and the other one on a totally ordered commutative monoid. While comparing the two approaches, we show how to pass from one to the other one, and we discuss when this is possible. The two frameworks have been independently introduced in ijcai95,jacm and schiex-ijcai95.
symposium on principles of programming languages | 2005
Roberto Bruni; Hernán C. Melgratti; Ugo Montanari
A key aspect when aggregating business processes and web services is to assure transactional properties of process executions. Since transactions in this context may require long periods of time to complete, traditional mechanisms for guaranteeing atomicity are not always appropriate. Generally the concept of long running transactions relies on a weaker notion of atomicity based on compensations. For this reason, programming languages for service composition cannot leave out two key aspects: compensations, i.e. ad hoc activities that can undo the effects of a process that fails to complete, and transactional boundaries to delimit the scope of a transactional flow. This paper presents a hierarchy of transactional calculi with increasing expressiveness. We start from a very small language in which activities can only be composed sequentially. Then, we progressively introduce parallel composition, nesting, programmable compensations and exception handling. A running example illustrates the main features of each calculus in the hierarchy.
Acta Informatica archive | 1995
Ugo Montanari; Francesca Rossi
We propose a new kind of nets, called contextual nets, where events may have both preconditions and postconditions, as in the classical case, and also positive or negative context conditions. Positive context conditions are to be interpreted as elements which are needed for the event to occur, but which are not affected by the occurring of the event. Instead, negative context conditions are elements which must not be present for the event to take place.The importance of an explicit representation of positive context elements is twofold. Firstly, it allows a faithful representation of systems where the notion of “reading without consuming” is commonly used, like database systems, concurrent constraint programming, or any computation framework based on shared memory. Secondly, it allows to specify directly and naturally a level of concurrency greater than in classical nets. In fact, two events with different preconditions but with the same positive context may occur both in any order and also simultaneously. It is important to note that no other formalism for specifying distributed systems has such feature, not even Petri nets, where the “read” operation does not exists and it is instead modelled through a “rewrite” operation (i.e., a loop), which however does not allow the simultaneous execution of two tasks which read the same resource. Of course a context situation may be simulated in classical nets by creating as many copies of the context as are the users, but this would lead to a very unrealistic (and also more costly) description of the real situation. Negative context conditions are instead very natural to use in systems or languages where negation is present.In this paper we provide contextual nets with two process-based semantics which both are able to represent all and only the computations of a net and express the correct level of true-concurrency. Moreover, we show that contact situations, as well as negative context conditions, do not add any additional power, and we investigate the relationship between contextual nets and classical nets in terms of their processes.
Acta Informatica | 1988
Pierpaolo Degano; Rocco De Nicola; Ugo Montanari
SummaryA new set of inference rules for the guarded version of Milner’s Calculus of Communicating Systems is proposed. They not only describe the actions agents may perform when in a given state, but also say which parts of the agents move when the global state changes. From the transition relation a particular Petri Net, namely a Condition/Event system called ΣCCS, is immediately derived. Our construction gives a semantics which is consistent with the interleaving semantics of CCS and exhibits full parallelism. The proof consists of relating the case graph of ΣCCS with the original and with the multiset (step) transition systems of the calculus.
Information & Computation | 2001
Paolo Baldan; Andrea Corradini; Ugo Montanari
We present an event structure semantics for contextual nets, an extension of P/T Petri nets where transitions can check for the presence of tokens without consuming them (read-only operations). A basic role is played by asymmetric event structures, a generalization of Winskels prime event structures where symmetric conflict is replaced by a relation modelling asymmetric conflict or weak causality, used to represent a new kind of dependency between events arising in contextual nets. Extending Winskels seminal work on safe nets, the truly concurrent event-based semantics of contextual nets is given at categorical level via a chain of coreflections leading from the category SW-CN of semi-weighted contextual nets to the category Dom of finitary prime algebraic domains. First an unfolding construction generates from a contextual net a corresponding occurrence contextual net, from where an asymmetric event structure is extracted. Then the configurations of the asymmetric event structure, endowed with a suitable order, are shown to form a finitary prime algebraic domain. We also investigate the relation between the proposed unfolding semantics and several deterministic process semantics for contextual nets in the literature. In particular, the domain obtained via the unfolding is characterized as the collection of the deterministic processes of the net endowed with a kind of prefix ordering. 2001 Elsevier Science.
logic in computer science | 1989
Pierpaolo Degano; Jos Meseguer; Ugo Montanari
An algebraic axiomatization is proposed, where, given a net N, a term algebra P(N) with two operations of parallel and sequential composition is defined. The congruence classes generated by a few simple axioms are proved isomorphic to a slight refinement of classical processes. Actually, P(N) is a symmetric monoidal category, parallel composition is the monoidal operation on morphisms and sequential composition is morphism composition. Besides P(N), the authors introduce a category S(N) containing the classical occurrence and step sequences. The term algebras of P(N) and S(N) are in general incomparable, and thus they introduce two more categories, K(N) and T(N), providing a most concrete and a most abstract extremum, respectively. The morphisms of T(N) are proved isomorphic to the processes recently defined in terms of the swap transformation by E. Best and R. Devillers (Theor. Comput. Sci., vol.55, pp.87-136, 1987). Thus the diamond of the four categories gives a full account in algebraic terms of the relations between interleaving and partial ordering observations of place/transition net computations.<<ETX>>
Journal of Computer and System Sciences | 1987
Pierpaolo Degano; Ugo Montanari
Abstract A new notion of transition systems, called distributed transition systems , is introduced, where states are sets of processes and transitions specify which processes stay idle. A notion of observations based on partial orderings, called concurrent histories , is defined on computations. Several observational equivalences, e.g., bisimulation, are given on observations. As case studies, Petri C/E systems and P/T nets, and Milners CCS are translated to distributed transition systems.
ACM Transactions on Programming Languages and Systems | 2001
Stefano Bistarelli; Ugo Montanari; Francesca Rossi
We extend the Constraint Logic Programming (CLP) formalism in order to handle semiring-based constraints. This allows us to perform in the same language both constraint solving and optimization. In fact, constraints based on semirings are able to model both classical constraint solving and more sophisticated features like uncertainty, probability, fuzziness, and optimization. We then provide this class of languages with three equivalent semantics: model-theoretic, fix-point, and proof-theoretic, in the style of classical CLP programs.
Theoretical Computer Science | 1990
Pierpaolo Degano; R De Nicola; Ugo Montanari
A new operational semantics for “pure” CCS is proposed that considers the parallel operator as a first class one, and permits a description of the calculus in terms of partial orderings. The new semantics (also for unguarded agents) is given in the SOS style via the partial ordering derivation relation. CCS agents are decomposed into sets of sequential subagents. The new derivations relate sets of subagents, and describe their actions and the casual dependencies among them. The computations obtained by composing partial ordering derivations are “observed” either as interleaving or partial orderings of events. Interleavings coincide with Milners many step derivations, and “linearizations” of partial orderings are all and only interleavings. Abstract semantics are obtained by introducing two relations of observational equivalence and congruence that preserve concurrency. These relations are finer than Milners in that they distinguish interleaving of sequential nondeterministic agents from their concurrent execution.