Results 11  20
of
128
Higher Type Recursion, Ramification and Polynomial Time
 Annals of Pure and Applied Logic
, 1999
"... It is shown how to restrict recursion on notation in all finite types so as to characterize the polynomial time computable functions. The restrictions are obtained by enriching the type structure with the formation of types !oe, and by adding linear concepts to the lambda calculus. 1 Introduction ..."
Abstract

Cited by 22 (3 self)
 Add to MetaCart
It is shown how to restrict recursion on notation in all finite types so as to characterize the polynomial time computable functions. The restrictions are obtained by enriching the type structure with the formation of types !oe, and by adding linear concepts to the lambda calculus. 1 Introduction Recursion in all finite types was introduced by Hilbert [9] and later became known as the essential part of Godel's system T [8]. This system has long been viewed as a powerful scheme unsuitable for describing small complexity classes such as polynomial time. Simmons [16] showed that ramification can be used to characterize the primitive recursive functions by higher type recursion, and Leivant and Marion [14] showed that another form of ramification can be used to restrict higher type recursion to PSPACE. However, to characterize the much smaller class of polynomialtime computable functions by higher type recursion, it seems that an additional principle is required. By introducing linear...
A Functional Scenario for Bytecode Verification of Resource Bounds
 In Jerzy Marcinkowski and Andrzej Tarlecki, editors, Computer Science Logic, 18th International Workshop, CSL 13th Annual Conference of the EACSL, Karpacz
, 2004
"... We consider a scenario where (functional) programs in precompiled form are exchanged among untrusted parties. Our contribution is a system of annotations for the code that can be verified at load time so as to ensure bounds on the time and space resources required for its execution, as well as t ..."
Abstract

Cited by 22 (3 self)
 Add to MetaCart
We consider a scenario where (functional) programs in precompiled form are exchanged among untrusted parties. Our contribution is a system of annotations for the code that can be verified at load time so as to ensure bounds on the time and space resources required for its execution, as well as to guarantee the usual integrity properties.
Safe recursion with higher types and BCKalgebra
 Annals of Pure and Applied Logic
, 2000
"... In previous work the author has introduced a lambda calculus SLR with modal and linear types which serves as an extension of BellantoniCook's function algebra BC to higher types. It is a step towards a functional programming language in which all programs run in polynomial time. In this paper we de ..."
Abstract

Cited by 21 (3 self)
 Add to MetaCart
In previous work the author has introduced a lambda calculus SLR with modal and linear types which serves as an extension of BellantoniCook's function algebra BC to higher types. It is a step towards a functional programming language in which all programs run in polynomial time. In this paper we develop a semantics of SLR using BCKalgebras consisting of certain polynomialtime algorithms. It will follow from this semantics that safe recursion with arbitrary result type built up from N and ( as well as recursion over trees and other data structures remains within polynomial time. In its original formulation SLR supported only natural numbers and recursion on notation with first order functional result type. 1 Introduction In [10] and [11] we have introduced a lambda calculus SLR which generalises the BellantoniCook characterisation of PTIME [2] to higherorder functions. The separation between normal and safe variables which is crucial to the BellantoniCook system has been achieved...
Soft lambdacalculus: a language for polynomial time computation
 In Proc. FoSSaCS, Springer LNCS 2987
, 2004
"... Abstract. Soft linear logic ([Lafont02]) is a subsystem of linear logic characterizing the class PTIME. We introduce Soft lambdacalculus as a calculus typable in the intuitionistic and affine variant of this logic. We prove that the (untyped) terms of this calculus are reducible in polynomial time. ..."
Abstract

Cited by 19 (2 self)
 Add to MetaCart
Abstract. Soft linear logic ([Lafont02]) is a subsystem of linear logic characterizing the class PTIME. We introduce Soft lambdacalculus as a calculus typable in the intuitionistic and affine variant of this logic. We prove that the (untyped) terms of this calculus are reducible in polynomial time. We then extend the type system of Soft logic with recursive types. This allows us to consider nonstandard types for representing lists. Using these datatypes we examine the concrete expressiveness of Soft lambdacalculus with the example of the insertion sort algorithm. 1
A mixed modal/linear lambda calculus with applications to BellantoniCook safe recursion
, 1998
"... . This paper introduces a simplytyped lambda calculus with both modal and linear function types. Through the use of subtyping extra term formers associated with modality and linearity are avoided. We study the basic metatheory of this system including existence and inference of principal types. The ..."
Abstract

