The Experts below are selected from a list of 261 Experts worldwide ranked by ideXlab platform

Roy Featherstone - One of the best experts on this subject based on the ideXlab platform.

Amir Kafshdar Goharshady - One of the best experts on this subject based on the ideXlab platform.

  • non polynomial worst case analysis of recursive programs
    ACM Transactions on Programming Languages and Systems, 2019
    Co-Authors: Krishnendu Chatterjee, Amir Kafshdar Goharshady
    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 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(nr), 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(nr) 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.

  • Non-polynomial Worst-Case Analysis of Recursive Programs
    arXiv: Programming Languages, 2017
    Co-Authors: Krishnendu Chatterjee, Hongfei Fu, Amir Kafshdar Goharshady
    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.

Krishnendu Chatterjee - One of the best experts on this subject based on the ideXlab platform.

  • non polynomial worst case analysis of recursive programs
    ACM Transactions on Programming Languages and Systems, 2019
    Co-Authors: Krishnendu Chatterjee, Amir Kafshdar Goharshady
    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 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(nr), 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(nr) 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.

  • Non-polynomial Worst-Case Analysis of Recursive Programs
    arXiv: Programming Languages, 2017
    Co-Authors: Krishnendu Chatterjee, Hongfei Fu, Amir Kafshdar Goharshady
    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.

Sander Stuijk - One of the best experts on this subject based on the ideXlab platform.

  • parametric throughput analysis of synchronous data flow graphs
    Design Automation and Test in Europe, 2008
    Co-Authors: A.h. Ghamarian, M.c.w. Geilen, Twan Basten, Sander Stuijk
    Abstract:

    Synchronous Data Flow Graphs (SDFGs) have proved to be a very successful tool for modeling, analysis and synthesis of multimedia applications targeted at both single- and multiprocessor platforms. One of the most prominent performance constraints of concurrent real-time applications is throughput. For given actor execution times, throughput can be verified by analyzing the SDFG models of such applications, for instance using maximum cycle mean analysis or state space analysis. In various contexts, such as design space exploration or run-time reconfiguration, many fast throughput computations are required for varying actor execution times. We present methods to compute throughput of an SDFG where actor execution times can be parameters. The throughput of these graphs is obtained in the form of a function of these parameters. Recalculation of throughput is then merely an evaluation of this function for specific parameter values, which is much faster than the standard throughput analysis. We propose three different Algorithms for parametric throughput analysis and evaluate these Algorithms experimentally, showing the feasibility of the approach and showing that a divide and conquer Algorithm performs best.

Andrew Thompson - One of the best experts on this subject based on the ideXlab platform.