Results 1 
5 of
5
Rank 2 Type Systems and Recursive Definitions
, 1995
"... We demonstrate an equivalence between the rank 2 fragments of the polymorphic lambda calculus (System F) and the intersection type discipline: exactly the same terms are typable in each system. An immediate consequence is that typability in the rank 2 intersection system is DEXPTIMEcomplete. We int ..."
Abstract

Cited by 26 (1 self)
 Add to MetaCart
We demonstrate an equivalence between the rank 2 fragments of the polymorphic lambda calculus (System F) and the intersection type discipline: exactly the same terms are typable in each system. An immediate consequence is that typability in the rank 2 intersection system is DEXPTIMEcomplete. We introduce a rank 2 system combining intersections and polymorphism, and prove that it types exactly the same terms as the other rank 2 systems. The combined system suggests a new rule for typing recursive definitions. The result is a rank 2 type system with decidable type inference that can type some interesting examples of polymorphic recursion. Finally,we discuss some applications of the type system in data representation optimizations such as unboxing and overloading.
The Complexity of Equivariant Unification
 In Proceedings of the 31st International Colloquium on Automata, Languages and Programming (ICALP 2004), volume 3142 of LNCS
"... Nominal logic is a firstorder theory of names and binding based on a primitive operation of swapping rather than substitution. Urban, Pitts, and Gabbay have developed a nominal unification algorithm that unifies terms up to nominal equality. However, because of nominal logic's equivariance principl ..."
Abstract

Cited by 21 (7 self)
 Add to MetaCart
Nominal logic is a firstorder theory of names and binding based on a primitive operation of swapping rather than substitution. Urban, Pitts, and Gabbay have developed a nominal unification algorithm that unifies terms up to nominal equality. However, because of nominal logic's equivariance principle, atomic formulas can be provably equivalent without being provably equal as terms, so resolution using nominal unification is sound but incomplete. For complete resolution, a more general form of unification called equivariant unification, or "unification up to a permutation" is required. Similarly, for rewrite rules expressed in nominal logic, a more general form of matching called equivariant matching is necessary. In this paper, we study the complexity of the decision problem for equivariant unification and matching. We show that these problems are NPcomplete in general. However, when one of the terms is essentially firstorder, equivariant and nominal unification coincide. This shows that equivariant unification can be performed efficiently in many interesting common cases: for example, anypurely firstorder logic program or rewrite system can be run efficiently on nominal terms.
Processing textbookstyle matrices
 In Mathematical Knowledge Management, 4th International Conference (2005
, 2006
"... Abstract. In mathematical textbooks matrices are often represented as objects of indefinite size containing abbreviations. To make the knowledge implicitly given in these representations available in electronic form they have to be interpreted correctly. We present an algorithm that provides the int ..."
Abstract

Cited by 6 (3 self)
 Add to MetaCart
Abstract. In mathematical textbooks matrices are often represented as objects of indefinite size containing abbreviations. To make the knowledge implicitly given in these representations available in electronic form they have to be interpreted correctly. We present an algorithm that provides the interface between the textbook style representation of matrix expressions and their concrete interpretation as formal mathematical objects. Given an underspecified matrix containing ellipses and fill symbols, our algorithm extracts the semantic information contained. Matrices are interpreted as a collection of regions that can be interpolated with a particular term structure. The effectiveness of our procedure is demonstrated with an implementation in the computer algebra system Maple. 1
A Complete Selection Function for Lazy Conditional Narrowing
 Journal of Functional and Logic Programming
, 2002
"... . This paper is concerned with the lazy conditional narrowing calculus lcnc. In an earlier paper we proved that this calculus is complete with respect to normalizable solutions for the class of conuent but not necessarily terminating conditional rewrite systems without socalled extra variables ..."
Abstract

Cited by 4 (1 self)
 Add to MetaCart
. This paper is concerned with the lazy conditional narrowing calculus lcnc. In an earlier paper we proved that this calculus is complete with respect to normalizable solutions for the class of conuent but not necessarily terminating conditional rewrite systems without socalled extra variables in the conditional parts of the rewrite rules. Unfortunately, the proof does not provide any useful complete selection function, hence in implementations we need to backtrack over the choice of equations in goals in order to guarantee that all solutions are enumerated. This is in contrast to the unconditional case where completeness with respect to the leftmost selection function is known. In this paper we close the gap by proving the completeness of lcnc with respect to the leftmost selection strategy for the abovementioned class of conditional rewrite systems. 1 Introduction Narrowing (Fay [5], Hullot [16]) was originally invented as a general method for solving unication prob...