2020
DOI: 10.48550/arxiv.2002.07262
|View full text |Cite
Preprint
|
Sign up to set email alerts
|

Denotational semantics as a foundation for cost recurrence extraction for functional languages

Norman Danner,
Daniel R. Licata

Abstract: A standard method for analyzing the asymptotic complexity of a program is to extract a recurrence that describes its cost in terms of the size of its input, and then to compute a closed-form upper bound on that recurrence. In practice there is rarely a formal argument that the recurrence is in fact an upper bound; indeed, there is usually no formal connection between the program and the recurrence at all. Here we develop a method for extracting recurrences from functional programs in a higher-order language wi… Show more

Help me understand this report
View published versions

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1

Citation Types

0
3
0

Year Published

2020
2020
2020
2020

Publication Types

Select...
1

Relationship

1
0

Authors

Journals

citations
Cited by 1 publication
(3 citation statements)
references
References 23 publications
0
3
0
Order By: Relevance
“…It includes some standard connectives of linear logic, such as positive/eager/multiplicative products (⊗ and 1), sums/coproducts (⊕), and functions (⊸), as well as negative/lazy/additive products (&). The language has two basic datatypes, natural numbers (N) and (eager) lists (List (A)), both with structural recursion (though we expect these techniques to extend to all strictly positive inductive types [8,9]).…”
Section: Intermediate Language λ Amentioning
confidence: 99%
See 2 more Smart Citations
“…It includes some standard connectives of linear logic, such as positive/eager/multiplicative products (⊗ and 1), sums/coproducts (⊕), and functions (⊸), as well as negative/lazy/additive products (&). The language has two basic datatypes, natural numbers (N) and (eager) lists (List (A)), both with structural recursion (though we expect these techniques to extend to all strictly positive inductive types [8,9]).…”
Section: Intermediate Language λ Amentioning
confidence: 99%
“…The definition of slrec is similar; the new question that arises is that, because we have abstracted lists as their lengths, forgetting the elements, we do not have a value for the head of the list to supply to д (which, when we use this operation, will be the translation of the cons branch given to the λ C recursor). Here, we always supply ∞ as the head list element, which is sufficient when the analysis really does not require any information about the elements of the list (otherwise, one can make a model where lists are interpreted more precisely than as their lengths [8,9]).…”
Section: Semantic Interpretationmentioning
confidence: 99%
See 1 more Smart Citation