Results 1  10
of
30
ContextSensitive Computations in Functional and Functional Logic Programs
 JOURNAL OF FUNCTIONAL AND LOGIC PROGRAMMING
, 1998
"... ..."
Inductive and Coinductive types with Iteration and Recursion
 Proceedings of the 1992 Workshop on Types for Proofs and Programs, Bastad
, 1992
"... We study (extensions of) simply and polymorphically typed lambda calculus from a point of view of how iterative and recursive functions on inductive types are represented. The inductive types can usually be understood as initial algebras in a certain category and then recursion can be defined in ter ..."
Abstract

Cited by 52 (0 self)
 Add to MetaCart
We study (extensions of) simply and polymorphically typed lambda calculus from a point of view of how iterative and recursive functions on inductive types are represented. The inductive types can usually be understood as initial algebras in a certain category and then recursion can be defined in terms of iteration. However, in the syntax we often have only weak initiality, which makes the definition of recursion in terms of iteration inefficient or just impossible. We propose a categorical notion of (primitive) recursion which can easily be added as computation rule to a typed lambda calculus and gives us a clear view on what the dual of recursion, corecursion, on coinductive types is. (The same notion has, independently, been proposed by [Mendler 1991].) We look at how these syntactic notions work out in the simply typed lambda calculus and the polymorphic lambda calculus. It will turn out that in the syntax, recursion can be defined in terms of corecursion and vice versa using polymo...
Investigating a general hierarchy of polynomially decidable classes of CNF's based on short treelike resolution proofs
, 1999
"... We investigate a hierarchy Gk (U ; S) of classes of conjunctive normal forms, recognizable and SATdecidable in polynomial time, with special emphasize on the corresponding hardness parameter hU ;S (F ) for clausesets F (the first level of inclusion). At level 0 an (incomplete, polytime) oracl ..."
Abstract

Cited by 18 (12 self)
 Add to MetaCart
