Results 1  10
of
54
C.: Recognizable formal power series on trees
 Theoret. Comput. Sci
, 1982
"... Trees are a very basic object in computer science. They intervene in nearly a;ly domain, and they are studied for their own, or used to represent conveniently a given situation. There are at least three directions where investigations on trees themselves are motivated, and this for different reasons ..."
Abstract

Cited by 56 (0 self)
 Add to MetaCart
Trees are a very basic object in computer science. They intervene in nearly a;ly domain, and they are studied for their own, or used to represent conveniently a given situation. There are at least three directions where investigations on trees themselves are motivated, and this for different reasons. First, the notion of tree is the basis of
Locating Matches of Tree Patterns in Forests
 Foundations of Software Technology and Theoretical Computer Science, Lecture Notes in Computer Science
, 1998
"... . We deal with matching and locating of patterns in forests of variable arity. A pattern consists of a structural and a contextual condition for subtrees of a forest, both of which are given as tree or forest regular languages. We use the notation of constraint systems to uniformly specify both kind ..."
Abstract

Cited by 54 (5 self)
 Add to MetaCart
. We deal with matching and locating of patterns in forests of variable arity. A pattern consists of a structural and a contextual condition for subtrees of a forest, both of which are given as tree or forest regular languages. We use the notation of constraint systems to uniformly specify both kinds of conditions. In order to implement pattern matching we introduce the class of pushdown forest automata. We identify a special class of contexts such that not only pattern matching but also locating all of a forest's subtrees matching in context can be performed in a single traversal. We also give a method for computing the reachable states of an automaton in order to minimize the size of transition tables. 1 Introduction In Standard Generalized Markup Language (SGML) [Gol90] documents are represented as trees. A node in a document tree may have arbitrarily many children, independent of the symbol at that node. A sequence of documents or subdocuments is called a forest. A main task in do...
Hedge automata: a formal model for XML schemata
, 1999
"... Introduction This note shows preliminaries of the hedge automaton theory. In the XML community, this theory has been recently recognized as a simple but powerful model for XML schemata. In particular, the design of two schema languages for XML, namely RSL(Regular Schema Language) and DSD (Document ..."
Abstract

Cited by 38 (2 self)
 Add to MetaCart
Introduction This note shows preliminaries of the hedge automaton theory. In the XML community, this theory has been recently recognized as a simple but powerful model for XML schemata. In particular, the design of two schema languages for XML, namely RSL(Regular Schema Language) and DSD (Document Structure Description) , is directly based on this theory. 2 Hedges First, we introduce hedges. Informally, a hedge is a sequence of trees. In the XML terminology, a hedge is a sequence of elements possibly interevened by character data (or types of character data); in particular, an XML document is a hedge. A hedge over a finite set E (of symbols) and a finite set X (of variables) is: (1) e (the null hedge), (2) x, where x is a variable in X, (3) a(u), where a is a symbol in E and u is a hedge (the addition of a symbol as the root node), or (4) uv, where u and v are hedges (the concatenation of two hedges). Figure 1 depicts three hedges: a{e), a{x), and a{e)b{b{e)x). Observe that el
On the Undecidability of SecondOrder Unification
 INFORMATION AND COMPUTATION
, 2000
"... ... this paper, and it is the starting point for proving some novel results about the undecidability of secondorder unification presented in the rest of the paper. We prove that secondorder unification is undecidable in the following three cases: (1) each secondorder variable occurs at most t ..."
Abstract

Cited by 33 (16 self)
 Add to MetaCart
... this paper, and it is the starting point for proving some novel results about the undecidability of secondorder unification presented in the rest of the paper. We prove that secondorder unification is undecidable in the following three cases: (1) each secondorder variable occurs at most twice and there are only two secondorder variables; (2) there is only one secondorder variable and it is unary; (3) the following conditions (i)#(iv) hold for some fixed integer n: (i) the arguments of all secondorder variables are ground terms of size <n, (ii) the arity of all secondorder variables is <n, (iii) the number of occurrences of secondorder variables is #5, (iv) there is either a single secondorder variable or there are two secondorder variables and no firstorder variables.
P.: A discipline of dynamic programming over sequence data
 Science of Computer Programming
, 2004
"... Abstract. Dynamic programming is a classical programming technique, applicable in a wide variety of domains such as stochastic systems analysis, operations research, combinatorics of discrete structures, flow problems, parsing of ambiguous languages, and biosequence analysis. Little methodology has ..."
Abstract

Cited by 27 (12 self)
 Add to MetaCart
Abstract. Dynamic programming is a classical programming technique, applicable in a wide variety of domains such as stochastic systems analysis, operations research, combinatorics of discrete structures, flow problems, parsing of ambiguous languages, and biosequence analysis. Little methodology has hitherto been available to guide the design of such algorithms. The matrix recurrences that typically describe a dynamic programming algorithm are difficult to construct, errorprone to implement, and, in nontrivial applications, almost impossible to debug completely. This article introduces a discipline designed to alleviate this problem. We describe an algebraic style of dynamic programming over sequence data. We define its formal framework, based on a combination of grammars and algebras, and including a formalization of Bellmanâ€™s Principle. We suggest a language used for algorithm design on a convenient level of abstraction. We outline three ways of implementing this language, including an embedding in a lazy functional language. The workings of the
EQUIVALENCES AND TRANSFORMATIONS OF REGULAR SYSTEMS  APPLICATIONS TO RECURSIVE PROGRAM SCHEMES AND GRAMMARS
, 1986
"... This work presents a unified theory of recursive program schemes, contextfree grammars, grammars on arbitrary algebraic structures and, in fact, recursive definitions of all kind by means of regular systems. The equivalences of regular systems associated with either all their solutions or their le ..."
Abstract

