> ## Documentation Index
> Fetch the complete documentation index at: https://docs.classiq.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Quantum Entanglement with Classiq

<Card title="View on GitHub" icon="github" href="https://github.com/Classiq/classiq-library/blob/main/tutorials/basic_tutorials/entanglement/entanglement.ipynb">
  Open this notebook in GitHub to run it yourself
</Card>

Entanglement is an important aspect to study quantum algorithms. In this tutorial, we show how to create a bell pair state $|\Phi^{+}\rangle$ of 2 qubits, using the Hadamard and the Controlled-NOT transformation.

```python theme={null}
from classiq import *


@qfunc
def my_bell_state(reg: QArray) -> None:
    H(reg[0])
    CX(reg[0], reg[1])


@qfunc
def main(registers: Output[QArray]) -> None:
    allocate(2, registers)
    my_bell_state(registers)


qprog = synthesize(main)

show(qprog)
```

<Info>
  **Output:**

  ```

  Quantum program link: https://platform.classiq.io/circuit/2zJHAuuniJKwF8l4cVdhJpmUxXl
    

  ```
</Info>

## Mathematical Background

Alice has a qubit which is initially set to $|0\rangle$<br />
Bob has a qubit which is initally set to $|0\rangle$

Alice applies 2x2 Hadamard Matrix (H) to create a superposition of her qubit's state. It is defined as:<br />

$$
H \cdot \begin{pmatrix} 1 \\ 0 \end{pmatrix} = \begin{pmatrix} \frac{1}{\sqrt{2}} & \frac{1}{\sqrt{2}} \\ \frac{1}{\sqrt{2}} & -\frac{1}{\sqrt{2}} \end{pmatrix} \cdot \begin{pmatrix} 1 \\ 0 \end{pmatrix} = \begin{pmatrix} \frac{1}{\sqrt{2}} \\ \frac{1}{\sqrt{2}} \end{pmatrix} = \frac{1}{\sqrt{2}} \left| 0 \right\rangle + \frac{1}{\sqrt{2}} \left| 1 \right\rangle
$$

Alice and Bob combine their qubits and generate the composite quantum state as:

$$
\begin{pmatrix} \frac{1}{\sqrt{2}} \\ \frac{1}{\sqrt{2}} \end{pmatrix} \otimes \begin{pmatrix} 1 \\ 0 \end{pmatrix} = \begin{pmatrix} \frac{1}{\sqrt{2}} \\ 0 \\ \frac{1}{\sqrt{2}} \\ 0 \end{pmatrix}
$$

Alice now applies the Controlled NOT gate operation, with her qubit being the control qubit and Bob's qubit as the target qubit.

The Controlled NOT qubit when applied only affects the target qubit by inverting its state if the control qubit is $|1\rangle$.

The 4x4 matrix for Controlled NOT(CNOT) transformation matrix is defined as: <br />

$$
\text{CNOT} = \begin{pmatrix}
1 & 0 & 0 & 0 \\
0 & 1 & 0 & 0 \\
0 & 0 & 0 & 1 \\
0 & 0 & 1 & 0
\end{pmatrix}
$$

The new quantum state is:

$$
\begin{pmatrix} 1 & 0 & 0 & 0 \\ 0 & 1 & 0 & 0 \\ 0 & 0 & 0 & 1 \\ 0 & 0 & 1 & 0 \end{pmatrix} \begin{pmatrix} \frac{1}{\sqrt{2}} \\ 0 \\ \frac{1}{\sqrt{2}}\\ 0 \end{pmatrix} = \begin{pmatrix} \frac{1}{\sqrt{2}} \\ 0 \\ 0 \\ \frac{1}{\sqrt{2}} \end{pmatrix} = \frac{1}{\sqrt{2}} \left| 00 \right\rangle + \frac{1}{\sqrt{2}} \left| 11 \right\rangle
$$

In this situation the qubit's of Alice and Bob are correlated to each other.<br />
If we measure both the qubits we will either get the state $|00\rangle$ or the state $|11\rangle$ with equal probability.

It is described as:

* When Alice observes her state as $|0\rangle$ then the state of Bob's qubit collapses to the state $|0\rangle$
* When Alice observes her state as $|1\rangle$ then the state of Bob's qubit collapses to the state $|1\rangle$

The resultant entangled state is designated as a bell pair state $|\Phi^{+}\rangle$

$$
|\Phi^{+}\rangle = \frac{1}{\sqrt{2}} \left( |00\rangle + |11\rangle \right)
$$

## GHZ State

The GHZ state, a highly entangeld state entengaling all qubits in a circuit.

$$
|GHZ\rangle = \frac{|0\rangle^{\otimes n} + |1\rangle^{\otimes n}}{\sqrt{2}}
$$

Create a function that will generate a GHZ state for `n` qubits.

Use the Classiq build in `repeat` no classical loops. An example circuit is shown below. As you can see to create this circuit, there are two steps:

1. Apply the H gate to the first qubit.
2. Perform a CNOT gate between the first qubit and all other qubits, or perform CNOT gates like seen in the image below.

<img src="data:image/png;base64,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" />

#

## Practice:

The Classiq library also has a GHZ state preparation built-in (see `prepare_ghz_state`), but here you will try to implemnt it yourself.

```python theme={null}
from classiq import *


@qfunc
def main(reg: Output[QArray]):
    allocate(6, reg)
    # your code here
    pass


qprog_task = synthesize(main)
show(qprog_task)
```

<Info>
  **Output:**

  ```

  Quantum program link: https://platform.classiq.io/circuit/2zJHBIfojHo5Fzga1M4lDAnprRJ
    

  ```
</Info>

#

## The full solution for your reference

```python theme={null}
from classiq import *


@qfunc
def main(reg: Output[QArray]):
    allocate(6, reg)
    H(reg[0])
    repeat(
        count=reg.len - 1,
        iteration=lambda index: CX(ctrl=reg[index], target=reg[index + 1]),
    )


qprog_solution = synthesize(main)
show(qprog_solution)
```

<Info>
  **Output:**

  ```

  Quantum program link: https://platform.classiq.io/circuit/2zJHBdIcIYk5iWQPsDxJZt2ZwAV
    

  ```
</Info>
