Division is a fundamental problem for arithmetic and algebraic computation. This paper describes Boolean circuits (of bounded fan-in) for integer division (finding reciprocals) that have size <italic>&Ogr;</italic>(<italic>M</italic>(<italic>n</italic>)) and depth <italic>&Ogr;</italic>(log<italic>n</italic>log log<italic>n</italic>), where <italic>M</italic>(<italic>n</italic>) is the size complexity of <italic>&Ogr;</italic>(log<italic>n</italic>) depth integer multiplication circuits. Currently, <italic>M</italic>(<italic>n</italic>) is known to be <italic>&Ogr;</italic>(<italic>n</italic>log<italic>n</italic> log,<italic>n</italic>), but any improvement in this bound that preserves circuit depth will be reflected by a similar improvement in the size complexity of our division algorithm. Previously, no one has been able to derive a division circuit with size <italic>&Ogr;</italic>(<italic>n</italic> log<supscrpt><italic>c</italic></supscrpt> <italic>n</italic>) for any <italic>c</italic>, and simultaneous depth less than &OHgr;(log<supscrpt>2</supscrpt> <italic>n</italic>). Our circuits are logspace uniform; that is, they can be constructed by a deterministic Turing machine in space <italic>&Ogr;</italic>(log <italic>n</italic>).
Our results match the best known depth bounds for logspace uniform circuits, and are optimal in size.
The general method of high order iterative formulas is of independent interest as a way of efficiently using parallel processors to solve algebraic problems. In particular, our algorithm implies that any rational function can be evaluated in these complexity bounds.
As an introduction to high order iterative methods we also present a circuit for finding polynomial reciprocals (where the coefficients come from an arbitrary ring, and ring operations are unit cost in the circuit) in size <italic>&Ogr;</italic>(<italic>PM</italic> (<italic>n</italic>)) and depth <italic>&Ogr;</italic>(log <italic>n</italic> log log <italic>n</italic>), where <italic>PM</italic>(<italic>n</italic>) is the size complexity of optimal depth polynomial multiplication.
[1]
Stephen A. Cook,et al.
Log Depth Circuits for Division and Related Problems
,
1984,
SIAM J. Comput..
[2]
Allan Borodin,et al.
On Relating Time and Space to Size and Depth
,
1977,
SIAM J. Comput..
[3]
S. Cook,et al.
ON THE MINIMUM COMPUTATION TIME OF FUNCTIONS
,
1969
.
[5]
J. Traub.
Iterative Methods for the Solution of Equations
,
1982
.
[6]
Natarajan Shankar,et al.
Efficient Parallel Circuits and Algorithms for Division
,
1988,
Inf. Process. Lett..
[7]
Helmut Alt,et al.
Comparing the combinational complexities of arithmetic functions
,
1988,
JACM.
[8]
Alfred V. Aho,et al.
The Design and Analysis of Computer Algorithms
,
1974
.
[9]
John H. Reif.
Logarithmic Depth Circuits for Algebraic Functions
,
1986,
SIAM J. Comput..
[10]
Kurt Mehlhorn,et al.
Area-time Optimal Division for T=Omega(log n)1+epsilon
,
1986,
STACS.