About
57
Publications
2,895
Reads
How we measure 'reads'
A 'read' is counted each time someone views a publication summary (such as the title, abstract, and list of authors), clicks on a figure, or views or downloads the full-text. Learn more
290
Citations
Introduction
Current institution
Additional affiliations
January 2009 - present
January 2009 - present
Publications
Publications (57)
In this paper we introduce polytopal stochastic games, an extension of two-player, zero-sum, turn-based stochastic games, in which we may have uncertainty over the transition probabilities. In these games the uncertainty over the probabilities distributions is captured via linear (in)equalities whose space of solutions forms a polytope. We give a f...
We present an approach to automatically synthesize synchronized models from lightweight formal specifications. Our approach takes as input a specification of a distributed system along with a global linear time constraint, which must be fulfilled by the interaction of the system's components. It produces executable models for the component specific...
In a seminal work, K. Segerberg introduced a deontic logic called DAL to investigate normative reasoning over actions. DAL marked the beginning of a new area of research in Deontic Logic by shifting the focus from deontic operators on propositions to deontic operators on actions. In this work, we revisit DAL and provide a complete algebraization fo...
We investigate the complexity of the satisfiability problem for a modal logic expressing ‘knowing how’ assertions, related to an agent’s abilities to achieve a certain goal. We take one of the most standard semantics for this kind of logics based on linear plans. Our main result is a proof that checking satisfiability of a ‘knowing how’ formula can...
Default Logics are a family of non-monotonic formalisms having so-called defaults and extensions as their common foundation. Traditionally, default logics have been defined and dealt with via syntactic notions of consequence in propositional or first-order logic. Here, we build default logics on modal logics. First, we present these default logics...
We introduce a formal notion of masking fault-tolerance between probabilistic transition systems based on a variant of probabilistic bisimulation (named masking simulation). We also provide the corresponding probabilistic game characterization. Even though these games could be infinite, we propose a symbolic way of representing them, such that it c...
We present , an automated tool designed to measure the level of fault-tolerance provided by software components. The tool focuses on measuring masking fault-tolerance, that is, the kind of fault-tolerance that allows systems to mask faults in such a way that they cannot be observed by the users. The tool takes as input a nominal model (which serves...
We investigate zero-sum turn-based two-player stochastic games in which the objective of one player is to maximize the amount of rewards obtained during a play, while the other aims at minimizing it. We focus on games in which the minimizer plays in a fair way. We believe that these kinds of games enjoy interesting applications in software verifica...
We investigate zero-sum turn-based two-player stochastic games in which the objective of one player is to maximize the amount of rewards obtained during a play, while the other aims at minimizing it. We focus on games in which the minimizer plays in a fair way. We believe that these kinds of games enjoy interesting applications in software verifica...
Default Logic refers to a family of formalisms designed to carry out non-monotonic reasoning over a monotonic logic (in general, Classical First-Order or Propositional Logic). Traditionally, default logics have been defined and dealt with via syntactic consequence relations. Here, we introduce a family of default logics defined over modal logics. F...
We build a Default Logic variant on Intuitionistic Propositional Logic and develop a sound, complete, and terminating, tableaux calculus for it. We also present an implementation of the calculus. We motivate and illustrate the technical elements of our work with examples.
Often, we assume that an action is permitted simply because it is not explicitly forbidden; or, similarly, that an action is forbidden simply because it is not explicitly permitted. This kind of assumptions appear, e.g., in autonomous computing systems where decisions must be taken in the presence of an incomplete set of norms regulating a particul...
Often, we assume that an action is permitted simply because it is not explicitly forbidden; or, similarly, that an action is forbidden simply because it is not explicitly permitted. This kind of assumptions appear, e.g., in autonomous computing systems where decisions must be taken in the presence of an incomplete set of norms regulating a particul...
Various tools for program analysis, including run-time assertion checkers and static analyzers such as verification and test generation tools, require formal specifications of the programs being analyzed. Moreover, many of these tools and techniques require such specifications to be written in a particular style, or follow certain patterns, in orde...
We investigate interpolation and Beth definability in default logics. To this end, we start by defining a general framework which is sufficiently abstract to encompass most of the usual definitions of a default logic. In this framework a default logic \(\mathscr {D}\mathfrak {L}\) is built on a base, monotonic, logic \(\mathfrak {L}\). We then inve...
The theory of institutions, introduced by Goguen and Burstall in 1984, can be thought of as an abstract formulation of model theory. This theory has been shown to be particularly useful in computer science, as a mathematical foundation for formal approaches to software construction. Institution theory was extended by a number of researchers, José M...
In this paper we introduce a notion of fault-tolerance distance between labeled transition systems. Intuitively, this notion of distance measures the degree of fault-tolerance exhibited by a candidate system. In practice, there are different kinds of fault-tolerance, here we restrict ourselves to the analysis of masking fault-tolerance because it i...
In this paper we introduce a notion of fault-tolerance distance between labeled transition systems. Intuitively, this notion of distance measures the degree of fault-tolerance exhibited by a candidate system. In practice, there are different kinds of fault-tolerance, here we restrict ourselves to the analysis of masking fault-tolerance because it i...
In specification-based test generation, sometimes having a formal specification is not sufficient, since the specification may be in a different formalism from that required by the generation approach being used. In this paper, we deal with this problem specifically in the context in which, while having a formal specification in the form of an oper...
In goal-oriented requirements engineering approaches, conflict analysis has been proposed as an abstraction for risk analysis. Intuitively, given a set of expected goals to be achieved by the system-to-be, a conflict represents a subtle situation that makes goals diverge, i.e., not be satisfiable as a whole. Conflict analysis is typically driven by...
We present a formal characterization of fault-tolerant behaviors of computing systems via simulation relations. This formalization makes use of variations of standard simulation relations in order to compare the executions of a system that exhibits faults with executions where no faults occur; intuitively, the latter can be understood as a specific...
In this paper we present a mathematical framework tailored for reasoning about specification/program refinements. The proposed framework uses formal concepts coming from Institution Theory and Category Theory, such as theories and morphisms, to capture the notion of specification/program refinement. The main benefits of the proposed mathematical th...
Various tools for program analysis, including run-time assertion checkers and static analyzers such as verification and test generation tools, require formal specifications of the programs being analyzed. Moreover, many of these tools and techniques require such specifications to be written in a particular style, or follow certain patterns, in orde...
We introduce a family of tableau calculi for deontic action logics based on finite boolean algebras (or DAL for short), these logics provide deontic operators (e.g., obligation, permission, prohibition) which are applied to a finite number of actions (the vocabulary of the logic); furthermore, in these formalisms, actions can be combined by means o...
Goal-oriented requirements engineering approaches propose capturing how a system should behave through the specification of high-level goals, from which requirements can then be systematically derived. Goals may however admit subtle situations that make them diverge, i.e., not be satisfiable as a whole under specific circumstances feasible within t...
In this paper we introduce recursive probabilistic computation- tree logic as a restriction of μPCTL. We introduce the logic in detail and show its usefulness for verifying systems. We illustrate this by means of some examples. Roughly speaking, we include recursive operators within PCTL, which enable one to identify repeating patterns of probabili...
In this paper we present a formalization of the \({\mathsf{Z}}\) notation and its structuring mechanisms. One of the main features of our formal framework, based on category theory and the theory of institutions, is that it enables us to provide an abstract view of \({\mathsf{Z}}\) and its related concepts. We show that the main structuring mechani...
In this paper we introduce syntMaskFT, a tool that synthesizes fault-tolerant programs from specifications written in a fragment of branching time logic with deontic operators, designed for specifying fault-tolerant systems. The tool focuses on producing masking tolerant programs, that is, programs that during a failure mask faults in such a way th...
We revisit a recently introduced probabilistic μ-calculus and study an expressive fragment of it. By using the probabilistic quantification as an atomic operation of the calculus we establish a connection between the calculus and obligation games. The calculus we consider is strong enough to encode well-known logics such as PCTL and PCTL. Its game...
Deontic logic is devoted to the study of logical properties of normative predicates such as permission, obligation and prohibition. Since it is usual to apply these predicates to actions, many deontic logicians have proposed formalisms where actions and action combinators are present. Some standard action combinators are action conjunction, choice...
In component-based design, components and communication mechanisms have a different nature; while the former represent the agents that cooperate to fulfill a certain goal, the latter formalise the communication mechanism through which these agents interact. A proper formalisation of the heterogeneity that arises from this difference requires one to...
In this paper we investigate further the tableaux system for a deontic action
logic we presented in previous work. This tableaux system uses atoms (of a
given boolean algebra of action terms) as labels of formulae, this allows us to
embrace parallel execution of actions and action complement, two action
operators that may present difficulties in th...
In this paper, we study the problem of synthesizing fault-tolerant components from specifications, i.e., the problem of automatically constructing a fault-tolerant component implementation from a logical specification of the component, and the system’s required level of fault-tolerance. We study a specific level of fault-tolerance: masking toleranc...
In this paper, we study a formal characterization of fault-tolerant behaviors of systems via simulation relations. This formalization makes use of particular notions of simulation and bisimulation in order to compare the executions of a system that exhibit faults with executions where no faults occur. By employing variations of standard (bi)simulat...
Since its introduction by Goguen and Burstall in 1984, the theory of institutions has been one of the most widely accepted formalizations of abstract model theory. This work was extended by a number of researchers, José Meseguer among them, who presented general logics, an abstract framework that complements the model theoretical view of institutio...
In this paper, we study a formalisation of specification structuring mechanisms used in Z. These mechanisms are traditionally understood as syntactic transformations. In contrast, we present a characterisation of Z structuring mechanisms which takes into account the semantic counterpart of their typical syntactic descriptions, based on category the...
In this paper, we investigate formal mechanisms to enable designers to decompose specifications (stated in a given logic) into several interacting components in such a way that the composition of these components preserves their encapsulation and internal non-determinism. The preservation of encapsulation (or locality) enables a modular form of rea...
In this paper, we present a characterization of a propositional deontic temporal logic into μ-calculus. This logic has been proposed to specify and reason about fault tolerant systems, and even though is known to be decidable, no tool realizing its corresponding decision procedure has been developed. A main motivation for our work is enabling for t...
With the increasing demand for highly dependable and constantly available systems, being able to reason about faults and their impact on systems is gaining considerable attention. In this paper, we are concerned with the provision of a logic especially tailored for describing fault tolerance properties, and supporting automated verification. This l...
In this article we describe a first-order extension of the deontic logic introduced in [1]. The main useful and interesting characteristic of this extended logic is that it not only provides the standard quantifiers of first-order logic, but it also has similar algebraic operators for actions as for the propositional version of [1]. Since the pione...
We introduce a deontic action logic and its axiomatization. This logic has some useful properties (soundness, completeness, compactness and decidability), extending the properties usually associated with such logics. Though the propositional version of the logic is quite expressive, we augment it with temporal operators, and we outline an axiomatic...
Deontic Logic was introduced in the first half of the last century to formalize aspects of legal reasoning. Since then a lot of effort has gone into improving the formalism(s) and widening their applicability, including in Computer Science and Software Engineering. One strand of work has focused on the use of an action based approach to deontic ope...
In this paper we outline the main characteristics of a deontic logic, which we claim is useful for the modeling of and reasoning
about fault-tolerance and related concepts. Towards this goal, we describe a temporal extension of this formalism together
with some of its properties. We use two different examples to show how some fault-tolerance concep...
In [1] and [2] we have introduced a novel deontic action logic for reasoning about fault-tolerance. In this paper we present
a tableaux method for this logic; this proof system is sound and complete, and because the logic has the usual boolean operators
on actions, it also allows us to deal successfully with action complement and parallel execution...
In this paper we present a propositional deontic logic, with the goal of using it to specify fault-tolerant systems, and an
axiomatization of it. We prove several results about this logic: completeness, soundness, compactness and decidability. The
main technique used during the completeness proof is based on standard techniques for modal logics, bu...
In the present paper we use a variation of a well-known example (dining philosophers) to illustrate how deontic logics can be used to specify, and verify, systems with fault- tolerant characteristics. Towards this goal, we first introduce our own version of a prepositional deontic logic, and then some of its most important meta properties are descr...
In this paper we describe a methodology to trans- late BON (architectural) designs to Alloy specifi- cations. The main virtue of this process is that it can be implemented by means of software tools. The utilization of this methodology during the software development allows designers to validate different kinds of properties over their BON mod- els...
In this paper we investigate formal mechanisms to allow designers to decompose specifications (stated in a given logic) into
several components. The basic ideas come from [1] where some notions from category theory are used to put together logical
specifications. In this setting the concept of locality allows designers to write separate specificati...
Dynamic reconfiguration, understood as the ability to manage at run time the live components and how these interact in a system,
is a feature that is crucial in various languages and computing paradigms, in particular in object orientation. In this paper,
we study a categorical approach for characterising dynamic reconfiguration in a logical specif...
In previous work (7), we have presented a deontic logic to specify and verify fault-tolerant software. However, this logic lacks the no- tion of module or component. In this report we investigate formal mechanisms to allow designers to decompose a specification (stated in this logic) into several components. Furthermore, because the no- tion of vio...
Resumen El desarrollo de sistemas de software confiables exige la utilización de herramientas que posibiliten razonar rigurosamente acerca de su corrección y consistencia. Este tipo de análisis revela su importancia crítica cuando los sistemas evolucionan en el tiempo, sufriendo modificaciones que pueden alterar seriamente su eficacia o aún volverl...