Skip main navigation

The No-Cloning Theorem in Quantum Computing

In this article, learn about what it means to "copy" quantum information, why it's impossible, and why it would imply violating the speed of light.

Simply put, if you are holding a qubit that is in an unknown state, it is impossible to make a perfect, independent (unentangled) copy of the qubit in all cases.


We would like to “copy” a qubit, but what does it mean to do so? There are two types of copies: dependent ones and independent ones. Dependent copies are entangled with the original qubit: making one copy, (|0rangle) goes to (|00rangle) (which we write (|0rangle rightarrow |00rangle)) and similarly, (|1rangle rightarrow |11rangle).

Actually, more correctly, we would start with one qubit in our data state (presumably some interesting superposition we would like to share or copy), and one that’s in a “blank” state to be the target of our copy, so that (|00rangle rightarrow |00rangle) and (|11rangle rightarrow |11rangle).

Using our dials, this kind of copy keeps the number of dials with vectors that aren’t zero the same, including the length and phase (direction) of the vectors. However, which states have those non-zero vectors changes – it shuffles them a bit. Let’s see what happens when we have the state (sqrt{1/2}|0rangle + sqrt{1/2}|1rangle) in one qubit and we try to copy it. We also have to start with the qubit we are going to copy onto, so let’s put that in the (|0rangle) state, so we are starting with ((sqrt{1/2}|0rangle + sqrt{1/2}|1rangle)|0rangle = sqrt{1/2}|00rangle + sqrt{1/2}|10rangle). This means that the effect looks like this:

one qubit being "copied" to another

(As always, the entries in the set of dials are 00, 01, 10, and 11, starting from the top.)

This logic applies for two, three or more copies, and also maintains the phase. Let’s look at copying the state (sqrt{1/2}|0rangle + sqrt{1/2}(pi)|1rangle) into two other qubits:

one qubit being "copied" to two others

Making an independent copy, in contrast, would increase the number of non-zero dials:

one qubit can't "copied" to another independently

Mathematically, the difference is that the dependent state can’t be factored, while the independent one can, just like in ordinary algebra:

[a^2 + b^2 ne (a + b)^2]

Recall that there are limitations to the kinds of operations we can execute on qubits. With the exception of measurement, everything we do has to be reversible. We can create the dependent (entangled) copy using the CNOT gate we discussed earlier. However, there is no way to make an unentangled copy of an unknown qubit state. This is known as the no-cloning theorem.

(If you are particularly astute, you may be guessing that there must be some way to increase the number of dials with non-zero vectors, and in fact many gates do. Our non-working example above could, in fact, be emulated by using a Hadamard gate. But that’s only true because we know exactly how the state we want to copy was made. Rather than copying it, that would be recreating it – like printing the same file twice, rather than photocopying a handmade drawing.)

Trying to Communicate Faster than the Speed of Light

When we discussed entanglement, we saw that completing the teleportation of a single qubit requires Alice to transmit two classical bits that are used as “corrections” to the state of Bob’s qubit. This is how Nature prevents faster-than-light movement of arbitrary data.

But can Alice and Bob use the “spooky action a distance” of a Bell pair to communicate faster than light? Let’s try.

First, Alice and Bob share a Bell pair. Then, if Alice wants to send a zero, she measures her qubit along the Z axis of the Bloch sphere. This will give a (|0rangle) 50% of the time and a (|1rangle) 50% of the time, of course, and the superposition of Bob’s qubit will now collapse and his qubit matches Alice’s. If Alice wants to send a one, she measures her qubit along the X axis, which collapses Bob’s qubit along the X axis also. If Bob’s qubit points along the X axis, that’s a superposition along the Z axis. Bob is now holding a different state than the one he is holding after Alice’s Z measurement. Is there a way that Bob can tell those two states apart? If so, he and Alice can communicate faster than the speed of light!

Let’s look at what happens when Bob measures his qubit. Of course, he doesn’t know which axis Alice used to measure her qubit, so the best he can do is just stick with measuring on the Z axis. If Alice is sending zero, Bob’s qubit matches Alice’s. However, her qubit is random, either (|0rangle) or (|1rangle). If Bob measures his qubit, he gets only a random bit that matches Alice’s. If Alice is sending one, Bob’s qubit is a 50/50 superposition before he measures it. When he measures, he randomly gets (|0rangle) or (|1rangle). In both cases, Bob sees only a random bit, and has learned nothing.

