The ultimate goal of the project is to find a sequence of unitary operations to compress any quantum state
The number of qubits used to describe the initial state does not matter as much as the number of basis states in the superposition. If there are N basis states,
Quantum Information is enclosed in amplitudes of basis states, so we do not want to change these amplitudes by creating or collapsing superposition. Thus, the compression should be done using Pauli X, CNOT, and multi-control X (MCX) gates.
Since unitaries are invertible, we can always proceed back to the initial state by applying
To demonstrate the procedure, I show the compression of
where i ranges from 0 to 7 in my case.
It is relatively easy to eyeball the right sequence of gates to compress
Here, the first block of the circuit evolves
|
Compressed state (10000 runs) |
---|---|
|
After the compression, only qubits 5,6, and 7 are used while 0,1,2,3,4 remain in
In the second demo, I only used CNOT and Toffoli gates for compression:
The probability distributions before and after applying all the gates after the first barrier are:
|
Compressed state (10000 runs) |
---|---|
|
After the compression, only qubits 1,3, and 7 are used while 2,4,5,6 remain in
My theory is that the compression can be done using only X, CNOT, and Toffoli