Results 1  10
of
36
Type Inference with Polymorphic Recursion
 Transactions on Programming Languages and Systems
, 1991
"... The DamasMilner Calculus is the typed Acalculus underlying the type system for ML and several other strongly typed polymorphic functional languages such as Mirandal and Haskell. Mycroft has extended its problematic monomorphic typing rule for recursive definitions with a polymorphic typing rule. H ..."
Abstract

Cited by 142 (2 self)
 Add to MetaCart
(Show Context)
The DamasMilner Calculus is the typed Acalculus underlying the type system for ML and several other strongly typed polymorphic functional languages such as Mirandal and Haskell. Mycroft has extended its problematic monomorphic typing rule for recursive definitions with a polymorphic typing rule. He proved the resulting type system, which we call the MilnerMycroft Calculus, sound with respect to Milner’s semantics, and showed that it preserves the principal typing property of the DamasMilner Calculus. The extension is of practical significance in typed logic programming languages and, more generally, in any language with (mutually) recursive definitions. In this paper we show that the type inference problem for the MilnerMycroft Calculus is logspace equivalent to semiunification, the problem of solving subsumption inequations between firstorder terms. This result has been proved independently by Kfoury et al. In connection with the recently established undecidability of semiunification this implies that typability in the MilnerMycroft Calculus is undecidable. We present some reasons why type inference with polymorphic recursion appears to be practical despite its undecidability. This also sheds some light on the observed practicality of ML
Graph Types
 IN PROC. 20TH ACM POPL
, 1993
"... Recursive data structures are abstractions of simple records and pointers. They impose a shape invariant, which is verified at compiletime and exploited to automatically generate code for building, copying, comparing, and traversing values without loss of efficiency. However, such values are alw ..."
Abstract

Cited by 126 (9 self)
 Add to MetaCart
Recursive data structures are abstractions of simple records and pointers. They impose a shape invariant, which is verified at compiletime and exploited to automatically generate code for building, copying, comparing, and traversing values without loss of efficiency. However, such values are always tree shaped, which is a major obstacle to practical use. We propose a notion of graph types , which allow common shapes, such as doublylinked lists or threaded trees, to be expressed concisely and efficiently. We define regular languages of routing expressions to specify relative addresses of extra pointers in a canonical spanning tree. An efficient algorithm for computing such addresses is developed. We employ a secondorder monadic logic to decide wellformedness of graph type specifications. This logic can also be used for automated reasoning about pointer structures.
Feature Logics
 HANDBOOK OF LOGIC AND LANGUAGE, EDITED BY VAN BENTHEM & TER MEULEN
, 1994
"... Feature logics form a class of specialized logics which have proven especially useful in classifying and constraining the linguistic objects known as feature structures. Linguistically, these structures have their origin in the work of the Prague school of linguistics, followed by the work of Chom ..."
Abstract

Cited by 34 (0 self)
 Add to MetaCart
Feature logics form a class of specialized logics which have proven especially useful in classifying and constraining the linguistic objects known as feature structures. Linguistically, these structures have their origin in the work of the Prague school of linguistics, followed by the work of Chomsky and Halle in The Sound Pattern of English [16]. Feature structures have been reinvented several times by computer scientists: in the theory of data structures, where they are known as record structures, in artificial intelligence, where they are known as frame or slotvalue structures, in the theory of data bases, where they are called "complex objects", and in computati
Features and Agreement
, 1995
"... This paper compares the consistencybased account of agreement phenomena in 'unificationbased' grammars with an implicationbased account based on a simple feature extension to Lambek Catego rim Grammar (LCG). We show that the LCG treatment accounts for constructions that have been ..."
Abstract

Cited by 34 (4 self)
 Add to MetaCart
This paper compares the consistencybased account of agreement phenomena in 'unificationbased' grammars with an implicationbased account based on a simple feature extension to Lambek Catego rim Grammar (LCG). We show that the LCG treatment accounts for constructions that have been recognized as problematic for 'unificationbased' treatments.
The FirstOrder Theory of Ordering Constraints over Feature Trees
 Discrete Mathematics and Theoretical Computer Science
, 2001
"... The system FT of ordering constraints over feature trees has been introduced as an extension of the system FT of equality constraints over feature trees. We investigate the firstorder theory of FT and its fragments, both over finite trees and over possibly infinite trees. We prove that the firstor ..."
Abstract

