Theoretical Computer Science
Is there a use for linear logic?
PEPM '91 Proceedings of the 1991 ACM SIGPLAN symposium on Partial evaluation and semantics-based program manipulation
On the fine structure of the exponential rule
Proceedings of the workshop on Advances in linear logic
PLILPS '95 Proceedings of the 7th International Symposium on Programming Languages: Implementations, Logics and Programs
A type system for bounded space and functional in-place update
Nordic Journal of Computing
Optimizing optimal reduction: A type inference algorithm for elementary affine logic
ACM Transactions on Computational Logic (TOCL)
Principal Typing for Lambda Calculus in Elementary Affine Logic
Fundamenta Informaticae - Typed Lambda Calculi and Applications 2003, Selected Papers
Typing lambda terms in elementary logic with linear constraints
TLCA'01 Proceedings of the 5th international conference on Typed lambda calculi and applications
A linear-programming approach to temporal reasoning
AAAI'96 Proceedings of the thirteenth national conference on Artificial intelligence - Volume 2
A feasible algorithm for typing in elementary affine logic
TLCA'05 Proceedings of the 7th international conference on Typed Lambda Calculi and Applications
Linear regions are all you need
ESOP'06 Proceedings of the 15th European conference on Programming Languages and Systems
Logical foundations of secure resource management in protocol implementations
POST'13 Proceedings of the Second international conference on Principles of Security and Trust
Sensitivity analysis using type-based constraints
Proceedings of the 1st annual workshop on Functional programming concepts in domain-specific languages
Hi-index | 0.00 |
We study the type checking and type inference problems for intuitionistic linear logic: given a System F typed λ-term, (i) for an alleged linear logic type, determine whether there exists a corresponding typing derivation in linear logic (type checking) ii) provide a concise description of all possible corresponding linear logic typings (type inference). We solve these problems using a novel algorithmic type system for linear logic whose typing rules carry arithmetic side conditions describing essentially the nesting depth of (proof-net) boxes. By understanding these side conditions as unknowns we then reduce type inference to solving a system of arithmetic constraints. We show that these constraint systems fall into a tractable class hence leading to an efficient (polynomial-time) solution. There are two important restrictions: first, our source language is typed System F rather than untyped lambda calculus; this is necessary because type inference for System F is known to be undecidable. Second, we assume that sharing is made explicit in the input, thus we do not try to automatically infer opportunities for sharing identical subterms. Relieving the latter restriction is left as a challenge for future work.