We investigate a hierarchy Gk (U ; S) of classes of conjunctive normal forms, recognizable and SATdecidable in polynomial time, with special emphasize on the corresponding hardness parameter hU ;S (F ) for clausesets F (the first level of inclusion). At level 0 an (incomplete, polytime) oracle U for unsatisfiability detection and an oracle S for satisfiability detection is used. The hierarchy from [Pretolani 96] is improved in this way with respect to strengthened satisfiability handling, simplified recognition and consistent relativization. Also a hierarchy of canonical polytime reductions with Unitclause propagation at the first level is obtained. General methods for upper and lower bounds on hU ;S (F ) are developed and applied to a number of wellknown examples. hU ;S (F ) admits several different characterizations, including the space complexity of treelike resolution and the use of pebble games as in [Esteban, Tor'an 99]. Using for S the class of linearly sat...
Confluent Equational Reasoning for Linking with FirstClass Primitive Modules
 In ESOP 2000  European Symposium on Programming 2000, number 1782 in Lecture Notes in Computer Science
, 1999
"... Modules and linking are usually formalized by encodings which use the lambda calculus, records (possibly dependent), and possibly some construct for recursion. In contrast, we present the mcalculus, a calculus where the primitive constructs are modules, linking, and the selection and hiding of modu ..."
Abstract

Cited by 17 (3 self)
 Add to MetaCart
Modules and linking are usually formalized by encodings which use the lambda calculus, records (possibly dependent), and possibly some construct for recursion. In contrast, we present the mcalculus, a calculus where the primitive constructs are modules, linking, and the selection and hiding of module components. In addition to supporting equational reasoning about modules and linking, the mcalculus allows smooth encodings of software structuring tools such as the lambda calculus, mutually recursive definitions, records (including operations like extension and concatenation), and objects. The mcalculus is extremely well behaved  we show not only that the mcalculus is confluent but also that it satisfies the strong finite developments property.
Confluence by Decreasing Diagrams
 Theoretical Computer Science
, 1994
"... We present a confluence criterion, local decreasingness, for abstract reduction systems. This criterion is shown to be a considerable generalisation of several wellknown confluence criteria. 1 Introduction An abstract reduction system is a set of objects equipped with some binary `reduction&apos ..."
Abstract

Cited by 17 (5 self)
 Add to MetaCart
We present a confluence criterion, local decreasingness, for abstract reduction systems. This criterion is shown to be a considerable generalisation of several wellknown confluence criteria. 1 Introduction An abstract reduction system is a set of objects equipped with some binary `reduction' relations. Because they have so little structure, abstract reduction systems can be viewed as abstractions of several kinds of rewriting such as string rewriting, term rewriting and graph rewriting. In the case of term rewriting, the objects model terms and the reduction relations model (nondeterministic) computations. A desirable property in computing is that results of computations are unique (if they exist). In the case that whenever we have two `diverging' computations starting from the same term, a common result can be reached by `converging' computations (the socalled confluence or ChurchRosser property), uniqueness is guaranteed. a c d a b d Confluence In this paper we present a ...
Calculi of Generalised βReduction and Explicit Substitutions: The TypeFree and Simply Typed Versions
, 1998
"... Extending the λcalculus with either explicit substitution or generalized reduction has been the subject of extensive research recently, and still has many open problems. This paper is the first investigation into the properties of a calculus combining both generalized reduction and explicit substit ..."
Abstract

Cited by 16 (8 self)
 Add to MetaCart
Extending the λcalculus with either explicit substitution or generalized reduction has been the subject of extensive research recently, and still has many open problems. This paper is the first investigation into the properties of a calculus combining both generalized reduction and explicit substitutions. We present a calculus, gs, that combines a calculus of explicit substitution, s, and a calculus with generalized reduction, g. We believe that gs is a useful extension of the  calculus, because it allows postponement of work in two different but complementary ways. Moreover, gs (and also s) satisfies properties desirable for calculi of explicit substitutions and generalized reductions. In particular, we show that gs preserves strong normalization, is a conservative extension of g, and simulates fireduction of g and the classical calculus. Furthermore, we study the simply typed versions of s and gs, and show that welltyped terms are strongly normalizing and that other properties,...
A nondeterministic callbyneed lambda calculus
 INTERNATIONAL CONFERENCE ON FUNCTIONAL PROGRAMMING
, 1998
"... In this paper we present a nondeterministic callbyneed (untyped) lambda calculus nd with a constant choice and a letsyntax that models sharing. Our main result is that nd has the nice operational properties of the standard lambda calculus: confluence on sets of expressions, and normal order redu ..."
Abstract

Cited by 16 (7 self)
 Add to MetaCart
In this paper we present a nondeterministic callbyneed (untyped) lambda calculus nd with a constant choice and a letsyntax that models sharing. Our main result is that nd has the nice operational properties of the standard lambda calculus: confluence on sets of expressions, and normal order reduction is sufficient to reach head normal form. Using a strong contextual equivalence we show correctness of several program transformations. In particular of lambdalifting using deterministic maximal free expressions. These results show that nd is a new and also natural combination of nondeterminism and lambdacalculus, which has a lot of opportunities for parallel evaluation. An intended application of nd is as a foundation for compiling lazy functional programming languages with I/O based on direct calls. The set of correct program transformations can be rigorously distinguished from noncorrect ones. All program transformations are permitted with the slight exception that for transformations like common subexpression elimination and lambdalifting with maximal free expressions the involved subexpressions have to be deterministic ones.
Lean clausesets: Generalizations of minimally unsatisfiable clausesets
 Discrete Applied Mathematics
, 2000
"... We study the problem of (efficiently) deleting such clauses from conjunctive normal forms (clausesets) which can not contribute to any proof of unsatisfiability. For that purpose we introduce the notion of an autarky system, associated with a canonical normal form for every clauseset by deleti ..."
Abstract

Cited by 15 (8 self)
 Add to MetaCart
We study the problem of (efficiently) deleting such clauses from conjunctive normal forms (clausesets) which can not contribute to any proof of unsatisfiability. For that purpose we introduce the notion of an autarky system, associated with a canonical normal form for every clauseset by deleting superfluous clauses. Clausesets where no clauses can be deleted are called lean, a natural generalization of minimally unsatisfiable clausesets, opening the possibility for combinatorial approaches (and including also satisfiable instances). Three special examples for autarky systems are considered: general autarkies, linear autarkies (based on linear programming) and matching autarkies (based on matching theory). We give new characterizations of lean and linearly lean clausesets by "universal linear programming problems," while matching lean clausesets are characterized in terms of "deficiency, " the difference between the number of clauses and the number of variables, and ...