English

A generic imperative language for polynomial time

Logic in Computer Science 2020-02-20 v2 Computational Complexity Programming Languages Logic

Abstract

The ramification method in Implicit Computational Complexity has been associated with functional programming, but adapting it to generic imperative programming is highly desirable, given the wider algorithmic applicability of imperative programming. We introduce a new approach to ramification which, among other benefits, adapts readily to fully general imperative programming. The novelty is in ramifying finite second-order objects, namely finite structures, rather than ramifying elements of free algebras. In so doing we bridge between Implicit Complexity's type theoretic characterizations of feasibility, and the data-flow approach of Static Analysis.

Keywords

Cite

@article{arxiv.1911.04026,
  title  = {A generic imperative language for polynomial time},
  author = {Daniel Leivant},
  journal= {arXiv preprint arXiv:1911.04026},
  year   = {2020}
}

Comments

18 pages, submitted to a conference

R2 v1 2026-06-23T12:11:00.715Z