  Circular (or cyclic) proofs have received increasing attention in recent
years, and have been proposed as an alternative setting for studying
(co)inductive reasoning. In particular, now several type systems based on
circular reasoning have been proposed. However, little is known about the
complexity theoretic aspects of circular proofs, which exhibit sophisticated
loop structures atypical of more common `recursion schemes'. This paper
attempts to bridge the gap between circular proofs and implicit computational
complexity (ICC). Namely we introduce a circular proof system based on
Bellantoni and Cook's famous safe-normal function algebra, and we identify
proof theoretical constraints, inspired by ICC, to characterise the
polynomial-time and elementary computable functions. Along the way we introduce
new recursion theoretic implicit characterisations of these classes that may be
of interest in their own right.
