  Algorithmic Cooling (AC) of spins applies entropy manipulation algorithms in
open spin-systems in order to cool spins far beyond Shannon's entropy bound. AC
of nuclear spins was demonstrated experimentally, and may contribute to nuclear
magnetic resonance (NMR) spectroscopy. Several cooling algorithms were
suggested in recent years, including practicable algorithmic cooling (PAC) and
exhaustive AC. Practicable algorithms have simple implementations, yet their
level of cooling is far from optimal; Exhaustive algorithms, on the other hand,
cool much better, and some even reach (asymptotically) an optimal level of
cooling, but they are not practicable. We introduce here semi-optimal
practicable AC (SOPAC), wherein few cycles (typically 2-6) are performed at
each recursive level. Two classes of SOPAC algorithms are proposed and
analyzed. Both attain cooling levels significantly better than PAC, and are
much more efficient than the exhaustive algorithms. The new algorithms are
shown to bridge the gap between PAC and exhaustive AC. In addition, we
calculated the number of spins required by SOPAC in order to purify qubits for
quantum computation. As few as 12 and 7 spins are required (in an ideal
scenario) to yield a mildly pure spin (60% polarized) from initial
polarizations of 1% and 10%, respectively. In the latter case, about five more
spins are sufficient to produce a highly pure spin (99.99% polarized), which
could be relevant for fault-tolerant quantum computing.
