The no-cloning theorem prevents superluminal communication via quantum entanglement. Consider the EPR thought experiment, and suppose quantum states could be cloned. Alice could send bits to Bob in the following way:
If Alice wishes to transmit a $0$, she measures the spin of her electron in the $z$ direction (she could have chosen another direction if she had wished to transmit a $1$), collapsing Bob's state to either $|z+\rangle_B$ or $|z-\rangle_B$. Bob creates many copies of his electron's state, and measures the spin of each copy in the $z$ direction. Bob will know that Alice has transmitted a $0$ if all his measurements will produce the same result; otherwise, his measurements will be split evenly between $+1/2$ and $-1/2$. This would allow Alice and Bob to communicate across space-like separations (if the two components of the entangled state are space-like separated), potentially violating causality.
The linearity of quantum mechanics, however, prevents us from cloning arbitrary, unknown states (photoQopiers don't exist). Let's see it. Suppose the state of a quantum system A , which we wish to copy. The state can be written as
$$|\psi\rangle_A = a |0\rangle_A + b |1\rangle_A$$
The coefficients ''a'' and ''b'' are unknown to us. In order to make a copy, we take a system B with an identical Hilbert space and initial state $|e\rangle_B$ (which must be independent of $|\psi\rangle_A$, of which we have no prior knowledge). The composite system is then described by
$$|\psi\rangle_A |e\rangle_B$$
There are only two ways to manipulate the composite system. We could perform an observation, which irreversibly would collapse the system into some eigenstate of the observable, corrupting the information contained in A. This is obviously not what we want. Alternatively, we could control the Hamiltonian of the system, and thus the time evolution operator $U$, which is a linear operator. Then $U$ acts as a photoQopier provided
$$U |\psi\rangle_A |e\rangle_B= |\psi\rangle_A |\psi\rangle_B = (a |0\rangle_A + b |1\rangle_A)(a |0\rangle_B + b |1\rangle_B)= \\ a^2 |0\rangle_A |0\rangle_B + a b |0\rangle_A |1\rangle_B + b a |1\rangle_A |0\rangle_B + b^2 |1\rangle_A |1\rangle_B$$
for all $\psi$. This must then be true for the basis states as well, so
$$U |0\rangle_A |e\rangle_B = |0\rangle_A |0\rangle_B$$
$$U |1\rangle_A |e\rangle_B = |1\rangle_A |1\rangle_B$$
Then the linearity of $U$ implies
$$U |\psi\rangle_A |e\rangle_B= U (a |0\rangle_A + b |1\rangle_A)|e\rangle_B= a |0\rangle_A |0\rangle_B + b |1\rangle_A |1\rangle_B \\ \ne a^2 |0\rangle_A |0\rangle_B + a b |0\rangle_A |1\rangle_B + b a |1\rangle_A |0\rangle_B + b^2 |1\rangle_A |1\rangle_B$$
Thus, $U |\psi\rangle_A |e\rangle_B$ is generally not equal to $|\psi\rangle_A |\psi\rangle_B$ so that $U$ cannot act as a general photoQopier.
Edit. About the relation between no-cloning and Heisenberg uncertainty principle: In the 'quantiki; link below says:
The no-cloning theorem protects the uncertainty principle in quantum
mechanics. If one could clone an ''unknown'' state, then one could
make as many copies of it as one wished, and measure each dynamical
variable with arbitrary precision, thereby bypassing the uncertainty
principle. This is prevented by the non-cloning theorem.
This — at least superficially — seems to be a fallacy because, as Bruce Connor pointed out, regardless of if one has an infinite number of exact copies of an arbitrary, unknown state, non-compatible observables (non-commuting operators) cannot be measured simultaneously with arbitrary precision. So, if Alice measures the spin's $z$ component of her electron, and even if Bob could create many copies of his electron state (what is forbidden by the non-cloning theorem discussed above), Bob could not determine the value of the $x$ component with arbitrary precision — he would find a dispersion in the values.
Some other references claiming the opposite from a comment of mine: @BruceConnor I totally agree with you on this. I don't know why I copied that paragraph from the link. It seems to be an extended obvious fallacy. Or perhaps I'm wrong, because my knowledge about this is not so deep and it seems that this claim is even written in books ("no-cloning theorem basically implies uncertainty principle and viceversa", Quantum Computing Since Democritus, S. Aaronson) and in a PRL paper ("the no-cloning theorem yields a new formulation of the quantum uncertainty principle that applies to individual systems [19]", DOI: 10.1103/PhysRevLett.88.210601 . However in the cited reference [19], I don't see a clear statement about Heisenberg principle). – drake 18 mins ago
EDIT. Another comment:
Trimok: Quantum mechanics is linear, and respects no-signaling. It is a causal theory. Speaking about non-linear quantum mechanics is like speaking about non-linear "Lorentz" transformations.. –
Me: The issue is that linearity frequently involves some sort of approximation. Therefore, going beyond linearity or introducing non-linearities is a way of exploring new theories. To follow your examples: special relativity introduces a non-linearity in the law of composition of velocities with respect to Galilean physics. This allows the introduction of a new velocity scale, c, and its invariance under boost transformations. Likewise, the dependence of the power radiated by a blackbody on the temperature gets non-linearized in quantum mechanics with respect to classical physics. Of course, other laws in special relativity and quantum mechanics (such as the transformation of coordinates in special relativity) remain linear. Thus, where to introduce non-linearities in the known physical laws is a non-trivial task.
Almost copied from http://www.quantiki.org/wiki/The_no-cloning_theorem