The Power of Non-determinism in Higher-Order Implicit Complexity
We investigate the power of non-determinism in purely functional programming languages with higher-order types. Specifically, we consider cons-free programs of varying data orders, equipped with explicit non-deterministic choice. Cons-freeness roughly means that data constructors cannot occur in function bodies and all manipulation of storage space thus has to happen indirectly using the call stack.
While cons-free programs have previously been used by several authors to characterise complexity classes, the work on non-deterministic programs has almost exclusively considered programs of data order 0. Previous work has shown that adding explicit non-determinism to cons-free programs taking data of order 0 does not increase expressivity; we prove that this—dramatically—is not the case for higher data orders: adding non-determinism to programs with data order at least 1 allows for a characterisation of the entire class of elementary-time decidable sets.
Finally we show how, even with non-deterministic choice, the original hierarchy of characterisations is restored by imposing different restrictions.
KeywordsImplicit computational complexity Cons-free programming EXPTIME hierarchy Non-deterministic programming Unitary variables
- 1.Bellantoni, S.: Ph.D. thesis, University of Toronto (1993)Google Scholar
- 5.Clote, P.: Computation models and function algebras. In: Handbook of Computability Theory, pp. 589–681. Elsevier (1999)Google Scholar
- 14.Kop, C., Simonsen, J.: Complexity hierarchies and higher-order cons-free rewriting. In: Kesner, D., Pientka, B. (eds.) FSCD. LIPIcs, vol. 52, pp. 23:1–23:18 (2016). 10.4230/LIPIcs.FSCD.2016.23
- 15.Kop, C., Simonsen, J.: The power of non-determinism in higher-order implicit complexity (extended version). Technical report, University of Copenhagen (2017). https://arxiv.org/pdf/1701.05382.pdf