196 research outputs found
An Institutional Framework for Heterogeneous Formal Development in UML
We present a framework for formal software development with UML. In contrast
to previous approaches that equip UML with a formal semantics, we follow an
institution based heterogeneous approach. This can express suitable formal
semantics of the different UML diagram types directly, without the need to map
everything to one specific formalism (let it be first-order logic or graph
grammars). We show how different aspects of the formal development process can
be coherently formalised, ranging from requirements over design and Hoare-style
conditions on code to the implementation itself. The framework can be used to
verify consistency of different UML diagrams both horizontally (e.g.,
consistency among various requirements) as well as vertically (e.g.,
correctness of design or implementation w.r.t. the requirements)
An Institution for Simple UML State Machines
We present an institution for UML state machines without hierarchical states.
The interaction with UML class diagrams is handled via institutions for guards
and actions, which provide dynamic components of states (such as valuations of
attributes) but abstract away from details of class diagrams. We also study a
notion of interleaving product, which captures the interaction of several state
machines. The interleaving product construction is the basis for a semantics of
composite structure diagrams, which can be used to specify the interaction of
state machines. This work is part of a larger effort to build a framework for
formal software development with UML, based on a heterogeneous approach using
institutions.Comment: 24 pages. arXiv admin note: substantial text overlap with
arXiv:1403.774
Algebraic Properties of Qualitative Spatio-Temporal Calculi
Qualitative spatial and temporal reasoning is based on so-called qualitative
calculi. Algebraic properties of these calculi have several implications on
reasoning algorithms. But what exactly is a qualitative calculus? And to which
extent do the qualitative calculi proposed meet these demands? The literature
provides various answers to the first question but only few facts about the
second. In this paper we identify the minimal requirements to binary
spatio-temporal calculi and we discuss the relevance of the according axioms
for representation and reasoning. We also analyze existing qualitative calculi
and provide a classification involving different notions of a relation algebra.Comment: COSIT 2013 paper including supplementary materia
A coalgebraic perspective on logical interpretations
In Computer Science stepwise refinement of algebraic specifications is a well-known formal methodology for rigorous program development. This paper illustrates how techniques from Algebraic Logic, in particular that of interpretation, understood as a multifunction that preserves and reflects logical consequence, capture a number of relevant transformations in the context of software design, reuse, and adaptation, difficult to deal with in classical approaches. Examples include data encapsulation and the decomposition of operations into atomic transactions. But if interpretations open such a new research avenue in program refinement, (conceptual) tools are needed to reason about them. In this line, the paper’s main contribution is a study of the correspondence between logical interpretations and morphisms of a particular kind of coalgebras. This opens way to the use of coalgebraic constructions, such as simulation and bisimulation, in the study of interpretations between (abstract) logics.Fundação para a Ciência e a Tecnologia (FCT
A Foundational View on Integration Problems
The integration of reasoning and computation services across system and
language boundaries is a challenging problem of computer science. In this
paper, we use integration for the scenario where we have two systems that we
integrate by moving problems and solutions between them. While this scenario is
often approached from an engineering perspective, we take a foundational view.
Based on the generic declarative language MMT, we develop a theoretical
framework for system integration using theories and partial theory morphisms.
Because MMT permits representations of the meta-logical foundations themselves,
this includes integration across logics. We discuss safe and unsafe integration
schemes and devise a general form of safe integration
Asymmetric Combination of Logics is Functorial: A Survey
Asymmetric combination of logics is a formal process that develops the characteristic features of a specific logic on top of another one. Typical examples include the development of temporal, hybrid, and probabilistic dimensions over a given base logic. These examples are surveyed in the paper under a particular perspective—that this sort of combination of logics possesses a functorial nature. Such a view gives rise to several interesting questions. They range from the problem of combining translations (between logics), to that of ensuring property preservation along the process, and the way different asymmetric combinations can be related through appropriate natural transformations
Implicit complexity for coinductive data: a characterization of corecurrence
We propose a framework for reasoning about programs that manipulate
coinductive data as well as inductive data. Our approach is based on using
equational programs, which support a seamless combination of computation and
reasoning, and using productivity (fairness) as the fundamental assertion,
rather than bi-simulation. The latter is expressible in terms of the former. As
an application to this framework, we give an implicit characterization of
corecurrence: a function is definable using corecurrence iff its productivity
is provable using coinduction for formulas in which data-predicates do not
occur negatively. This is an analog, albeit in weaker form, of a
characterization of recurrence (i.e. primitive recursion) in [Leivant, Unipolar
induction, TCS 318, 2004].Comment: In Proceedings DICE 2011, arXiv:1201.034
Many-Valued Institutions for Constraint Specification
We advance a general technique for enriching logical systems with soft constraints, making them suitable for specifying complex software systems where parts are put together not just based on how they meet certain functional requirements but also on how they optimise certain constraints. This added expressive power is required, for example, for capturing quality attributes that need to be optimised or, more generally, for formalising what are usually called service-level agreements. More specifically, we show how institutions endowed with a graded semantic consequence can accommodate soft-constraint satisfaction problems. We illustrate our approach by showing how, in the context of service discovery, one can quantify the compatibility of two specifications and thus formalise the selection of the most
promising provider of a required resource.Peer Reviewe
- …