Abstract :
We characterize computationally the functions provable in second order logic with set existence restricted to natural classes of first order formulas. A classification of first-order set-existence by implicational rank yields a natural hierarchy of complexity classes within the class of Kalmar-elementary functions: The functions over {0, 1}* constructively provable using set existence for formulas of implicational rank ≤k are precisely the functions computable in deterministic time O(expk(n)), where exp0=Uk(λn.nk), and expk+1=2(expk).1 In particular, set-existence for positive formulas yields exactly PTime. We thus obtain lean and natural formalisms for codifying feasible mathematics, which are expressive both in allowing second order definitions and reasoning, and in incorporating equational programming and reasoning about program convergence in a direct and uncoded style. Through a formula-as-type morphism, we also obtain a link with lambda definability, which we exhibit in the full paper: The functions over {0, 1}* definable in the polymorphic lambda calculus F2 over a base of type of words, using first-order type-arguments of rank ≤k, are precisely the functions computable in deterministic time O(expk(n)).2 The poly-time case was proved (directly) in [15].
Keywords :
computational complexity; formal logic; lambda calculus; Kalmar-elementary functions; abstraction rank; complexity classes; computational complexity; computational feasibility; deterministic time; equational programming; first order formulas; first-order type-arguments; formula-as-type morphism; implicational rank; lambda definability; natural classes; natural hierarchy; polymorphic lambda calculus; program convergence; reasoning; second order logic; Arithmetic; Calculus; Calibration; Computational complexity; Equations; Logic; Mathematical programming; Mathematics; Reasoning about programs; Size control;