Cited by 16 (7 self)
 Add to MetaCart
. This paper introduces a simplytyped lambda calculus with both modal and linear function types. Through the use of subtyping extra term formers associated with modality and linearity are avoided. We study the basic metatheory of this system including existence and inference of principal types. The system serves as a platform for certain higherorder generalisations of BellantoniCook's function algebra capturing polynomial time using a separation of the variables into "safe" and "normal" ones. The distinction between and the syntactic restrictions involved with the safe and normal variables in the BellantoniCook framework are captured by the modal function space and the associated typing rules. The linear function spaces on the other hand are used to enable a certain form of primitive recursion with functional result type which is conservative over polynomial time. The proofs associated with these applications are based on an interpretation of the lambda calculus in a categorytheor...
Analysing the Implicit Complexity of Programs
, 2000
"... We construct a termination ordering, called light multiset path ordering (LMPO), which is a restriction of the multiset path ordering. We establish that the class of programs based on rewriting rules on lists which is terminating by LMPO, characterises exactly the functions computable in polynomial ..."
Abstract

Cited by 16 (7 self)
 Add to MetaCart
We construct a termination ordering, called light multiset path ordering (LMPO), which is a restriction of the multiset path ordering. We establish that the class of programs based on rewriting rules on lists which is terminating by LMPO, characterises exactly the functions computable in polynomial time.
Functionalgebraic characterizations of log and polylog parallel time
 Computational Complexity
, 1994
"... Abstract. The main results of this paper are recursiontheoretic characterizations of two parallel complexity classes: the functions computable by uniform bounded fanin circuit families of log and polylog depth (or equivalently, the functions bitwise computable by alternating Turing machines in log ..."
Abstract

Cited by 14 (4 self)
 Add to MetaCart
Abstract. The main results of this paper are recursiontheoretic characterizations of two parallel complexity classes: the functions computable by uniform bounded fanin circuit families of log and polylog depth (or equivalently, the functions bitwise computable by alternating Turing machines in log and polylog time). The present characterizations avoid the complex base functions, function constructors, and a priori size or depth bounds typical of previous work on these classes. This simplicity is achieved by extending the \tiered recursion " techniques of Leivant and Bellantoni&Cook. Key words. Circuit complexity � subrecursion. Subject classi cations. 68Q15, 03D20, 94C99. 1.
Algorithms With Polynomial Interpretation Termination Proof
 Journal of Functional Programming
, 1999
"... We study the effect of polynomial interpretation termination proofs of deterministic (resp. nondeterministic) algorithms defined by confluent (resp. nonconfluent) rewrite systems over data structures which include strings, lists and trees, and we classify them according to the interpretations of t ..."
Abstract

Cited by 13 (3 self)
 Add to MetaCart
We study the effect of polynomial interpretation termination proofs of deterministic (resp. nondeterministic) algorithms defined by confluent (resp. nonconfluent) rewrite systems over data structures which include strings, lists and trees, and we classify them according to the interpretations of the constructors. This leads to the definition of six classes which turn out to be exactly the deterministic (resp. nondeterministic) polytime, linear exponentialtime and doubly linear exponential time computable functions when the class is based on conuent (resp. nonconfluent) rewrite systems. We also obtain a characterisation of the linear space computable functions. Finally, we demonstrate that functions with exponential interpretation termination proofs are superelementary.
Efficient Optimization of Iterative Queries
 In Fourth International Workshop on Database Programming Languages
, 1993
"... This paper presents a new query algebra based on fold iterations that facilitates database implementation. An algebraic normalization algorithm is introduced that reduces any program expressed in this algebra to a canonical form that generates no intermediate data structures and has no more nested i ..."
Abstract

Cited by 12 (5 self)
 Add to MetaCart
This paper presents a new query algebra based on fold iterations that facilitates database implementation. An algebraic normalization algorithm is introduced that reduces any program expressed in this algebra to a canonical form that generates no intermediate data structures and has no more nested iterations than the initial program. Given any inductive data type, our system can automatically synthesize the definition of the fold operator that traverses instances of this type, and, more importantly, it can produce the necessary transformations for optimizing expressions involving this fold operator. Database implementation in our framework is controlled by userdefined mappings from abstract types to physical structures. The optimizer uses this information to translate abstract programs and queries into concrete algorithms that conform to the type transformation. Database query optimization can be viewed as a search over the reduced space of all canonical forms which are equivalent to t...