25 research outputs found
HeteroGenius: A Framework for Hybrid Analysis of Heterogeneous Software Specifications
Nowadays, software artifacts are ubiquitous in our lives being an essential
part of home appliances, cars, cell phones, and even in more critical
activities like aeronautics and health sciences. In this context software
failures may produce enormous losses, either economical or, in the worst case,
in human lives. Software analysis is an area in software engineering concerned
with the application of diverse techniques in order to prove the absence of
errors in software pieces. In many cases different analysis techniques are
applied by following specific methodological combinations that ensure better
results. These interactions between tools are usually carried out at the user
level and it is not supported by the tools. In this work we present
HeteroGenius, a framework conceived to develop tools that allow users to
perform hybrid analysis of heterogeneous software specifications.
HeteroGenius was designed prioritising the possibility of adding new
specification languages and analysis tools and enabling a synergic relation of
the techniques under a graphical interface satisfying several well-known
usability enhancement criteria. As a case-study we implemented the
functionality of Dynamite on top of HeteroGenius.Comment: In Proceedings LAFM 2013, arXiv:1401.056
Refinement by interpretation in {\pi}-institutions
The paper discusses the role of interpretations, understood as multifunctions
that preserve and reflect logical consequence, as refinement witnesses in the
general setting of pi-institutions. This leads to a smooth generalization of
the refinement-by-interpretation approach, recently introduced by the authors
in more specific contexts. As a second, yet related contribution a basis is
provided to build up a refinement calculus of structured specifications in and
across arbitrary pi-institutions.Comment: In Proceedings Refine 2011, arXiv:1106.348
Heterogeneous Theories and the Heterogeneous Tool Set
Heterogeneous multi-logic theories arise in different contexts: they
are needed for the specification of large software systems, as well as
for mediating between different ontologies. This is because large
theories typically involve different aspects that are best specified
in different logics (like equational logics, description logics,
first-order logics, higher-order logics, modal logics), but also
because different formalisms are in practical use (like RDF, OWL,
EML). Using heterogeneous theories, different formalims being
developed at different sites can be related, i.e. there is a formal
interoperability among languages and tools. In many cases,
specialized languages and tools have their strengths in particular
aspects. Using heterogeneous theories, these strengths can be combined
with comparably small effort. By contrast, a true combination
of all the involved logics into a single logic would be
too complex (or even inconsistent) in many cases.
We propose to use emph{institutions} as a formalization
of the notion of logical system. Institutions can be related by so-called
institution morphsims and comorphisms. Any graph of institutions and
(co)morphisms can be flattened to a so-called emph{Grothendieck
institution}, which is kind of disjoint union of all the logics,
enriched with connections via the (co)morphisms.
This semantic basis for heterogeneous theories is complemented by
the heterogeneous tool set, which provides tool support.
Based on an object-oriented interface for institutions
(using type classes in Haskell), it implements the Grothendieck
institution and provides a heterogeneous parser, static analysis and
proof support for heterogeneous theories. This is based on
parsers, static analysers and proof support for the individual
institutions, and on a heterogeneous proof calculus for theories
in the Grothendieck institution.
See also the Hets web page: http://www.tzi.de/cofi/het
A New Approach of the Metatheory of Correct Programming. Rationale
This is first of a series of four papers, which are forming a foundation of a mathematical theory and metamathematics of correct computer programming. This papers contains the rationale of the choosing concepts in following three papers
Specifying with syntactic theory functors
We propose a framework, syntactic theory functors (STFs), for creating syntactic structuring mechanisms for specification languages. Good support for common reuse patterns is important for systematically developing specifications for large systems. Though immaterial to foundational theory, lack of support otherwise causes lengthy writing of boilerplate code or repeated adaptation from one context to another. We present STFs in the context of the Goguen & Burstall institution theory. This theory captures the essential structure of ontologies, modelling and formal specifications (OMS). In particular it provides powerful structuring mechanisms that are independent of the specification formalism, i.e., they are institution-independent. The presented STF framework is institution-independent as well. As such it encompasses many approaches to software and information systems. STFs subsume the standard institution-independent structuring mechanisms, and open up new ways of reusing existing and structuring new specifications. In this, STFs subsume and enrich the tool-set of âgood practicesâ, which includes separation of concerns, ease of reuse of specification-text, and improved theorem proving support. STFs are aimed at structuring and reuse beyond the classical mechanisms. However, most STFs are institution-specific and support specific reuse patterns in that institution. With such institution-specific STFs it is possible to incrementally grow more complex institutions from simpler ones. This is very much needed when developing ontologies or specification languages for a new domain. In this paper, we motivate STFs with examples in Casl, the common standard algebraic specification language. We further demonstrate how STFs can ease specification through capturing repeated constructions once and for all as patterns formulated as STFs
Encoding hybridised institutions into first order logic
"First published online: 12 November 2014"A âhybridizationâ of a logic, referred to as the base logic, consists of developing the characteristic features of hybrid logic on top of the respective base logic, both at the level of syntax (i.e. modalities, nominals, etc.) and of the semantics (i.e. possible worlds). By âhybridized institutionsâ we mean the result of this process when logics are treated abstractly as institutions (in the sense of the institution theory of Goguen and Burstall). This work develops encodings of hybridized institutions into (many-sorted) first order logic (abbreviated FOL) as a âhybridizationâ process of abstract encodings of institutions into FOL, which may be seen as an abstraction of the well known standard translation of modal logic into first order logic. The concept of encoding employed by our work is that of comorphism from institution theory, which is a rather comprehensive concept of encoding as it features encodings both of the syntax and of the semantics of logics/institutions. Moreover we consider the so-called theoroidal version of comorphisms that encode signatures to theories, a feature that accommodates a wide range of concrete applications. Our theory is also general enough to accomodate various constraints on the possible worlds semantics as well a wide variety of quantifications. We also provide pragmatic sufficient conditions for the conservativity of the encodings to be preserved through the hybridization process, which provides the possibility to shift a formal verification process from the hybridized institution to FOL.We thank both Till Mossakowski and Andrzej Tarlecki for the technical suggestion of using the predicates D. The work of the first author has been supported by a grant of the Romanian National Authority for Scientific Research, CNCS-UEFISCDI, project number PN-II-ID-PCE-2011-3-0439. The work of the second author was funded by the European Regional Development Fund through the COMPETE Programme, and by the Portuguese Foundation for Science and Technology through the projects FCOMP-01-0124-FEDER-028923 and NORTE-01-0124-FEDER-000060