Results 1  10
of
12
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 106 (9 self)
 Add to MetaCart
(Show Context)
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 byproduct 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 58 (8 self)
 Add to MetaCart
(Show Context)
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 ParisSud, 91405 ORSAY cedex, France. Email: comon@lri.lri.fr i Contents 1 Syntax 5 1.1 Basic Defini...
Adaptive Pattern Matching
, 1992
"... Pattern matching is an important operation used in many applications such as functional programming, rewriting and rulebased expert systems. By preprocessing the patterns into a DFAlike automaton, we can rapidly select the matching pattern(s) in a single scan of the relevant portions of the inp ..."
Abstract

Cited by 25 (5 self)
 Add to MetaCart
Pattern matching is an important operation used in many applications such as functional programming, rewriting and rulebased expert systems. By preprocessing the patterns into a DFAlike 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 lefttoright 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
(Show Context)
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 an abstract objectoriented model to a readytouse embedded system controller
 In: Dollas and Wills (2001
, 2001
"... We present an example of a construction of an embedded software system a controller from the formal specification to executable code. The COOPN (Concurrent Object Oriented Petri Net) formal specification language is used for modelling the controller and the associated hardware system with the inh ..."
Abstract

Cited by 4 (2 self)
 Add to MetaCart
(Show Context)
We present an example of a construction of an embedded software system a controller from the formal specification to executable code. The COOPN (Concurrent Object Oriented Petri Net) formal specification language is used for modelling the controller and the associated hardware system with the inherent limitation of its physical components. COOPN formal language is based on coordinated algebraic Petri nets. The COOPN model can be used to verify some properties of the controller in the concrete physical environnement. This is achieved by constrained animation of the valid prototype produced by automatic code generation. The possibility to incrementally refine the generated code can be used to obtain a more efficient implementation. 1
From Formal Specifications to ReadytoUse Software Components: The Concurrent Object Oriented Petri Net Approach
 Second International Conference on Application of Concurrency to System Design, Los Alamitos
, 2001
"... COOPN (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 COOPN specification. We focus our discussion on the g ..."
Abstract

Cited by 3 (2 self)
 Add to MetaCart
(Show Context)
COOPN (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 COOPN specification. We focus our discussion on the generation of executable code for COOPN classes. COOPN classes are defined using Petri Nets. The main problems arise when implementing synchronization and nondeterminism of COOPN 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 objectoriented implementation languages with a component architecture. 1.
Abstract A Toolbox for the Verification of LOTOS Programs
"... This paper presents the tools ALDEBARAN, CRSAR, CESAR.ADT and CL fiOPilTRE 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 multi ..."
Abstract
 Add to MetaCart
This paper presents the tools ALDEBARAN, CRSAR, CESAR.ADT and CL fiOPilTRE 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.
In proceedings IEEE International conference on Systems, Man and Cybernetics "SMC'96", Beijing, China, Oct. 1417, 1996.
"... This paper presents several extensions to a new evolutive prototyping process, called objectoriented mixed prototyping. Our application field is complex distributed systems modelled by the means of COOPN, a hierarchical algebraic Petri net language. COOPN being a strong synchronous language, we ..."
Abstract
 Add to MetaCart
This paper presents several extensions to a new evolutive prototyping process, called objectoriented mixed prototyping. Our application field is complex distributed systems modelled by the means of COOPN, a hierarchical algebraic Petri net language. COOPN being a strong synchronous language, we also show an original implementation scheme for its highlevel communication model in heterogeneous widearea 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...