So, just using Bell pairs doesn’t appear to allow us to communicate faster than the speed of light. But what if we can use cloning?

Cloning Would Allow Faster-than-Light Communication

If it were possible to clone a qubit, Alice and Bob would still have a way to communicate faster than light. If Bob can clone his qubit before measuring it, he can tell whether Alice measured along the Z or X axis using basic statistics.

After Alice has measured her qubit, but before measuring his own, Bob clones his qubit. Let’s say, for example, that he makes nine copies, so he has ten qubits. He measures them all.

If Alice measured her qubit on the Z axis, Bob’s qubit collapsed to zero or one before he cloned it, and Bob’s ten qubits will all be the same. They may be all zero or all one, but they will agree. On the other hand, if Alice measured along the X axis, Bob’s qubit is still in a zero/one superposition when he clones it.

If the clones are independent, each one will independently collapse, and Bob will find about five zeros and five ones in his ten qubits. Now he knows that Alice used X. He can tell what Alice was doing before a message can arrive!

Fortunately, the fact that cloning is impossible saves us: Bob can make copies of his qubit, but they won’t be independent. They will all collapse to the same state, either zero or one – exactly the same as if Alice had measured in Z. No communication takes place.

Cloning and Error Correction

This same behavior of entangled qubits makes it difficult for us to correct errors. Classical computer systems create redundancy in the information, such as by copying the data, and check it frequently to see if the data has changed. For example, if we start with 0, we can make the state 000, or if we we start with 1 we can make 111, and check to see if the bits are all the same.

But with quantum states, we want to check the state of qubits that are in superposition. But, we have already learned that measuring the qubit collapses the state and destroys our entanglement. Your first thought for a way around this might be to copy a qubit, then check the copy. Unfortunately, due to the no cloning theorem, we can’t make an independent copy. If we look at one of the qubits, we collapse the state of all of them.

However, there is a way around this, extracting the parity of a group of qubits without looking at any individual qubit to determine if it is zero or one. We will study this more in the activity on quantum error correction.


Although the concept is relatively new and its history is well documented, in mid-2017, a suggestion arose that it was discovered quite a bit earlier.

The common form of the history has it that W. K. Wootters and W. H. Zurek as a team and D. Dieks independently recognized that quantum mechanics forbids copying, in reaction to a paper that purported to show how such a copying machine could be used to communicate faster than the speed of light.

Recently, however, J. Ortigoso has discovered that J. L. Park published a paper in 1970, in the first issue of a journal called Foundations of Physics, that demonstrated the same principle! Foundations of Physics is now one of the most important journals in the field, but at the time was brand new, and received little attention. Researchers are in the process of incorporating this new recognition into their histories of quantum information.



残り2つの重要な概念のうちの一つが、量子複製不可能定理です。 これは、状態が分かっていない量子ビットの独立した完全なコピー(もつれていない状態で)を作ることが、物理法則上、不可能であることを意味します。


量子ビットのコピーとは、具体的にはどのようなことを指すのでしょうか? コピーには、従属的なコピーと、独立的なコピーの2種類があります。 従属的にコピーされた量子ビットは、コピー元の量子ビットともつれた関係にあります。 こういったコピーを1つ作ると、(vert0rangle)は(vert00rangle)となります。(表記の方法としては、(vert0rangle)→(vert00rangle))同様に(vert1rangle)も(vert1rangle)→(vert11rangle)となります。

より正確にいうと、コピーによって量子ビットが物理的に新しく1つ増えるわけではなく、コピー元のデータ量子ビット(ある状態を持つ)と、コピー先のデータ量子ビット(何も状態を持たない)を用意して、状態をコピーするので、実際には、 (vert00rangle)→(vert00rangle)、 (vert11rangle)→(vert11rangle)のようになります。

ダイアル表記におけるコピーでは、コピー元とコピー先で、ベクトルの大きさがゼロでは無いダイアルの数と、各ダイアル内のベクトルの大きさ、及び位相(角度)の情報が同一となります。 ただし、ベクトルを持つダイアル自体はシャッフルされ、そのベクトルの場所が変化してしまいます。 ダイアル図を使って、具体的な例を見ていきましょう。(sqrt{1/2}vert0rangle + sqrt{1/2}vert1rangle)という状態をコピーしたい場合、まずはコピー先の量子ビットを初期化した状態、つまり(vert0rangle)状態で準備します。 この時点で、全体の系としては、

