Reasoning about the garden of forking paths
Reasoning about the garden of forking paths
复制标题
关于分叉小径花园的推理
DOI:
10.1145/3473585
复制
发表时间:
2021
影响因子:
--
通讯作者:
Weirich, Stephanie
中科院分区:
文献类型:
--
作者:
Li, Yao;Xia, Li-yao;Weirich, Stephanie
Lazy evaluation is a powerful tool for functional programmers. It enables the concise expression of on-demand computation and a form of compositionality not available under other evaluation strategies. However, the stateful nature of lazy evaluation makes it hard to analyze a program's computational cost, either informally or formally. In this work, we present a novel and simple framework for formally reasoning about lazy computation costs based on a recent model of lazy evaluation: clairvoyant call-by-value. The key feature of our framework is its simplicity, as expressed by our definition of the clairvoyance monad. This monad is both simple to define (around 20 lines of Coq) and simple to reason about. We show that this monad can be effectively used to mechanically reason about the computational cost of lazy functional programs written in Coq.
登录
查看更多内容
DOI:
--
发表时间:
1999
期刊:
ACM-SIGACT Symposium on Principles of Programming Languages
影响因子:
--
作者:
Andrew Moran;David Sands
通讯作者:
David Sands
DOI:
10.1145/3314221.3322484
发表时间:
2019
期刊:
ArXiv
影响因子:
--
作者:
Antal Spector;Joachim Breitner;Yao Li;Stephanie Weirich
通讯作者:
Stephanie Weirich
DOI:
10.1145/1088348.1088355
发表时间:
2005
期刊:
ArXiv
影响因子:
--
作者:
Andreas Abel;Marcin Benke;Ana Bove;John Hughes;U. Norell
通讯作者:
U. Norell
DOI:
10.1007/3-540-39185-1_17
发表时间:
2002
期刊:
Theor. Comput. Sci.
影响因子:
--
作者:
Tarmo Uustalu
通讯作者:
Tarmo Uustalu
影响因子:
--
作者:
Wouter Swierstra;T. Baanen
通讯作者:
T. Baanen