28,865 research outputs found
Nominal Unification of Higher Order Expressions with Recursive Let
A sound and complete algorithm for nominal unification of higher-order
expressions with a recursive let is described, and shown to run in
non-deterministic polynomial time. We also explore specializations like nominal
letrec-matching for plain expressions and for DAGs and determine the complexity
of corresponding unification problems.Comment: Pre-proceedings paper presented at the 26th International Symposium
on Logic-Based Program Synthesis and Transformation (LOPSTR 2016), Edinburgh,
Scotland UK, 6-8 September 2016 (arXiv:1608.02534
Unification in the Description Logic EL
The Description Logic EL has recently drawn considerable attention since, on
the one hand, important inference problems such as the subsumption problem are
polynomial. On the other hand, EL is used to define large biomedical
ontologies. Unification in Description Logics has been proposed as a novel
inference service that can, for example, be used to detect redundancies in
ontologies. The main result of this paper is that unification in EL is
decidable. More precisely, EL-unification is NP-complete, and thus has the same
complexity as EL-matching. We also show that, w.r.t. the unification type, EL
is less well-behaved: it is of type zero, which in particular implies that
there are unification problems that have no finite complete set of unifiers.Comment: 31page
Unification on Compressed Terms
First-order term unification is an essential concept in areas like functional and
logic programming, automated deduction, deductive databases, artificial intelligence,
information retrieval, compiler design, etc. We build upon recent
developments in grammar-based compression mechanisms for terms and investigate
algorithms for first-order unification and matching on compressed
terms.
We prove that the first-order unification of compressed terms is decidable
in polynomial time, and also that a compressed representation of the most
general unifier can be computed in polynomial time. Furthermore, we present
a polynomial time algorithm for first-order matching on compressed terms.
Both algorithms represent an improvement in time complexity over previous
results [GGSS09, GGSS08].
We use several known results on the tree grammars used for compression,
called singleton tree grammars (STG)s, like polynomial time computability
of several subalgorithmms: certain grammar extensions, deciding equality of
represented terms, and generating their preorder traversal. An innovation is
a specialized depth of an STG that shows that unifiers can be represented in
polynomial spac
Unification and Matching on Compressed Terms
Term unification plays an important role in many areas of computer science,
especially in those related to logic. The universal mechanism of grammar-based
compression for terms, in particular the so-called Singleton Tree Grammars
(STG), have recently drawn considerable attention. Using STGs, terms of
exponential size and height can be represented in linear space. Furthermore,
the term representation by directed acyclic graphs (dags) can be efficiently
simulated. The present paper is the result of an investigation on term
unification and matching when the terms given as input are represented using
different compression mechanisms for terms such as dags and Singleton Tree
Grammars. We describe a polynomial time algorithm for context matching with
dags, when the number of different context variables is fixed for the problem.
For the same problem, NP-completeness is obtained when the terms are
represented using the more general formalism of Singleton Tree Grammars. For
first-order unification and matching polynomial time algorithms are presented,
each of them improving previous results for those problems.Comment: This paper is posted at the Computing Research Repository (CoRR) as
part of the process of submission to the journal ACM Transactions on
Computational Logic (TOCL)
The Algebraic Intersection Type Unification Problem
The algebraic intersection type unification problem is an important component
in proof search related to several natural decision problems in intersection
type systems. It is unknown and remains open whether the algebraic intersection
type unification problem is decidable. We give the first nontrivial lower bound
for the problem by showing (our main result) that it is exponential time hard.
Furthermore, we show that this holds even under rank 1 solutions (substitutions
whose codomains are restricted to contain rank 1 types). In addition, we
provide a fixed-parameter intractability result for intersection type matching
(one-sided unification), which is known to be NP-complete.
We place the algebraic intersection type unification problem in the context
of unification theory. The equational theory of intersection types can be
presented as an algebraic theory with an ACI (associative, commutative, and
idempotent) operator (intersection type) combined with distributivity
properties with respect to a second operator (function type). Although the
problem is algebraically natural and interesting, it appears to occupy a
hitherto unstudied place in the theory of unification, and our investigation of
the problem suggests that new methods are required to understand the problem.
Thus, for the lower bound proof, we were not able to reduce from known results
in ACI-unification theory and use game-theoretic methods for two-player tiling
games
Unification and Logarithmic Space
We present an algebraic characterization of the complexity classes Logspace
and NLogspace, using an algebra with a composition law based on unification.
This new bridge between unification and complexity classes is inspired from
proof theory and more specifically linear logic and Geometry of Interaction.
We show how unification can be used to build a model of computation by means
of specific subalgebras associated to finite permutations groups. We then prove
that whether an observation (the algebraic counterpart of a program) accepts a
word can be decided within logarithmic space. We also show that the
construction can naturally represent pointer machines, an intuitive way of
understanding logarithmic space computing
Set Unification
The unification problem in algebras capable of describing sets has been
tackled, directly or indirectly, by many researchers and it finds important
applications in various research areas--e.g., deductive databases, theorem
proving, static analysis, rapid software prototyping. The various solutions
proposed are spread across a large literature. In this paper we provide a
uniform presentation of unification of sets, formalizing it at the level of set
theory. We address the problem of deciding existence of solutions at an
abstract level. This provides also the ability to classify different types of
set unification problems. Unification algorithms are uniformly proposed to
solve the unification problem in each of such classes.
The algorithms presented are partly drawn from the literature--and properly
revisited and analyzed--and partly novel proposals. In particular, we present a
new goal-driven algorithm for general ACI1 unification and a new simpler
algorithm for general (Ab)(Cl) unification.Comment: 58 pages, 9 figures, 1 table. To appear in Theory and Practice of
Logic Programming (TPLP
Logic Programming and Logarithmic Space
We present an algebraic view on logic programming, related to proof theory
and more specifically linear logic and geometry of interaction. Within this
construction, a characterization of logspace (deterministic and
non-deterministic) computation is given via a synctactic restriction, using an
encoding of words that derives from proof theory.
We show that the acceptance of a word by an observation (the counterpart of a
program in the encoding) can be decided within logarithmic space, by reducing
this problem to the acyclicity of a graph. We show moreover that observations
are as expressive as two-ways multi-heads finite automata, a kind of pointer
machines that is a standard model of logarithmic space computation
Information Compression, Intelligence, Computing, and Mathematics
This paper presents evidence for the idea that much of artificial
intelligence, human perception and cognition, mainstream computing, and
mathematics, may be understood as compression of information via the matching
and unification of patterns. This is the basis for the "SP theory of
intelligence", outlined in the paper and fully described elsewhere. Relevant
evidence may be seen: in empirical support for the SP theory; in some
advantages of information compression (IC) in terms of biology and engineering;
in our use of shorthands and ordinary words in language; in how we merge
successive views of any one thing; in visual recognition; in binocular vision;
in visual adaptation; in how we learn lexical and grammatical structures in
language; and in perceptual constancies. IC via the matching and unification of
patterns may be seen in both computing and mathematics: in IC via equations; in
the matching and unification of names; in the reduction or removal of
redundancy from unary numbers; in the workings of Post's Canonical System and
the transition function in the Universal Turing Machine; in the way computers
retrieve information from memory; in systems like Prolog; and in the
query-by-example technique for information retrieval. The chunking-with-codes
technique for IC may be seen in the use of named functions to avoid repetition
of computer code. The schema-plus-correction technique may be seen in functions
with parameters and in the use of classes in object-oriented programming. And
the run-length coding technique may be seen in multiplication, in division, and
in several other devices in mathematics and computing. The SP theory resolves
the apparent paradox of "decompression by compression". And computing and
cognition as IC is compatible with the uses of redundancy in such things as
backup copies to safeguard data and understanding speech in a noisy
environment
- …