Cited by 19 (5 self)
 Add to MetaCart
(Show Context)
The system FT of ordering constraints over feature trees has been introduced as an extension of the system FT of equality constraints over feature trees. We investigate the firstorder theory of FT and its fragments, both over finite trees and over possibly infinite trees. We prove that the firstorder theory of FT is undecidable, in contrast to the firstorder theory of FT which is wellknown to be decidable. We determine the complexity of the entailment problem of FT with existential quantification to be PSPACEcomplete, by proving its equivalence to the inclusion problem of nondeterministic finite automata. Our reduction from the entailment problem to the inclusion problem is based on a new alogrithm that, given an existential formula of FT , computes a finite automaton which accepts all its logic consequences.
Simple closure analysis
, 1992
"... Closure analysis determines statically which function definitions reach which program points. This information is used for many different purposes; e.g., type inference for ..."
Abstract

Cited by 19 (1 self)
 Add to MetaCart
(Show Context)
Closure analysis determines statically which function definitions reach which program points. This information is used for many different purposes; e.g., type inference for
Inclusion Constraints over Nonempty Sets of Trees
, 1997
"... We present a new constraint system called INES. Its constraints are conjunctions of inclusions t1 `t2 between firstorder terms (without set operators) which are interpreted over nonempty sets of trees. The existing systems of set constraints can express INES constraints only if they include ne ..."
Abstract

Cited by 14 (5 self)
 Add to MetaCart
We present a new constraint system called INES. Its constraints are conjunctions of inclusions t1 `t2 between firstorder terms (without set operators) which are interpreted over nonempty sets of trees. The existing systems of set constraints can express INES constraints only if they include negation. Their satisfiability problem is NEXPTIMEcomplete. We present an incremental algorithm that solves the satisfiability problem of INES constraints in cubic time. We intend to apply INES constraints for type analysis for a concurrent constraint programming language.
Ordering Constraints over Feature Trees
, 1999
"... Feature trees are the formal basis for algorithms manipulating record like structures in constraint programming, computational linguistics and in concrete applications like software configuration management. Feature trees model records, and constraints over feature trees yield extensible and modular ..."
Abstract

Cited by 13 (5 self)
 Add to MetaCart
(Show Context)
Feature trees are the formal basis for algorithms manipulating record like structures in constraint programming, computational linguistics and in concrete applications like software configuration management. Feature trees model records, and constraints over feature trees yield extensible and modular record descriptions. We introduce the constraint system FT of ordering constraints interpreted over feature trees. Under the view that feature trees represent symbolic information, the relation corresponds to the information ordering ("carries less information than"). We present two algorithms in cubic time, one for the satisfiability problem and one for the entailment problem of FT . We show that FT has the independence property. We are thus able to handle negative conjuncts via entailment and obtain a cubic algorithm that decides the satisfiability of conjunctions of positive and negated ordering constraints over feature trees. Furthermore, we reduce the satisfiability problem of Dorre's weak subsumption constraints to the satisfiability problem of FT and improve the complexity bound for solving weak subsumption constraints from O(n^5) to O(n³).
Fibred Semantics for FeatureBased Grammar Logic
, 1994
"... This paper gives a simple method for providing categorial brands of featurebased unification grammars with a modeltheoretic semantics. The key idea is to apply the paradigm of fibred semantics (or layered logics, see [15]) in order to combine the two components of a featurebased grammar logic. We ..."
Abstract

Cited by 13 (5 self)
 Add to MetaCart
This paper gives a simple method for providing categorial brands of featurebased unification grammars with a modeltheoretic semantics. The key idea is to apply the paradigm of fibred semantics (or layered logics, see [15]) in order to combine the two components of a featurebased grammar logic. We demonstrate the method for the augmentation of Lambek categorial grammar with Kasper/Roundsstyle feature logic. These are combined by replacing (or annotating) atomic formulas of the first logic, i.e. the basic syntactic types, by formulas of the second. Modelling such a combined logic is less trivial than one might expect. The direct application of the fibred semantics method where a combined atomic formula like np(num:sg & pers:3rd) denotes those strings which have the indicated property and the categorial operators denote the usual left and rightresiduals of these string sets, does not match the intuitive, unificationbased proof theory. Unification implements a global bookkeeping w...