[(sqrt{1/2}|0rangle + sqrt{1/2}|1rangle)|0rangle = sqrt{1/2}|00rangle + sqrt{1/2}|10rangle]

のような状態なります。 ダイアル図の場合、この初期化段階からコピー後の変化は以下のように表されます。

one qubit being "copied" to another

(各ダイアルは上から00, 01, 10, 11の4つの状態に対応しています。)

この理論は、コピー先が2つ以上の場合でも同じで、位相の情報も同様に保存します。 (sqrt{1/2}vert0rangle + sqrt{1/2}(pi)vert1rangle)を、2つの他の量子ビットに複製する過程を見ていきましょう。

one qubit being "copied" to two others


one qubit can't "copied" to another independently


[a^2 + b^2 ne (a + b)^2]

量子ビットに対する操作に制約があったことを思い出してください。 測定を例外として、操作の全ては可逆でなければいけません。 CNOTゲートを用いることで、従属的(量子もつれ状態の)コピーをつくることが可能であることは、前述の通りです。 しかしながら、状態のわからない量子ビットについて独立した(もつれていない)コピーを作ることは物理的に不可能なことであり、このことは、量子複製不可能定理(non-cloning theory)として知られています。

(もしあなたがとりわけ明敏ならば、何かしらの量子ゲートを使うことで、ゼロでないベクトルをもったダイアルの数を増やす方法があるはずであると考えるかもしれません。 実際、上記のような独立的コピーは、アダマールゲートを使うことでエミュレートすることができます。ただし、それは複製したいコピー元の量子ビットの状態を知っていると仮定した場合においてのみ成り立つ操作です。 コピーするというよりもむしろ、同じものを再び作り上げているようなものであり、手描きの絵をコピー機でコピーしているというよりは、同じファイルをプリンタで2回印刷しているようなイメージに近いものです。)



とはいっても、アリスとボブが、ベルペアの”奇妙な遠隔相互作用”を利用することで、光速を超えた情報のやり取りを実現することは可能なのでしょうか? やってみましょう。

まず、アリスとボブがベルペアを共有します。 そして、もしアリスが0を送りたいとき、彼女はブロッホ球のZ軸に沿って、彼女の量子ビットの測定を行います。 結果は50%の確率で(vert0rangle)、50%の確率で(vert1rangle)となり、もちろん同時に、ボブの量子ビットの重ね合わせは収束し、彼の量子ビットの状態は、アリスのものと一致します。 アリスが1を送りたい時、彼女はブロッホ球の(X)軸に沿って測定を行います。 すると同様にボブの量子ビットの重ね合わせが(X)軸に沿って収束しますが、その結果としてボブの量子ビットが(X)軸方向を指していたとき、それは(Z)軸に関しての重ね合わせの状態であると言えます。 この状態は、アリスが(Z)軸について測定を行った後のボブの量子ビットの状態とは違った状態です。 もしここでボブが、自信が保持していた量子ビットが異なるものであることがわかるのであれば、ボブとアリスは光速を超えた通信を実現できると言えます。

今度は、ボブが彼の量子状態について測定すると、何が起こるのか見ていきましょう。 もちろん、ボブはアリスがどの軸を使って測定を行ったのかはわかりません。 そのため、ボブにとっての最善の策は、(Z)軸について測定し続けることです。 仮に、アリスが0を送っているとしたら、ボブの量子ビットは、アリスのものと一致します。 しかし、彼女の量子ビットはランダムに(vert0rangle)か(vert1rangle)のどちらか一方が選ばれます。 そのため、ボブが自身の量子ビットを測定したとき、彼はアリスのものと一致するランダムなビットしか得ることができません。 仮に、アリスが1を送っているとしたら、ボブの量子ビットは50/50の割合で、測定が行われる前には重ね合わせ状態となっています。 そこでもし彼が測定を行うと、彼はランダムに(vert0rangle)または(vert1rangle)を得ることとなります。 どちらの場合も、ボブはランダムなビット情報しか手に入らず、情報のやり取りに使える有益な情報を得ることはかないません。

