Linear dependent types in a call-by-value scenario

Linear dependent types were introduced recently (Dal Lago and Gaboardi, 2012) [26] as a formal system that allows to precisely capture both the extensional behavior and the time complexity of λ-terms, when the latter are evaluated by Krivine’s abstract machine. In this work, we show that the same pa...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Veröffentlicht in:Science of computer programming Jg. 84; S. 77 - 100
Hauptverfasser: Dal Lago, Ugo, Petit, Barbara
Format: Journal Article
Sprache:Englisch
Veröffentlicht: Elsevier B.V 01.05.2014
Elsevier
Schlagworte:
ISSN:0167-6423, 1872-7964
Online-Zugang:Volltext
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
Beschreibung
Zusammenfassung:Linear dependent types were introduced recently (Dal Lago and Gaboardi, 2012) [26] as a formal system that allows to precisely capture both the extensional behavior and the time complexity of λ-terms, when the latter are evaluated by Krivine’s abstract machine. In this work, we show that the same paradigm can be applied to call-by-value computation. A system of linear dependent types for Plotkin’s PCF  is introduced, called dℓPCFV, whose types reflect the complexity of evaluating terms in the CEK  machine. dℓPCFV  is proved to be sound, but also relatively complete: every true statement about the extensional and intentional behavior of terms can be derived, provided all true index term inequalities can be used as assumptions. •A type system for complexity analysis of higher-order functional programs.•Extend previous, related, work to an applied, call-by-value, lambda-calculus.•The type system is not only sound, but relatively complete.•We provide fully-developed nontrivial examples of complexity analyses.
ISSN:0167-6423
1872-7964
DOI:10.1016/j.scico.2013.07.010