Controlled NOT Program
This is a simple program for beginners demonstrating quantum entanglement.
Download: Here
What does it do
This program entangles 2 qubits with a Controlled NOT gate.
First 2 qubits are initialised.
A pauli X gate is applied to the first qubit so that its state is 1.
Then a CNOT is applied to both gates. Because the first qubit is 1 the second qubit will be flipped to 1.
Circuit Diagram of the program
Circuit diagram of the program
Device used
The ibmq_qasm_simulator is used which simulates a real quantum device. Note that results from this simulator contain no errors unlike on the real quantum devices which are fairly noisy.
Note: This program requires that you have an API token. To get one sign up to IBM Q Experience and get your token here: https://quantum-computing.ibm.com/account
Source
from qiskit import QuantumRegister, ClassicalRegister, QuantumCircuit, execute,IBMQ
IBMQ.enable_account('Enter API token here')
provider = IBMQ.get_provider(hub='ibm-q')
q = QuantumRegister(2,'q')
c = ClassicalRegister(2,'c')
circuit = QuantumCircuit(q,c)
circuit.x(q[0]) # Pauli x gate applied to first qubit
circuit.cx(q[0],q[1]) # CNOT applied to both qubits
circuit.measure(q,c) # Qubits states are measured
backend = provider.get_backend('ibmq_qasm_simulator') # Specifying qasm simulator as the target device
print('Provider: ',backend)
print('')
job = execute(circuit, backend, shots=1)
print('Executing Job...')
print('')
result = job.result()
counts = result.get_counts(circuit)
print('RESULT: ',counts)
print('')
print('Press any key to close')
input()
Any problems or questions associated with this program? Contact us