Recurrence extraction for functional programs through call-by-push-value
Recurrence extraction for functional programs through call-by-push-value
复制标题
通过按值调用对功能程序进行递归提取
DOI:
--
复制
发表时间:
2019
期刊:
影响因子:
--
通讯作者:
N. Danner
中科院分区:
文献类型:
--
作者:
G. A. Kavvos;Edward Morehouse;Daniel R. Licata;N. Danner
The main way of analysing the complexity of a program is that of extracting and solving a recurrence that expresses its running time in terms of the size of its input. We develop a method that automatically extracts such recurrences from the syntax of higher-order recursive functional programs. The resulting recurrences, which are programs in a call-by-name language with recursion, explicitly compute the running time in terms of the size of the input. In order to achieve this in a uniform way that covers both call-by-name and call-by-value evaluation strategies, we use Call-by-Push-Value (CBPV) as an intermediate language. Finally, we use domain theory to develop a denotational cost semantics for the resulting recurrences.
DOI:
10.29007/xkwx
发表时间:
2018
期刊:
EPiC Series in Computing
影响因子:
--
作者:
Niu, Yue;Hoffmann, Jan
通讯作者:
Hoffmann, Jan