Results 1 -
7 of
7
Equational Problems and Disunification
- Journal of Symbolic Computation
, 1989
"... Roughly speaking, an equational problem is a first order formula whose only predicate symbol is =. We propose some rules for the transformation of equational problems and study their correctness in various models. Then, we give completeness results with respect to some “simple ” problems called solv ..."
Abstract
-
Cited by 94 (9 self)
- Add to MetaCart
Roughly speaking, an equational problem is a first order formula whose only predicate symbol is =. We propose some rules for the transformation of equational problems and study their correctness in various models. Then, we give completeness results with respect to some “simple ” problems called solved forms. Such completeness results still hold when adding some control which moreover ensures termination. The termination proofs are given for a “weak ” control and thus hold for the (large) class of algorithms obtained by restricting the scope of the rules. Finally, it must be noted that a by-product of our method is a decision procedure for the validity in the Herbrand Universe of any
Disunification: a Survey
- Computational Logic: Essays in Honor of Alan
, 1991
"... Solving an equation in an algebra of terms is known as unification. Solving more complex formulas combining equations and involving in particular negation is called disunification. With such a broad definition, many works fall into the scope of disunification. The goal of this paper is to survey the ..."
Abstract
-
Cited by 52 (9 self)
- Add to MetaCart
Solving an equation in an algebra of terms is known as unification. Solving more complex formulas combining equations and involving in particular negation is called disunification. With such a broad definition, many works fall into the scope of disunification. The goal of this paper is to survey these works and bring them together in a same framework. R'esum'e On appelle habituellement (algorithme d') unification un algorithme de r'esolution d'une 'equation dans une alg`ebre de termes. La r'esolution de formules plus complexes, comportant en particulier des n'egations, est appel'ee ici disunification. Avec une d'efinition aussi 'etendue, de nombreux travaux peuvent etre consid'er'es comme portant sur la disunification. L'objet de cet article de synth`ese est de rassembler tous ces travaux dans un meme formalisme. Laboratoire de Recherche en Informatique, Bat. 490, Universit'e de Paris-Sud, 91405 ORSAY cedex, France. E-mail: comon@lri.lri.fr i Contents 1 Syntax 5 1.1 Basic Defini...
A Toolbox for the Verification of LOTOS Programs
, 1992
"... This paper presents the tools Ald' ebaran, Caesar, Caesar.adt and Cl' eop atre which constitute a toolbox for compiling and verifying Lotos programs. The principles of these tools are described, as well as their performances and limitations. Finally, the formal verification of the rel/REL atomic mu ..."
Abstract
-
Cited by 32 (4 self)
- Add to MetaCart
This paper presents the tools Ald' ebaran, Caesar, Caesar.adt and Cl' eop atre which constitute a toolbox for compiling and verifying Lotos programs. The principles of these tools are described, as well as their performances and limitations. Finally, the formal verification of the rel/REL atomic multicast protocol is given as an example to illustrate the practical use of the toolbox. Keywords: reliability, formal methods, Lotos, verification, validation, model-based methods, modelchecking, transition systems, bisimulations, temporal logics, diagnostics Introduction There is an increasing need for reliable software, which is especially critical in some areas such as communication protocols, distributed systems, real-time control systems, and hardware synthesis systems. It is now agreed that reliability can only be achieved through the use of rigorous design techniques. This has motivated a lot of research on specification formalisms and associated verification methods and tools. Ver...
Adaptive Pattern Matching
, 1992
"... Pattern matching is an important operation used in many applications such as functional programming, rewriting and rule-based expert systems. By preprocessing the patterns into a DFA-like automaton, we can rapidly select the matching pattern(s) in a single scan of the relevant portions of the inp ..."
Abstract
-
Cited by 20 (4 self)
- Add to MetaCart
Pattern matching is an important operation used in many applications such as functional programming, rewriting and rule-based expert systems. By preprocessing the patterns into a DFA-like automaton, we can rapidly select the matching pattern(s) in a single scan of the relevant portions of the input term. This automaton is typically based on left-to-right traversal of the patterns. By adapting the traversal order to suit the set of input patterns, it is possible to considerably reduce the space and matching time requirements of the automaton.
Elimination of Negation in Term Algebras
- In Mathematical Foundations of Computer Science
, 1991
"... We give an informal review of the problem of eliminating negation in term algebras and its applications. The initial results appear to be very specialized with complex combinatorial proofs. Nevertheless they have applications and relevance to a number of important areas: unification, learning, ab ..."
Abstract
-
Cited by 6 (0 self)
- Add to MetaCart
We give an informal review of the problem of eliminating negation in term algebras and its applications. The initial results appear to be very specialized with complex combinatorial proofs. Nevertheless they have applications and relevance to a number of important areas: unification, learning, abstract data types and rewriting systems, constraints and constructive negation in logic languages. 1 Initial Motivation: Learning Plotkin [36] proposed a formal model for inductive inference which was based upon Popplestone 's suggestion that Since unification is useful in automatic deduction, its dual might prove helpful for induction. A similar formalism was independently introduced by Reynolds [38], who was more concerned with its algebraic properties than with its applications. The algebraic properties were further investigated by Huet [9, 10], who also studied the case of the infinitary Herbrand universe. The key result in this theory is that, for any set of terms, there exists a...
From Formal Specifications to Ready-to-Use Software Components: The Concurrent Object Oriented Petri Net Approach
- Second International Conference on Application of Concurrency to System Design, Los Alamitos
, 2001
"... CO-OPN (Concurrent Object Oriented Petri Net) is a formal specification language for modelling distributed systems; it is based on coordinated algebraic Petri nets. In this paper we describe a method for generating an executable prototype from a CO-OPN specification. We focus our discussion on the g ..."
Abstract
-
Cited by 1 (0 self)
- Add to MetaCart
CO-OPN (Concurrent Object Oriented Petri Net) is a formal specification language for modelling distributed systems; it is based on coordinated algebraic Petri nets. In this paper we describe a method for generating an executable prototype from a CO-OPN specification. We focus our discussion on the generation of executable code for COOPN classes. CO-OPN classes are defined using Petri Nets. The main problems arise when implementing synchronization and non-determinism of CO-OPN classes in procedural languages. Our method proposes a solution to these problems. Another interesting aspect of our method is the easy integration of a generated prototype into any existing system. This paper focuses on the generation of Java code that fulfils the Java Beans component architecture, however our approach is also applicable to other object-oriented implementation languages with a component architecture. 1.
In proceedings IEEE International conference on Systems, Man and Cybernetics "SMC'96", Beijing, China, Oct. 14-17, 1996.
"... This paper presents several extensions to a new evolutive prototyping process, called object-oriented mixed prototyping. Our application field is complex distributed systems modelled by the means of CO-OPN, a hierarchical algebraic Petri net language. CO-OPN being a strong synchronous language, we ..."
Abstract
- Add to MetaCart
This paper presents several extensions to a new evolutive prototyping process, called object-oriented mixed prototyping. Our application field is complex distributed systems modelled by the means of CO-OPN, a hierarchical algebraic Petri net language. CO-OPN being a strong synchronous language, we also show an original implementation scheme for its high-level communication model in heterogeneous wide-area networks. 1. INTRODUCTION The advantage of formal methods resides by definition in their unambiguous nature. This allows them to be supported by tools which automatically verify the properties, extract useful information or transform them into other representations. The benefits of formal specifications become even more evident when they can be used continuously through several stages of the software development cycle, like specification, implementation, integration or testing. Our purpose is to fill the gap that currently exists between the phase where a specification is simulated...

