Harry Buhrman (CWI Amsterdam)
Calvin Lab 116
Computing with a full memory: Catalytic space
We define the notion of a catalytic-space computation. This is a computation that has a small amount of clean space available and is equipped with additional auxiliary space, with the caveat that the additional space is initially in an arbitrary, possibly incompressible, state and must be returned to this state when the computation is finished. We show that the extra space can be used in a nontrivial way, to compute uniform TC1-circuits with just a logarithmic amount of clean space. The extra space thus works analogously to a catalyst in a chemical reaction. TC1-circuits can compute for example the determinant of a matrix, which is not known to be computable in logspace.
In order to obtain our results we study an algebraic model of computation, a variant of straight-line programs. We employ register machines with input registers x1,...,xn and work registers r1,...rm. The instructions available are of the form ri <- ri \pm u\times v, with u,v registers (distinct from ri) or constants. We wish to compute a function f(x1,...,xn) through a sequence of such instructions. The working registers have some arbitrary initial value ri=i, and they may be altered throughout the computation, but by the end all registers must be returned to their initial value i, except for, say, r1 which must hold 1+f(x1,...,xn). We show that all of Valiant's class VP, and more, can be computed in this model. This significantly extends the framework and techniques of Ben-Or and Cleve [Ben-Or Cleve 1992].
Upper bounding the power of catalytic computation we show that catalytic logspace is contained in ZPP. We further construct an oracle world where catalytic logpace is equal to PSPACE, and show that under the exponential time hypothesis (ETH), SAT can not be computed in catalytic sub-linear space. [Ben-Or Cleve 1992]: M. Ben-Or and R. Cleve. Computing algebraic formulas using a constant number of registers. SIAM Journal on Computing, 21(1):54–58, 1992.