Quantum computing also needs methods to steer clear of errors, says S.Ananthanarayanan.

Quantum computing makes use of the property of very small objects to be in ‘many states at once’ to achieve computing speeds and output that is way beyond capacity of ordinary computers. When each such object can take many values at the same time, a group of them can represent a very large number of combination of values at the same time, and computations can be made ‘in parallel’, in place of being carried out one after the other. There has been enormous progress in the field and small, prototype quantum computers have been implemented. But the condition of atom-scale particles working in concert in multi-valued states is sensitive and short lived, and computations are prone to errors.

Conventional computing is error prone too, and there are now a number or ways of detecting errots and correcting them, on the fly. But the way that values are stored in the quantum world is quite different and available methods cannot be directly translated for use. A group of scientists at Innsbruck, Austria and Madrid report in the journal, Science, their success in implementing a procedure, employing charged calcium atoms as data stores, and not far removed, in principle, from a conventional method, for detecting and correcting simple errors in quantum computing.

The physics of very small dimensions is marked by the fuzziness, or uncertainty of position, of very small objects, like atoms or subatomic particles. Another feature is that properties like energy, or direction of spin, do not vary smoothly, or continuously, as they appear to in the ordinary world, but perceptibly in steps, also known as ‘quanta’. Quantum calculations can hence be digital but need to be made with this uncertainty in mind and that measurement would yield not be specific values, but one of possible outcomes. The dynamics of how this happens is that each particle of a group is in fact at its many possible states when is enters an interaction and there is a brace of outcomes which depend on any of the many combination possible, till there is a measurement and the system commits to specific values.

Quantum computing in practice makes use of properties, like the spin of atoms, to represent the numbers, 0 and 1, and perform digital calculations. Two such objects could thus represent four different outcomes, based on the two possible values in the objects. But as small objects can be in both states at once, there can be a computation of one desired result out of the four possible, in a single assay, in place of four trials, as we would need in the ordinary way. Typical computations in the real world involve billions of numbers and most are hence limited to an approximation, as the whole calculation may take years or even centuries. But quantum computing could change this and enable human projects to become vastly more efficient.

ErrorsWords or expressions that need to be exchanged are coded as a series of ‘0’s and ‘1’s. In conventional computing, there are possibilities of errors in transmission and any error would compromise the entire process. Methods to detect and also correct errors have thus been devised. One simple method is to transmit every piece of data three times. If any one transmission has an error, the data in the other two is taken as correct and the computation proceeds. Another method is to use a check digit to verify a series of digits. In the parity method, this check digit is either a ‘0’ or a ‘1’, depending on whether the data itself had an even or odd number of ‘1’s. This method can detect any single error and the data size is regulated so that more than single errors are not likely.

Yet another and ingenious method is to use a series of check digits, which are able to detect and also correct any single error. In this method, called the Hamming Code, the check digits are the 1st, 2nd, 4th, 8th, etc., in the series, at positions at the powers of the number ‘2’. The remaining positions are for the data digits. The check digits are set at ‘0’ or ‘1’, in such a way that each one forces a set of digits in the message, including itself, to have a given parity, which is to say, an odd or even number of ‘1’s. As any of the non check digit serial numbers can be formed out of a unique set out of 1,2,4,8… the powers of ‘2’, the serial numbers of the different check digits that have wrong parity indicate the specific data digit that has the error. This digit can then be reversed, and the transmission would be corrected, for single errors.

In quantum computing, the elements of data themselves, called qubits, are sensitive to the environment and the possibility of error is even greater than in conventional computing. The procedures followed also need to be different. The simplest method, of using three versions of each data element, for instance, is not feasible in the quantum world, as duplication amounts to measurement and this would destroy the ‘many states at once’ property. But there is a way to create a larger number of quantum data carriers that encode the original element and a procedure, the 3-qubit repetition code, which detects and locates the error, without extracting any information about the value involved, has been developed. Some other methods, one using a 5-qubit code have been developed.

But the most promising have been the so called CSS code methods, named after Calderman, Shor and Steane, who pioneered work in the area. This method of error detection and correction is akin to the Hamming code and proceeds from a principle that it takes at least five physical qubits to code a unit of information so that errors can be detected and rectified. The Innsbruck and Madrid researchers developed a coding scheme that uses seven cubits, each one in the form of the internal state of a charged calcium atom. The state of the atoms could be manipulated using lasers and the state of the qubit to be coded was written into the seven atom qubits. The seven qubits were mutually connected like a Hamming Code, to reveal mismatch and hence errors, and enable rectification, yet without measurement of the state itself. The group has also used the coding mechanism to implement a computation using coded cubits, with error detection and correction.

The achievement promises extension to more numbers of qubits, to lead to the objective of Fault Tolerance, which would enable practical use of Quantum Computing.