From light logics to type assignments: a case study

M. Gaboardi, S. R. D. Rocca
2009 Logic Journal of the IGPL  
Using Soft Linear Logic (SLL) as case study, we analyze a method for transforming a light logic into a type assignment system for the λ-calculus, inheriting the complexity properties of the logics. Namely the typing assures the strong normalization in a number of steps polynomial in the size of the term, and moreover all polynomial functions can be computed by λ-terms that can be typed in the system. The proposed method is general enough to be used also for other light logics. Introduction The
more » ... ight logics, Light Linear Logic (LLL) [15] , Soft Linear Logic (SLL) [17] and Elementary Linear Logic (ELL) [8], were introduced as logical counterparts of some computational complexity classes. Proofs of LLL and SLL characterize polynomial time computations, while ELL characterizes elementary time computations. The characterization is based on the fact that proofs of these logics normalize in a number of cut-elimination steps which is either polynomial (in case of LLL and SLL) or elementary (in case of ELL) in their size, if their depth is fixed, and moreover they can encode every function with the given complexity. From a computer science perspective, light logics can be used for the design of programming languages with a given computational bound. This could be done in a straightforward way by a complete decoration of the logical proofs, but, due to the presence of modalities, the resulting languages could have a very complex syntactical structure, and they cannot be reasonably proposed for programming (an example of complete decoration of SLL is in [3]). A different approach is to fix as starting points: 1. The use of λ-calculus as an abstract paradigm of programming languages. 2. The use of types to characterize program properties. In this line, the aim becomes the design of a type assignment system for λ-calculus, where types are formulae of a light logic, in such a way that the logical properties are inherited by the well typed terms. Then types can be used for checking, besides the usual notion of correctness, also the complexity properties. Some results have already been obtained in this line. Two different proposals for a polynomial λ-calculus have been designed by Baillot and Terui [4] and Gaboardi and Ronchi Della Vol. 17 No. 5,
doi:10.1093/jigpal/jzp019 fatcat:hrdmcpi7pbed3gsxd56tf7x4vy