Results 1 - 10
of
10
On the theory of structural subtyping
, 2003
"... We show that the first-order theory of structural subtyping of non-recursive types is decidable. Let Σ be a language consisting of function symbols (representing type constructors) and C a decidable structure in the relational language L containing a binary relation ≤. C represents primitive types; ..."
Abstract
-
Cited by 18 (8 self)
- Add to MetaCart
We show that the first-order theory of structural subtyping of non-recursive types is decidable. Let Σ be a language consisting of function symbols (representing type constructors) and C a decidable structure in the relational language L containing a binary relation ≤. C represents primitive types; ≤ represents a subtype ordering. We introduce the notion of Σ-term-power of C, which generalizes the structure arising in structural subtyping. The domain of the Σ-term-power of C is the set of Σ-terms over the set of elements of C. We show that the decidability of the first-order theory of C implies the decidability of the first-order theory of the Σterm-power of C. This result implies the decidability of the first-order theory of structural subtyping of non-recursive types.
Non-Structural Subtype Entailment in Automata Theory
, 2003
"... Decidability of non-structural subtype entailment is a long-standing open problem in programming language theory. In this paper, we apply automata theoretic methods to characterize the problem equivalently by using regular expressions and word equations. This characterization induces new results on ..."
Abstract
-
Cited by 8 (3 self)
- Add to MetaCart
Decidability of non-structural subtype entailment is a long-standing open problem in programming language theory. In this paper, we apply automata theoretic methods to characterize the problem equivalently by using regular expressions and word equations. This characterization induces new results on non-structural subtype entailment, constitutes a promising starting point for further investigations on decidability, and explains for the first time why the problem is so difficult. The difficulty is caused by implicit word equations that we make explicit.
Tree Extension Algebras: Logics, Automata, and Query Languages
- In Proceedings of the 17th Annual IEEE Symposium on Logic in Computer Science (LICS
, 2002
"... We study relations on trees defined by first-order constraints over a vocabulary that includes the tree extension relation T T , holding if and only if every branch of T extends to a branch of T , unary node-tests, and a binary relation checking if the domains of two trees are equal. We show ..."
Abstract
-
Cited by 6 (1 self)
- Add to MetaCart
We study relations on trees defined by first-order constraints over a vocabulary that includes the tree extension relation T T , holding if and only if every branch of T extends to a branch of T , unary node-tests, and a binary relation checking if the domains of two trees are equal. We show that from such a formula one can generate a tree automaton that accepts the set of tuples of trees defined by the formula, and conversely that every automaton over tree-tuples is captured by such a formula. We look at the fragment with only extension inequalities and leaf tests, and show that it corresponds to a new class of automata on tree tuples, which is strictly weaker then general tree-tuple automata. We use the automata representations to show separation and expressibility results for formulae in the logic. We then turn to relational calculi over the logic defined here: that is, from constraints we extend to queries that have second-order parameters for a finite set of tree tuples. We give normal forms for queries, and use these to get bounds on the data complexity of query evaluation, showing that while general query evaluation is unbounded within the polynomial hierarchy, generic query evaluation has very low complexity, giving strong bounds on the expressive power of relational calculi with tree extension constraints. We also give normal forms for safe queries in the calculus.
Complexity of Subtype Satisfiability over Posets
- in "14th European Symposium on Programming", LNCS
, 2005
"... Subtype satisfiability is an important problem for designing advanced subtype systems and subtype-based program analysis algorithms. The problem is well understood if the atomic types form a lattice. However, little is known about subtype satisfiability over posets. In this paper, we investigate alg ..."
Abstract
-
Cited by 5 (0 self)
- Add to MetaCart
Subtype satisfiability is an important problem for designing advanced subtype systems and subtype-based program analysis algorithms. The problem is well understood if the atomic types form a lattice. However, little is known about subtype satisfiability over posets. In this paper, we investigate algorithms for and the complexity of subtype satisfiability over general posets. We present a uniform treatment of different flavors of subtyping: simple versus recursive types and structural versus non-structural subtype orders. Our results are established through a new connection of subtype constraints and modal logic. As a consequence, we settle a problem left open by Tiuryn and Wand in 1993. 1
Logical definability and query languages over ranked and unranked trees
- ACM Trans. on Comput. Logic
, 2007
"... We study relations on trees defined by first-order constraints over a vocabulary that includes the tree extension relation T ≺ T ′ , holding if and only if every branch of T extends to a branch of T ′, unary node-tests, and a binary relation checking if the domains of two trees are equal. We conside ..."
Abstract
-
Cited by 5 (3 self)
- Add to MetaCart
We study relations on trees defined by first-order constraints over a vocabulary that includes the tree extension relation T ≺ T ′ , holding if and only if every branch of T extends to a branch of T ′, unary node-tests, and a binary relation checking if the domains of two trees are equal. We consider both ranked and unranked trees. These are trees with and without a restriction on the number of children of nodes. We adopt the model-theoretic approach to tree relations and study relations definable over the structure consisting of the set of all trees and the above predicates. We relate definability of sets and relations of trees to computability by tree automata. We show that some natural restrictions correspond to familiar logics in the more classical setting, where every tree is a structure over a fixed vocabulary, and to logics studied in the context of XML pattern languages. We then look at relational calculi over collections of trees, and obtain quantifier-restriction results that give us bounds on the expressive power and complexity. As unrestricted relational calculi can express problems complete for each level of the polynomial hierarchy, we look at their restrictions, corresponding to the restricted logics over the family of all unranked trees, and find several calculi with low (NC 1) data complexity, while still expressing properties important for database and
A flowbased approach for variant parametric types
- In Proceedings of the 2006 ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages & Applications (OOPSLA‘06
, 2006
"... A promising approach for type-safe generic codes in the objectoriented paradigm is variant parametric type, which allows covariant and contravariant subtyping on fields where appropriate. Previous approaches formalise variant type as a special case of the existential type system. In this paper, we p ..."
Abstract
-
Cited by 5 (0 self)
- Add to MetaCart
A promising approach for type-safe generic codes in the objectoriented paradigm is variant parametric type, which allows covariant and contravariant subtyping on fields where appropriate. Previous approaches formalise variant type as a special case of the existential type system. In this paper, we present a new framework based on flow analysis and modular type checking to provide a simple but accurate model for capturing generic types. Our scheme stands to benefit from past (and future) advances in flow analysis and subtyping constraints. Furthermore, it fully supports casting for variant types with a special reflection mechanism, called cast capture, to handle objects with unknown types. We have built a constraint-based type checker and have proven its soundness. We have also successfully annotated a suite of Java libraries and client code with our flow-based variant type system.
Internship report: Uniform and non-structural subtyping
"... We expose a new approach to tackle non-structural subtyping problems. We introduce uniform subtyping as a means to capture some properties of non-structural subtyping. In the uniform theory, we show that the validity of a first-order sentence is decidable, and entailment is PSPACEhard. In addition, ..."
Abstract
- Add to MetaCart
We expose a new approach to tackle non-structural subtyping problems. We introduce uniform subtyping as a means to capture some properties of non-structural subtyping. In the uniform theory, we show that the validity of a first-order sentence is decidable, and entailment is PSPACEhard. In addition, we give decidable approximations to entailment and subtyping constrained types — two problems which are still open in the non-structural theory. Contents 1
Subtype Constraints in Modal Logic
, 2005
"... We establish a new relationship between subtype constraints and modal logic. It implies uniformly that satisfiability of structural subtype constraints with ordered constants, function and recursive types is DEXPTIME-complete, and PSPACE-complete without recursive types. This answers an open questio ..."
Abstract
- Add to MetaCart
We establish a new relationship between subtype constraints and modal logic. It implies uniformly that satisfiability of structural subtype constraints with ordered constants, function and recursive types is DEXPTIME-complete, and PSPACE-complete without recursive types. This answers an open question raised by Tiuryn and Wand in 1993, and yields a new simpler proof to a result of Tiuryn and Frey at the same time.
Referee Referee Examiner
, 2006
"... This thesis describes the theoretical and practical foundations of a system for the static analysis of XML processing languages. The system relies on a fixpoint temporal logic with converse, derived from the µ-calculus, where models are finite trees. This calculus is expressive enough to capture reg ..."
Abstract
- Add to MetaCart
This thesis describes the theoretical and practical foundations of a system for the static analysis of XML processing languages. The system relies on a fixpoint temporal logic with converse, derived from the µ-calculus, where models are finite trees. This calculus is expressive enough to capture regular tree types along with multi-directional navigation in trees, while having a single exponential time complexity. Specifically the decidability of the logic is proved in time 2O(n) where n is the size of the input formula. Major XML concepts are linearly translated into the logic: XPath navigation and node selection semantics, and regular tree languages (which include DTDs and XML Schemas). Based on these embeddings, several problems of major importance in XML applications are reduced to satisfiability of the logic. These problems include XPath containment, emptiness, equivalence, overlap, coverage, in the presence or absence of regular tree type constraints, and the static type-checking of an annotated query.