Cited by 27 (5 self)
 Add to MetaCart
This work presents a unified theory of recursive program schemes, contextfree grammars, grammars on arbitrary algebraic structures and, in fact, recursive definitions of all kind by means of regular systems. The equivalences of regular systems associated with either all their solutions or their least solutions (in all domains of appropriate type satisfying a set of algebraic laws expressed by equations) are systematically investigated and characterized (in some cases) in terms of system transformations by folding, unfolding and rewriting according to the equational algebraic laws. Grammars are better characterized in terms of polynomial systems which are regular systems involving the operation of set union, and the same questions are raised for them. We also examine conditions insuring the uniqueness of the solution of a regular or of a polynomial system. This theory applies to grammars of many kinds which generate trees, graphs, etc. We formulate some classical transformations of contextfree grammars in terms of correct transformations which only use folding, unfolding and algebraic laws and we immediately obtain their correctness.
Explaining and Controlling Ambiguity in Dynamic Programming
, 2000
"... . Ambiguity in dynamic programming arises from two independent sources, the nonuniqueness of optimal solutions and the particular recursion scheme by which the search space is evaluated. Ambiguity, unless explicitly considered, leads to unnecessarily complicated, inflexible, and sometimes even ..."
Abstract

Cited by 25 (10 self)
 Add to MetaCart
. Ambiguity in dynamic programming arises from two independent sources, the nonuniqueness of optimal solutions and the particular recursion scheme by which the search space is evaluated. Ambiguity, unless explicitly considered, leads to unnecessarily complicated, inflexible, and sometimes even incorrect dynamic programming algorithms. Building upon the recently developed algebraic approach to dynamic programming, we formalize the notions of ambiguity and canonicity. We argue that the use of canonical yield grammars leads to transparent and versatile dynamic programming algorithms. They provide a master copy of recurrences, that can solve all DP problems in a welldefined domain. We demonstrate the advantages of such a systematic approach using problems from the areas of RNA folding and pairwise sequence comparison. 1 Motivation and Overview 1.1 Ambiguity Issues in Dynamic Programming Dynamic Programming (DP) solves combinatorial optimization problems. It is a classical p...
A Systematic Approach to Dynamic Programming in Bioinformatics
, 1999
"... Motivation: Dynamic programming is probably the most popular programming method in bioinformatics. Sequence comparison, gene recognition, RNA structure prediction and hundreds of other problems are solved by ever new variants of dynamic programming. Currently, the development of a successful dynamic ..."
Abstract

Cited by 25 (9 self)
 Add to MetaCart
Motivation: Dynamic programming is probably the most popular programming method in bioinformatics. Sequence comparison, gene recognition, RNA structure prediction and hundreds of other problems are solved by ever new variants of dynamic programming. Currently, the development of a successful dynamic programming algorithm is a matter of experience, talent, and luck. The typical matrix recurrence relations that make up a dynamic programming algorithm are intricate to construct, and difficult to implement reliably. No general problem independent guidance is available. Results: This article introduces a systematic method for constructing dynamic programming solutions to problems in biosequence analysis. By a conceptual splitting of the algorithm into a recognition and an evaluation phase, algorithm development is simplified considerably, and correct recurrences can be derived systematically. Without additional effort, the method produces an early, executable prototype expressed in a funct...
Confluence of Curried TermRewriting Systems
 Journal of Symbolic Computation
, 1995
"... Reduction Systems Definition 2.2. An Abstract Reduction System (short: ARS) consists of a set A and a sequence ! i of binary relations on A, labelled by some set I. We often drop the label if I is a singleton. We write A j= P if the ARS A = (A; ! i ; : : : ); i 2 I has the property P . Further we ..."
Abstract

Cited by 12 (0 self)
 Add to MetaCart
Reduction Systems Definition 2.2. An Abstract Reduction System (short: ARS) consists of a set A and a sequence ! i of binary relations on A, labelled by some set I. We often drop the label if I is a singleton. We write A j= P if the ARS A = (A; ! i ; : : : ); i 2 I has the property P . Further we write A j= P Q iff A j= P and A j= Q. An ARS A = (A; !) has the diamond property , A j= \Sigma, iff /;! ` !;/. It has the ChurchRosser property (is confluent), A j= CR, iff (A; !!) j= \Sigma. Given an ARS A = (A; !), we write CR(t) as shorthand for (fu j t !! ug; !) j= CR. 4 Stefan Kahrs Under most circumstances, confluence is a useful property of ARSs, mainly because: if (A; !) j= CR, and if two elements x; y 2 A are equivalent w.r.t. the smallest equivalence containing !, then there is a z 2 A such that x!! z //y. Roughly: the ARS decides the equivalence. An ARS A = (A; ! a ; ! b ) commutes directly , A j= CD, iff / a ; ! b ` ! b ; / a . To prove confluence of an ARS, it is sometimes...