一句话:提出 measure function 及非多项式综合方法,证明非确定性递归程序非多项式最坏情况界。
该论文研究非确定性递归程序的最坏情况界证明。作者将用于非递归程序的 ranking function 推广为 measure function,并证明其对非确定性递归程序的最坏情况界是可靠且完备的。第二项贡献是通过对数/指数项抽象、Farkas 引理与 Handelman 定理,利用线性规划综合非多项式形式的 measure function。该方法可得到 O(n log n) 和 O(n^r)(r 非整数)等界;实验在归并排序、堆排序、最近点对分治、Karatsuba 和 Strassen 等算法上验证了有效性,也能获得多项式的界。
We study the problem of developing efficient approaches for proving worst-case bounds of non-deterministic recursive programs. Ranking functions are sound and complete for proving termination and worst-case bounds of non-recursive programs. First, we apply ranking functions to recursion, resulting in measure functions. We show that measure functions provide a sound and complete approach to prove worst-case bounds of non-deterministic recursive programs. Our second contribution is the synthesis of measure functions in non-polynomial forms. We show that non-polynomial measure functions with logarithm and exponentiation can be synthesized through abstraction of logarithmic or exponentiation terms, Farkas Lemma, and Handelman’s Theorem using linear programming. While previous methods obtain polynomial worst-case bounds, our approach can synthesize bounds of various forms including O( n log n ) and O( n r ), where r is not an integer. We present experimental results to demonstrate that our approach can efficiently obtain worst-case bounds of classical recursive algorithms such as (i) Merge sort, Heap sort, and the divide-and-conquer algorithm for the Closest Pair problem, where we obtain O( n log n ) worst-case bound, and (ii) Karatsuba’s algorithm for polynomial multiplication and Strassen’s algorithm for matrix multiplication, for which we obtain O( n r ) bounds such that r is not an integer and is close to the best-known bound for the respective algorithm. Besides the ability to synthesize non-polynomial bounds, we also show that our approach is equally capable of obtaining polynomial worst-case bounds for classical programs such as Quick sort and the dynamic programming algorithm for computing Fibonacci numbers.
DOI 原文 · arXiv · PDF(开放获取) · DBLP
@article{ChatterjeeFG17,
title = {Non-polynomial Worst-Case Analysis of Recursive Programs},
author = {Krishnendu Chatterjee and Hongfei Fu and Amir Kafshdar Goharshady},
journal = {ACM Transactions on Programming Languages and Systems},
volume = {41},
number = {4},
year = {2019},
doi = {10.1145/3339984}
}