そのため、ベルペアを用いるだけでは、光速を超えた通信を実現させることはできません。 しかし、もし複製(クローン)ができたらどうなのでしょうか?


もし量子ビットを複製する(クローンを作る)ことが可能であるとしたら、アリスとボブは光よりも速い通信を実現することが可能となるかもしれません。 もしボブが測定前の量子ビットを複製できたとしたら、彼はアリスが(Z)軸で測定したのか、(X)軸で測定したのかを、基本的な統計を用いることで知ることができます。

アリスが彼女の量子ビットを計測した後で、ボブが自分の量子ビットを計測する前に、は量子ビットを複製します。 例えば、彼が9つのコピーを作ったとして、合計10個の量子状態を計測します。

もしアリスが(Z)軸に沿って測定していたとしたら、ボブの量子ビットは彼が複製を行う前に、0か1に収束しており、ボブの10個の量子ビットは全て同じもの(全て0または全て1のどちらか)となります。 一方で、アリスが(X)軸に沿って計測していたとしたら、ボブの量子ビットは、複製時点では0または1の重ね合わせの状態となります。

もし複製した量子が独立したものであったとき、各々は独立して収束し、ボブは5つの0状態と5つの1状態を観測することとなります。 そうすると、ボブはアリスが(X)軸について測定したことを知ることができます。 彼は、メッセージが届く前に、アリスがどのようなことを行ったのか知ることができるのです。

とはいえ、量子複製不可能定理によりボブは量子ビットの複製を作ることはできませんので、そのようなことは起こりえません ボブは、量子ビットのコピーは作れるかもしれませんが、それらは独立していないため1つでも量子ビットを測定したら全て同じ状態(0か1)になります。 実際、アリスが(Z)軸について測定したものとまるで同じような状態となります。 やはり、光よりも速い通信は実現できないのです。


こういった量子もつれの特徴は、量子ビットの誤り訂正をより難解なものにしています。 従来型コンピュータシステムでは、データを複製し、それらのデータを定期的に確認することで、情報に冗長性を作り上げてきました。 例えば、0という情報に乗りうる誤りを監視/訂正したいの場合は、0の代わりに000を使います。 同様に、1の場合は111を使います。 定期的にそれらのビット列を確認することで、多数決的にデータの信頼性を担保することができます。

一方、量子ビットの場合、それがどんな重ね合わせ状態になっているかを確認する必要があります。 しかしながら、既に学んだように、測定すれば量子ビットは収束し、量子もつれも破壊されてしまいます。 量子ビットをコピーしてそれらを測定することも、量子複製不可能定理により、実用的な解決案にはなりません。 従属的コピーを多数作ったとしても、どれかに測定を施してしまうだけで、関係する全ての量子状態が収束してしまいます。

ですが、なんとかしてこの問題を回避する方法も研究されています。複数の量子ビットの情報のパリティを、個々の量子ビットを測定することなく、確認することで、量子ビットに乗った誤りを監視することもできます。 この技術に関しては、量子誤り訂正について学ぶセクションで詳しく見ていきます。



一般的には、量子をコピーする「コピーマシン」があれば光速を超えた通信を実現できるのではないかという趣旨の論文に対する反論として、W. K.Wootters氏とW. G.Zurek氏からなるチームと、D. Dieks氏が並行して、量子のコピーは、量子力学的に不可能であることを証明したとされていました。

しかし、1970年にJ. L. Park氏が Foundations of Physics の初版に掲載した論文中で、同様の主張があったことを、最近になってJ. Ortigoso氏が発見しました。 Foundations of Physics は、今でこそ、この分野で最も主要な学術誌の一つとなっていますが、その当時はまだ新しく、あまり注目を浴びていませんでした。現在、研究者たちは、この事実を量子情報の歴史の一つに組み込もうとしています。

© Keio University
This article is from the free online

Understanding Quantum Computers

Created by
FutureLearn - Learning For Life

Reach your personal and professional goals

Unlock access to hundreds of expert online courses and degrees from top universities and educators to gain accredited qualifications and professional CV-building certificates.

Join over 18 million learners to launch, switch or build upon your career, all at your own pace, across a wide range of topic areas.

Start Learning now