Options
On pure space vs catalytic space
Date Issued
19-06-2022
Author(s)
Abstract
This paper explores the power of catalytic computation when the catalytic space (c(n), the full memory whose content needs to be restored to the original by the end of computation) is much more than exponential in the pure space (s(n), the empty memory which does not have any access/restoration constraints). We study the following three regimes of the relation between s(n) and c(n) and explore the class CSPACE(s(n),c(n)) in each of them. • High-end regime - s(n)=O(c(n)ϵ): We show an implementation of incremental dynamic program using catalytic machines, thus showing that Knapsack problem (with n items, sum of their costs as C and the capacity of the bag as K) can be solved in O(nlognlogC+log(nKC)) pure space and O(n2KC3log2Klogn) catalytic space. Hence, catalytic algorithms can lead to a non-trivial saving in the pure space required for computation when K is Ω(n2). • Low-end regime - s(n)=O(1): We define the classes CR and CNR (nondeterministic variant of CR) where s(n)=O(1) and c(n)=poly(n). Exploring the connection between computational power of one counter machines (OC) and constant pure space catalytic Turing machines, we observe that OC⊆CR and show that CR⊆OC⇒CR≠CNR. We prove that L⊈CSPACE(O(1),o(n)). We also study the effect of adding additional read-only tapes to the model and show that: For any k∈N, (k+1)-CSPACE(O(1),O(nc))⊆CSPACE(klogn,nc)⊆(4k+1)-CSPACE(O(1),O(nc)). • Low-end non-constant regime - s(n)=o(loglogn): Let M be an oblivious catalytic Turing machine using s(n) pure space and c(n) catalytic space such that s(n)+logc(n)=o(loglogn) then L(M) is regular. This strengthens the classical theorem on s(n)=o(loglogn) to the case of catalytic Turing machines. Our techniques include interesting generalizations of crossing sequence arguments and implementations of incremental dynamic programs using catalytic algorithms. These may be of independent interest.
Volume
921