Summary: The Division Breakthroughs
Eric Allender 1
All of us learn to do arithmetic in grade school. The algorithms for addition and
subtraction take some time to master, and the multiplication algorithm is even more
complicated. Eventually students learn the division algorithm; most students find
it to be complicated, time-consuming, and tedious. Is there a better way to divide?
For most practical purposes, the correct way to answer this question is to con-
sider the time-complexity of division; what is the fastest division algorithm? That
is not the subject of this article. I am not aware of any recent breakthrough on
this question; any good textbook on design and analysis of algorithms will tell you
about the current state of the art on that front.
Complexity theory gives us an equally-valid way to ask about the complexity
In what complexity class does division lie?
One of the most important subclasses of P (and one of the first to be defined
and studied) is the class L (deterministic logarithmic space). It is easy to see how
to add and subtract in L. It is a simple exercise to show that multiplication can be
computed in logspace, too. However, it had been an open question since the 1960's
if logspace machines can divide.