A type-based complexity analysis of object oriented programs

From MaRDI portal
Publication:1640983

DOI10.1016/J.IC.2018.05.006zbMATH Open1395.68087arXiv1802.06653OpenAlexW2964137868WikidataQ129726623 ScholiaQ129726623MaRDI QIDQ1640983FDOQ1640983


Authors: Emmanuel Hainry, Romain Péchoux Edit this on Wikidata


Publication date: 14 June 2018

Published in: Information and Computation (Search for Journal in Brave)

Abstract: A type system is introduced for a generic Object Oriented programming language in order to infer resource upper bounds. A sound andcomplete characterization of the set of polynomial time computable functions is obtained. As a consequence, the heap-space and thestack-space requirements of typed programs are also bounded polynomially. This type system is inspired by previous works on ImplicitComputational Complexity, using tiering and non-interference techniques. The presented methodology has several advantages. First, itprovides explicit big O polynomial upper bounds to the programmer, hence its use could allow the programmer to avoid memory errors.Second, type checking is decidable in polynomial time. Last, it has a good expressivity since it analyzes most object oriented featureslike inheritance, overload, override and recursion. Moreover it can deal with loops guarded by objects and can also be extended tostatements that alter the control flow like break or return.


Full work available at URL: https://arxiv.org/abs/1802.06653




Recommendations




Cites Work


Cited In (11)

Uses Software





This page was built for publication: A type-based complexity analysis of object oriented programs

Report a bug (only for logged in users!)Click here to report a bug for this page (MaRDI item Q1640983)