40 research outputs found
Prototyping Formal System Models with Active Objects
We propose active object languages as a development tool for formal system
models of distributed systems. Additionally to a formalization based on a term
rewriting system, we use established Software Engineering concepts, including
software product lines and object orientation that come with extensive tool
support. We illustrate our modeling approach by prototyping a weak memory
model. The resulting executable model is modular and has clear interfaces
between communicating participants through object-oriented modeling.
Relaxations of the basic memory model are expressed as self-contained variants
of a software product line. As a modeling language we use the formal active
object language ABS which comes with an extensive tool set. This permits rapid
formalization of core ideas, early validity checks in terms of formal invariant
proofs, and debugging support by executing test runs. Hence, our approach
supports the prototyping of formal system models with early feedback.Comment: In Proceedings ICE 2018, arXiv:1810.0205
ACUOS: A System for Order-Sorted Modular ACU Generalization
[ES] La generalizaci贸n, tambi茅n denominada anti-unificaci贸n, es la operaci贸n dual de la unificaci贸n. Dados dos t茅rminos t y t' , un generalizador es un t茅rmino t'' del cual t y t' son instancias de sustituci贸n. El concepto dual del unificador m谩s general (mgu) es el de generalizador menos general (lgg). En esta tesina extendemos el conocido algoritmo de generalizaci贸n sin tipos a, primero, una configuraci贸n order-sorted con sorts, subsorts y polimorfismo de subtipado; en segundo lugar, la extendemos para soportar generalizaci贸n m贸dulo teor铆as ecuacionales, donde los s铆mbolos de funci贸n pueden obedecer cualquier combinaci贸n de axiomas de asociatividad, conmutatividad e identidad (incluyendo el conjunto
vac铆o de dichos axiomas); y, en tercer lugar, a la combinaci贸n de ambos, que resulta en un algoritmo modular de generalizaci贸n order-sorted ecuacional. A diferencia de las configuraciones sin tipos, en nuestro marco te贸rico en general el lgg no es 煤nico, lo que se debe tanto al tipado como a los axiomas ecuacionales. En su lugar, existe un conjunto finito y m铆nimo de lggs, tales que cualquier otra generalizaci贸n tiene a alguno de ellos como instancia. Nuestros algoritmos de generalizaci贸n se expresan mediante reglas de inferencia para las cuales damos demostraciones de correcci贸n. Ello abre la puerta a nuevas aplicaciones en campos como la evaluaci贸n parcial, la s铆ntesis de programas, la
miner铆a de datos y la demostraci贸n de teoremas para sistemas de razonamiento ecuacional y lenguajes tipados basados en reglas tales como ASD+SDF, Elan, OBJ, CafeOBJ y Maude.
Esta tesis tambi茅n describe una herramienta para el c贸mputo automatizado de los generalizadores de un conjunto dado de estructuras en un lenguaje tipado m贸dulo un conjunto de axiomas dado. Al soportar la combinaci贸n modular de atributos ecuacionales de asociatividad, conmutatividad y existencia de elemento neutro (ACU) para s铆mbolos
de funci贸n arbitrarios, la generalizaci贸n ACU modular aporta suficiente poder expresivo a la
generalizaci贸n ordinaria para razonar sobre estructuras de datos tipadas tales como listas, conjuntos y multiconjuntos. La t茅cnica ha sido implementada con generalidad y eficiencia en el sistema ACUOS y puede ser f谩cilmente integrada con software de terceros.[EN] Generalization, also called anti-uni cation, is the dual of uni cation.
Given terms t and t
0
, a generalization is a term t
00
of which t and t
0
are
substitution instances. The dual of a most general uni er (mgu) is that
of least general generalization (lgg). In this thesis, we extend the known
untyped generalization algorithm to, rst, an order-sorted typed setting
with sorts, subsorts, and subtype polymorphism; second, we extend it to
work modulo equational theories, where function symbols can obey any
combination of associativity, commutativity, and identity axioms (includ-
ing the empty set of such axioms); and third, to the combination of both,
which results in a modular, order-sorted equational generalization algo-
rithm. Unlike the untyped case, there is in general no single lgg in our
framework, due to order-sortedness or to the equational axioms. Instead,
there is a nite, minimal set of lggs, so that any other generalization has
at least one of them as an instance. Our generalization algorithms are
expressed by means of inference systems for which we give proofs of cor-
rectness. This opens up new applications to partial evaluation, program
synthesis, data mining, and theorem proving for typed equational rea-
soning systems and typed rule-based languages such as ASF+SDF, Elan,
OBJ, Cafe-OBJ, and Maude.
This thesis also describes a tool for automatically computing the gen-
eralizers of a given set of structures in a typed language modulo a set
of axioms. By supporting the modular combination of associative, com-
mutative and unity (ACU) equational attributes for arbitrary function
symbols, modular ACU generalization adds enough expressive power to
ordinary generalization to reason about typed data structures such as
lists, sets and multisets. The ACU generalization technique has been
generally and e ciently implemented in the ACUOS system and can be
easily integrated with third-party software.Espert Real, J. (2012). ACUOS: A System for Order-Sorted Modular ACU Generalization. http://hdl.handle.net/10251/1921
Service-oriented logic programming
We develop formal foundations for notions and mechanisms needed to support
service-oriented computing. Our work builds on recent theoretical advancements
in the algebraic structures that capture the way services are orchestrated and
in the processes that formalize the discovery and binding of services to given
client applications by means of logical representations of required and
provided services. We show how the denotational and the operational semantics
specific to conventional logic programming can be generalized using the theory
of institutions to address both static and dynamic aspects of service-oriented
computing. Our results rely upon a strong analogy between the discovery of a
service that can be bound to an application and the search for a clause that
can be used for computing an answer to a query; they explore the manner in
which requests for external services can be described as service queries, and
explain how the computation of their answers can be performed through
service-oriented derivatives of unification and resolution, which characterize
the binding of services and the reconfiguration of applications
A Modular Order-sorted Equational Generalization Algorithm
Generalization, also called anti-unification, is the dual of unification. Given terms t and t
,
a generalizer is a term t of which t and t are substitution instances. The dual of
a most general unifier (mgu) is that of least general generalizer (lgg). In this work, we
extend the known untyped generalization algorithm to, first, an order-sorted typed setting
with sorts, subsorts, and subtype polymorphism; second, we extend it to work modulo
equational theories, where function symbols can obey any combination of associativity,
commutativity, and identity axioms (including the empty set of such axioms); and third, to
the combination of both, which results in a modular, order-sorted equational generalization
algorithm. Unlike the untyped case, there is in general no single lgg in our framework, due
to order-sortedness or to the equational axioms. Instead, there is a finite, minimal and
complete set of lggs, so that any other generalizer has at least one of them as an instance.
Our generalization algorithms are expressed by means of inference systems for which we
give proofs of correctness. This opens up new applications to partial evaluation, program
synthesis, and theorem proving for typed equational reasoning systems and typed rulebased
languages such as ASF+SDF, Elan, OBJ, Cafe-OBJ, and Maude.
漏 2014 Elsevier Inc. All rights reserved.
1.M. Alpuente, S. Escobar, and J. Espert have been partially supported by the EU (FEDER) and the Spanish MEC/MICINN under grant TIN 2010-21062-C02-02, and by Generalitat Valenciana PROMETEO2011/052. J. Meseguer has been supported by NSF Grants CNS 09-04749, and CCF 09-05584.Alpuente Frasnedo, M.; Escobar Rom谩n, S.; Espert Real, J.; Meseguer, J. (2014). A Modular Order-sorted Equational Generalization Algorithm. Information and Computation. 235:98-136. https://doi.org/10.1016/j.ic.2014.01.006S9813623
Minimum-Cost Reachability for Priced Timed Automata
This paper introduces the model of linearly priced timed automata as an extension of timed automata, with prices on both transitions and locations. For this model we consider the minimum-cost reachability problem: i.e. given a linearly priced timed automaton and a targetstate, determine the minimum cost of executions from the initial state to the target state. This problem generalizes the minimum-time reachability problem for ordinary timed automata. We prove decidability of this problem by offering an algorithmic solution, which is based on a combination of branch-and-bound techniques and a new notion of priced regions. The latter allows symbolic representation and manipulation of reachable states together with the cost of reaching them.Keywords: Timed Automata, Verification, Data Structures, Algorithms,Optimization
Symbolic Analysis of Maude Theories with Narval
[EN] Concurrent functional languages that are endowed with symbolic reasoning capabilities such as Maude offer a high-level, elegant, and efficient approach to programming and analyzing complex, highly nondeterministic software systems. Maude's symbolic capabilities are based on equational unification and narrowing in rewrite theories, and provide Maude with advanced logic programming capabilities such as unification modulo user-definable equational theories and symbolic reachability analysis in rewrite theories. Intricate computing problems may be effectively and naturally solved in Maude thanks to the synergy of these recently developed symbolic capabilities and classical Maude features, such as: (i) rich type structures with sorts (types), subsorts, and overloading; (ii) equational rewriting modulo various combinations of axioms such as associativity, commutativity, and identity; and (iii) classical reachability analysis in rewrite theories. However, the combination of all of these features may hinder the understanding of Maude symbolic computations for non-experienced developers. The purpose of this article is to describe how programming and analysis of Maude rewrite theories can be made easier by providing a sophisticated graphical tool called Narval that supports the fine-grained inspection of Maude symbolic computations.This work has been partially supported by the EU (FEDER) and the Spanish MCIU under grant RTI2018-094403-B-C32, by the Spanish Generalitat Valenciana under grants PROMETEO/2019/098 and APOSTD/2019/127, and by the US Air Force Office of Scientific Research under award number FA9550-17-1-0286.Alpuente Frasnedo, M.; Escobar Rom谩n, S.; Sapi帽a-Sanchis, J.; Ballis, D. (2019). Symbolic Analysis of Maude Theories with Narval. Theory and Practice of Logic Programming. 19(5-6):874-890. https://doi.org/10.1017/S1471068419000243S874890195-