Results 1  10
of
21
InductiveDataType Systems
, 2002
"... In a previous work ("Abstract Data Type Systems", TCS 173(2), 1997), the leI two authors presented a combined lmbined made of a (strongl normal3zG9 alrmal rewrite system and a typed #calA#Ik enriched by patternmatching definitions folnitio a certain format,calat the "General Schema", whichgenera ..."
Abstract

Cited by 755 (22 self)
 Add to MetaCart
In a previous work ("Abstract Data Type Systems", TCS 173(2), 1997), the leI two authors presented a combined lmbined made of a (strongl normal3zG9 alrmal rewrite system and a typed #calA#Ik enriched by patternmatching definitions folnitio a certain format,calat the "General Schema", whichgeneral39I theusual recursor definitions fornatural numbers and simil9 "basic inductive types". This combined lmbined was shown to bestrongl normalIk39f The purpose of this paper is toreformul33 and extend theGeneral Schema in order to make it easil extensibl3 to capture a more general cler of inductive types, cals, "strictly positive", and to ease the strong normalgAg9Ik proof of theresulGGg system. Thisresul provides a computation model for the combination of anal"DAfGI specification language based on abstract data types and of astrongl typed functional language with strictly positive inductive types.
Term Rewriting Systems
, 1992
"... Term Rewriting Systems play an important role in various areas, such as abstract data type specifications, implementations of functional programming languages and automated deduction. In this chapter we introduce several of the basic comcepts and facts for TRS's. Specifically, we discuss Abstract Re ..."
Abstract

Cited by 567 (16 self)
 Add to MetaCart
Term Rewriting Systems play an important role in various areas, such as abstract data type specifications, implementations of functional programming languages and automated deduction. In this chapter we introduce several of the basic comcepts and facts for TRS's. Specifically, we discuss Abstract Reduction Systems
Combinatory Reduction Systems: introduction and survey
 THEORETICAL COMPUTER SCIENCE
, 1993
"... Combinatory Reduction Systems, or CRSs for short, were designed to combine the usual firstorder format of term rewriting with the presence of bound variables as in pure λcalculus and various typed calculi. Bound variables are also present in many other rewrite systems, such as systems with simpl ..."
Abstract

Cited by 84 (9 self)
 Add to MetaCart
Combinatory Reduction Systems, or CRSs for short, were designed to combine the usual firstorder format of term rewriting with the presence of bound variables as in pure λcalculus and various typed calculi. Bound variables are also present in many other rewrite systems, such as systems with simplification rules for proof normalization. The original idea of CRSs is due to Aczel, who introduced a restricted class of CRSs and, under the assumption of orthogonality, proved confluence. Orthogonality means that the rules are nonambiguous (no overlap leading to a critical pair) and leftlinear (no global comparison of terms necessary). We introduce the class of orthogonal CRSs, illustrated with many examples, discuss its expressive power, and give an outline of a short proof of confluence. This proof is a direct generalization of Aczel's original proof, which is close to the wellknown confluence proof for λcalculus by Tait and MartinLof. There is a wellknown connection between the para...
Lazy Query Evaluation for Active XML
, 2004
"... In this paper, we study query evaluation on Active XML documents (AXML for short), a new generation of XML documents that has recently gained popularity. AXML documents are XML documents whose content is given partly extensionally, by explicit data elements, and partly intensionally, by embedded cal ..."
Abstract

Cited by 43 (18 self)
 Add to MetaCart
In this paper, we study query evaluation on Active XML documents (AXML for short), a new generation of XML documents that has recently gained popularity. AXML documents are XML documents whose content is given partly extensionally, by explicit data elements, and partly intensionally, by embedded calls to Web services, which can be invoked to generate data. A major
Normalization and partial evaluation
 Applied Semantics, number 2395 in LNCS
, 2002
"... Abstract. We give an introduction to normalization by evaluation and typedirected partial evaluation. We first present normalization by evaluation for a combinatory version of Gödel System T. Then we show normalization by evaluation for typed lambda calculus with β and η conversion. Finally, we int ..."
Abstract

Cited by 17 (0 self)
 Add to MetaCart
Abstract. We give an introduction to normalization by evaluation and typedirected partial evaluation. We first present normalization by evaluation for a combinatory version of Gödel System T. Then we show normalization by evaluation for typed lambda calculus with β and η conversion. Finally, we introduce the notion of binding time, and explain the method of typedirected partial evaluation for a small PCFstyle functional programming language. We give algorithms for both callbyname and callbyvalue versions of this language.
Foundational Calculi for Programming Languages
 in the CRC Handbook of Computer Science and Engineering. Available electronically
, 1995
"... Introduction In the mid 1960s, Landin observed that a complex programming language can be understood in terms of a tiny "core language" capturing the essential mechanisms of some programming, style together with a collection of convenient "derived forms" whose behavior is understood by translating ..."
Abstract

Cited by 15 (0 self)
 Add to MetaCart
Introduction In the mid 1960s, Landin observed that a complex programming language can be understood in terms of a tiny "core language" capturing the essential mechanisms of some programming, style together with a collection of convenient "derived forms" whose behavior is understood by translating them into the core (cf. [ Tennent, 1981 ] ). Landin's core language was the lambdacalculus, a formal system in which all computation is reduced to the basic operations of function definition and application. Since the 60s, the lambdacalculus has seen widespread use in the specification of programming language features, language design and implementation, and the study of type systems. Its importance arises from the fact that it can be viewed simultaneously as a simple programming language in which computations can be described and as a mathematical object about which rigorous statements can be proved. The lambdacalculus has a strong claim to be a<F28
Polymorphic higherorder recursive path orderings
 Journal of the ACM
, 2005
"... This paper extends the termination proof techniques based on reduction orderings to a higherorder setting, by defining a family of recursive path orderings for terms of a typed lambdacalculus generated by a signature of polymorphic higherorder function symbols. These relations can be generated fro ..."
Abstract

Cited by 13 (3 self)
 Add to MetaCart
This paper extends the termination proof techniques based on reduction orderings to a higherorder setting, by defining a family of recursive path orderings for terms of a typed lambdacalculus generated by a signature of polymorphic higherorder function symbols. These relations can be generated from two given wellfounded orderings, on the function symbols and on the type constructors. The obtained orderings on terms are wellfounded, monotonic, stable under substitution and include βreductions. They can be used to prove the strong normalization property of higherorder calculi in which constants can be defined by higherorder rewrite rules using firstorder pattern matching. For example, the polymorphic version of Gödel’s recursor for the natural numbers is easily oriented. And indeed, our ordering is polymorphic, in the sense that a single comparison allows to prove the termination property of all monomorphic instances of a polymorphic rewrite rule. Many nontrivial examples are given which exemplify the expressive power of these orderings. All have been checked by our implementation. This paper is an extended and improved version of [Jouannaud and Rubio 1999]. Polymorphic algebras have been made more expressive than in our previous framework. The intuitive notion of a polymorphic higherorder ordering has now been made precise. The higherorder recursive
Models of Control and Their Implications for Programming Language Design
, 1994
"... This work uses denotational models to understand and improve the part of a programming language concerned with nonlocal control operators. These operators let the programmer identify and restore arbitrary control contexts in the program execution path, and thus form a powerful component of many mod ..."
Abstract

Cited by 8 (0 self)
 Add to MetaCart
This work uses denotational models to understand and improve the part of a programming language concerned with nonlocal control operators. These operators let the programmer identify and restore arbitrary control contexts in the program execution path, and thus form a powerful component of many modern programming languages. We use a variety of denotational models to tackle the issues of (1) describing a control language mathematically, and (2) using the model's apparatus to obtain information useful for designing the language. For this, the full abstraction criterion of testing a model against a language is viewed as a feedback loop that suggests language changes. The results from radically different models, for a variety of control manipulation languages, uniformly emphasize the need for delimiting control actions. In the case of higherorder control, this takes the form of a systematic handling of control objects. To check the pragmatics of the new control techniques, we present an ...
Finite Model Theory In The Simply Typed Lambda Calculus
, 1994
"... Church's simply typed calculus is a very basic framework for functional programming language research. However, it is common to augment this framework with additional programming constructs, because its expressive power for functions over the domain of Church numerals is very limited. In this thesi ..."
Abstract

Cited by 8 (5 self)
 Add to MetaCart
Church's simply typed calculus is a very basic framework for functional programming language research. However, it is common to augment this framework with additional programming constructs, because its expressive power for functions over the domain of Church numerals is very limited. In this thesis: (1) We reexamine the expressive power of the "pure" simply typed calculus, but over encodings of finite relational structures, i. e., finite models or databases . In this novel framework the simply typed calculus expresses all elementary functions from finite models to finite models. In addition, many common database query languages, e. g., relational algebra, Datalog : , and the Abiteboul/Beeri complex object algebra, can be embedded into it. The embeddings are feasible in the sense that the terms corresponding to PTIME queries can be evaluated in polynomial time. (2) We examine fixedorder fragments of the simply typed calculus to determine machine independent characterizations of complexity classes. For this we augment the calculus with atomic constants and equality among atomic constants. We show that over ordered structures, the order 3, 4, 5, and 6 fragments express exactly the firstorder, PTIME, PSPACE, and EXPTIME queries, respectively, and we conjecture that for general k 1, order 2 k + 4 expresses exactly the kEXPTIME queries and order 2 k + 5 expresses exactly the kEXPSPACE queries. (3) We also reexamine other functional characterizations of PTIME and we show that method schemas with ordered objects express exactly PTIME. This is a firstorder framework proposed for objectoriented databasesas opposed to the above higherorder frameworks. In summary, this research provides a link between finite model theory (and thus computational complexity), dat...
Decidability of Bounded HigherOrder Unification
, 2002
"... It is shown that unifiability of terms in the simply typed lambda calculus with beta and eta rules becomes decidable if there is a bound on the number of bound variables and lambdas in a unifier in etaexpanded betanormal form. ..."
Abstract

Cited by 7 (0 self)
 Add to MetaCart
It is shown that unifiability of terms in the simply typed lambda calculus with beta and eta rules becomes decidable if there is a bound on the number of bound variables and lambdas in a unifier in etaexpanded betanormal form.