Non-polynomial worst-case analysis of recursive programs
Chatterjee K, Fu H, Goharshady AK. 2019. Non-polynomial worst-case analysis of recursive programs. ACM Transactions on Programming Languages and Systems. 41(4), 20.
Download (ext.)
https://arxiv.org/abs/1705.00317
[Preprint]
DOI
Journal Article
| Published
| English
Scopus indexed
Author
Department
Grant
Abstract
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
nonrecursive 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
nonpolynomial 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 worst-case polynomial
bounds, our approach can synthesize bounds of the form $\mathcal{O}(n\log n)$
as well as $\mathcal{O}(n^r)$ where $r$ is not an integer. We present
experimental results to demonstrate that our approach can obtain efficiently
worst-case bounds of classical recursive algorithms such as (i) Merge-Sort, the
divide-and-conquer algorithm for the Closest-Pair problem, where we obtain
$\mathcal{O}(n \log n)$ worst-case bound, and (ii) Karatsuba's algorithm for
polynomial multiplication and Strassen's algorithm for matrix multiplication,
where we obtain $\mathcal{O}(n^r)$ bound such that $r$ is not an integer and
close to the best-known bounds for the respective algorithms.
Publishing Year
Date Published
2019-10-01
Journal Title
ACM Transactions on Programming Languages and Systems
Publisher
ACM
Volume
41
Issue
4
Article Number
20
IST-REx-ID
Cite this
Chatterjee K, Fu H, Goharshady AK. Non-polynomial worst-case analysis of recursive programs. ACM Transactions on Programming Languages and Systems. 2019;41(4). doi:10.1145/3339984
Chatterjee, K., Fu, H., & Goharshady, A. K. (2019). Non-polynomial worst-case analysis of recursive programs. ACM Transactions on Programming Languages and Systems. ACM. https://doi.org/10.1145/3339984
Chatterjee, Krishnendu, Hongfei Fu, and Amir Kafshdar Goharshady. “Non-Polynomial Worst-Case Analysis of Recursive Programs.” ACM Transactions on Programming Languages and Systems. ACM, 2019. https://doi.org/10.1145/3339984.
K. Chatterjee, H. Fu, and A. K. Goharshady, “Non-polynomial worst-case analysis of recursive programs,” ACM Transactions on Programming Languages and Systems, vol. 41, no. 4. ACM, 2019.
Chatterjee K, Fu H, Goharshady AK. 2019. Non-polynomial worst-case analysis of recursive programs. ACM Transactions on Programming Languages and Systems. 41(4), 20.
Chatterjee, Krishnendu, et al. “Non-Polynomial Worst-Case Analysis of Recursive Programs.” ACM Transactions on Programming Languages and Systems, vol. 41, no. 4, 20, ACM, 2019, doi:10.1145/3339984.
All files available under the following license(s):
Copyright Statement:
This Item is protected by copyright and/or related rights. [...]
Link(s) to Main File(s)
Access Level
Open Access
Material in ISTA:
Earlier Version
Dissertation containing ISTA record
Export
Marked PublicationsOpen Data ISTA Research Explorer
Web of Science
View record in Web of Science®Sources
arXiv 1705.00317