44 articles – 42 references  [version française]

hal-00443944, version 1

A PolyTime Functional Language from Light Linear Logic

Patrick Baillot () 1, Marco Gaboardi () 2, Virgile Mogbil () 3

19th European Symposium on Programming (ESOP 2010) 6012 (2010) pp. 104-124

Abstract: We introduce a typed functional programming language LPL (acronym for Light linear Programming Language) in which all valid programs run in polynomial time, and which is complete for polynomial time functions. LPL is based on lambda-calculus, with constructors for algebraic data-types, pattern matching and recursive definitions, and thus allows for a natural programming style. The validity of LPL programs is checked through typing and a syntactic criterion on recursive definitions. The higher order type system is designed from the ideas of Light linear logic: stratification, to control recursive calls, and weak exponential connectives §, !, to control duplication of arguments.

  • 1:  Laboratoire de l'Informatique du Parallélisme (LIP)
  • Université de Lyon – CNRS : UMR5668 – INRIA – École Normale Supérieure - Lyon – Université Claude Bernard - Lyon I
  • 2:  Dipartimento di Informatica [Torino]
  • Università di Torino
  • 3:  Laboratoire d'informatique de Paris-nord (LIPN)
  • CNRS : UMR7030 – Université Paris XIII - Paris Nord
  • Domain : Computer Science/Logic in Computer Science
    Computer Science/Programming Languages
    Computer Science/Computational Complexity
  • Keywords : Functional Language – Light linear logic – Polynomial Time – Implicit Computational Complexity – Type System
  • Internal note : rapport interne LIPN
  • Comment : 30 pages
 
  • hal-00443944, version 1
  • oai:hal.archives-ouvertes.fr:hal-00443944
  • From: 
  • Submitted on: Tuesday, 5 January 2010 11:14:01
  • Updated on: Friday, 1 April 2011 23:47:25