13.07.2015 Views

paper pdf - Lab for Automated Reasoning and Analysis - LARA

paper pdf - Lab for Automated Reasoning and Analysis - LARA

paper pdf - Lab for Automated Reasoning and Analysis - LARA

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

tional linguistics [37]. [32] shows that the first-order theoryof subtyping constraints of feature trees is undecidable<strong>and</strong> that the existential entailment problem is PSPACEcomplete.The first-order theory of non-structural subtypingconstraints has been shown to be undecidable [42]. Inthis <strong>paper</strong> we show that the first-order theory of structuralsubtyping of non-recursive types is decidable.This problem was left open in [42]. [42] shows thedecidability of the first-order theory of non-structural subtyping<strong>for</strong> the special cases of one unary constructor symbol(where the problem is solved using tree automata techniques),as well as <strong>for</strong> the special case of one constant symbol(where the problem reduces to the decidability of termalgebras).Contribution. The main contribution of this <strong>paper</strong> is aproof that a term power of a structure with a decidable firstordertheory is a structure with a decidable first-order theory.This result directly implies that the first-order theory ofstructural subtyping of non-recursive types is decidable. Inaddition, we believe that the decidability of term powers isof general interest <strong>and</strong> may be useful <strong>for</strong> constructing decisionprocedures in automated theorem proving. The complexityof the decidability problem <strong>for</strong> term powers is nonelementarybecause term powers extend term algebras. Thenon-elementary bound applies to term algebras as a consequenceof the lower bound on the theory of pairing functions[14], see also [11].Previous Quantifier Elimination Results. We show ourdecidability result using quantifier elimination. Quantifierelimination [20, Section 2.7] is a fruitful technique that hasbeen used to show decidability <strong>and</strong> classification of booleanalgebras [40, 44], Presburger arithmetic [36], decidability ofproducts [30, 13], [28, Chapter 12], <strong>and</strong> algebraically closedfields [43]. Directly relevant to our work are quantifiereliminationtechniques <strong>for</strong> term algebras [28, Chapter 23],[27, 41]. Several extensions of term algebras have beenshown decidable using quantifier elimination. [9] gives aterminating term rewriting system <strong>for</strong> quantifier eliminationin term algebras with membership constraints, [38] givesquantifier elimination <strong>for</strong> term algebras with queues, [6]presents quantifier elimination <strong>for</strong> the first-order theory offeature trees with arity predicates. [46] shows the decidabilityof any feature tree structure whose edge labels areelements of a decidable structure, <strong>and</strong> [48] shows the decidabilityof the monadic second-order theory of an infinitebinary tree whose edges come from a structure with a decidablemonadic second-order theory. Compared to structuresin [46], term powers allow the additional lifted relationsbetween trees, which per<strong>for</strong>m a global comparison ofall leaves in a tree. It may be possible to combine our techniquewith [46] to obtain a family of decidable structuresparameterized by both the edge label theory <strong>and</strong> the leaf theory.The main difficulty in applying the result of [48] to thedecidability of the full first-order theory of structural subtypingstems from the need to simultaneously represent 1)selector operations on trees (which require operations thatmanipulate the initial segments of paths in a tree) <strong>and</strong> 2) theprefix-closure property of the tree domain (which requiresoperations that manipulate the terminal segment of paths ina tree), see [31], [25, Section 7].Preliminaries. If A is a set, write |A| to denote the cardinalityof A. An L-structure (model) is a set together withfunctions <strong>and</strong> relations interpreting the language L. If Sis an L-structure <strong>and</strong> r ∈ L a function or relation symbol,write ar(r) to denote the arity of r. (Arity is a nonnegativeinteger.) Write r S to denote the interpretation ofr in structure S. An L-<strong>for</strong>mula is a first-order <strong>for</strong>mula in thelanguage L. A sentence is a closed <strong>for</strong>mula. If K is a familyof L-structures, the theory of K is the set of all L-sentencesthat are true in all structures S ∈ K. If F is a sentence, thenF K = true if F is in the theory of K <strong>and</strong> F K = falseotherwise. The notation 〈E i 〉 k i denotes the list E 1, . . . , E k(if k is omitted, it is understood from the context).1.1. Structural Subtyping <strong>and</strong> Σ-Term-PowerWe introduce the notion of the Σ-term-power of somestructure C as a generalization of the structure that arises instructural subtyping.We represent primitive types in structural subtyping asan L C -structure C with the carrier C. We call C the basestructure. We assume that L C contains only relation symbolsbecause functions <strong>and</strong> constants can be represented asrelations.We represent type constructors as free operations in theterm algebra with a finite signature Σ. Because we representthe primitive types as elements of C, we do not needconstants in Σ, so we assume ar(f) ≥ 1 <strong>for</strong> each f ∈ Σ.Be<strong>for</strong>e defining term powers, we review the notion of afinite power of a C structure, which is a special case of directproducts of structures [20, Section 9.1, Page 413].Definition 1 (Finite Power) Let m > 0 be a positive integer<strong>and</strong> I m = {0, . . .,m − 1}. The structure C m is definedas follows. The domain of C m is the set C Im of all totalfunctions from I m to C. Each relation r ∈ L C is interpretedbyr Cm (〈t j 〉 j ) = ({i | r C (〈t j (i)〉 j )} = I m )The notion of term power is the central notion of this <strong>paper</strong>.Definition 2 (Term Power) The Σ-term-power of C is astructure P = P Σ (C), defined as follows. Let Σ ′ = Σ ∪ C.2

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!