One of the biggest challenges in quantum computing is noise.
As an Example, when we apply a unitary, this unitary might not behave exactly as expected.

Classically, error correction uses some kind of error correcting code which, in turn, must also be transmitted over a noisy channel.

![[Pasted image 20260806110847.png]]


## Repetition codes

The simplest classical error correcting code is repetition.
If we send the bit 0, we repeat it 3 times, same for 1. 0 = 000, 1 = 111.
Hamming abstand 3 = 1 bitfehler korrigieren.

In a quantum system we can't just look at (measure) our system to repeat it.

### Bit Flip Code

![[Pasted image 20260806111316.png]]

Note that we cant just measure if an error has occurred, so we use this circuit:

![[Pasted image 20260806111448.png]]

### Phase Flip Code

Correcting Z-errors is possible with this:

![[Pasted image 20260806111549.png]]


## Shor's code

