In quantum computation, a common operation performed between two quantum states is the tensor product, which allows us to create a new and higher-dimensional state from two lower-dimensional states. The tensor product is usually denoted by the symbol $\otimes$. So, if $\lvert \psi\rangle = \alpha \lvert 0\rangle + \beta \lvert 1\rangle \in \mathbb{C}^n$ and $\lvert \phi\rangle = \gamma \lvert 0\rangle + \delta \lvert 1\rangle \in \mathbb{C}^n$ are the states of two qubits, then $\lvert \psi\rangle \otimes \lvert \phi\rangle \in \mathbb{C}^{n^2}$ is their tensor product.

I have just come across the notation $\lvert \mathbf{x}, 0\rangle$ while reading section $1$ of this paper. What does it mean? I understood $\mathbf{x}$ is a (classical) bit string of length $n$ (and I think this the reason it's in bold).

I am aware of the fact that the tensor product of two vectors $\lvert \psi\rangle$ and $\lvert \phi\rangle$ can be shortened as follows $\lvert \psi\rangle \lvert \phi\rangle$. So, I don't think $\lvert \mathbf{x}, 0\rangle$ is also a shorthand for $\lvert \mathbf{x} \rangle \otimes\lvert 0\rangle$.


Yes, $|\mathbf{x},0\rangle$ is a shorthand for $|\mathbf x\rangle\otimes |0\rangle$.

Note that $|\mathbf x\rangle$ itself, with $\mathbf x = x_1x_2\dots x_N$ a bit string, is just a shorthand for $$ |\mathbf x\rangle \equiv |x_1\rangle \otimes |x_2\rangle \otimes\cdots |x_N\rangle\ . $$

| improve this answer | |
  • $\begingroup$ If that's the case, what's the meaning of applying a tensor product between a classical $n$ bit string $\lvert \mathbf{x} \rangle$ and a $2$-dimensional vector (or computational basis state) $\lvert 0 \rangle \in \mathbb{C}^2$? Why would one do that? Is $\lvert \mathbf{x} \rangle$ really a classical $n$ bit string? Why do we use the notation $\lvert \rangle$ then? $\endgroup$ – nbro Apr 26 '18 at 9:56
  • $\begingroup$ Updated. And: Why would one do that? To get classical information into a quantum computer. $\endgroup$ – Norbert Schuch Apr 26 '18 at 11:21
  • $\begingroup$ In the case of section 1 of your paper the idea is to use $|0\rangle$ as an ancillary qubit in the expression $|\mathbf{x},0\rangle$. An ancilla qubit is a qubit that is needed for computation in an intermediate step. Note the intermediate step in Fig. 1 where the ancilla stores the value of f(x) as $|f(x)\rangle$. Subsequently, an $R_X$ is applied to the ancilla (see circuit diagram) and then the ancilla is uncomputed by the second application of $U_f$. $\endgroup$ – Mark Fingerhuth Apr 26 '18 at 15:27
  • $\begingroup$ So, is the notation $\lvert \mathbf{x}, 0 \rangle$ (instead of $\lvert \mathbf{x} 0 \rangle$ or $\lvert \mathbf{x}\rangle \otimes \lvert 0 \rangle$ ) used because $\lvert 0\rangle$ is an ancilla qubit or because $\lvert \mathbf{x} \rangle$ is the quantum state associated with a binary string $\mathbf{x}$ (or both)? $\endgroup$ – nbro Apr 26 '18 at 15:53

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.