Skip to content

Add Qiskit Quantum NOT Gate Example Code #3255

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 2 commits into from
Oct 13, 2020
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
39 changes: 39 additions & 0 deletions quantum/not_gate.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
#!/usr/bin/env python3
"""
Build a simple bare-minimum quantum circuit that starts with a single
qubit (by default, in state 0) and inverts it. Run the experiment 1000
times and print the total count of the states finally observed.
Qiskit Docs: https://qiskit.org/documentation/getting_started.html
"""

import qiskit as q


def single_qubit_measure(qubits: int, classical_bits: int) -> q.result.counts.Counts:
"""
>>> single_qubit_measure(1, 1)
{'11': 1000}
"""
# Use Aer's qasm_simulator
simulator = q.Aer.get_backend('qasm_simulator')

# Create a Quantum Circuit acting on the q register
circuit = q.QuantumCircuit(qubits, classical_bits)

# Apply X (NOT) Gate to Qubits 0 & 1
circuit.x(0)
circuit.x(1)

# Map the quantum measurement to the classical bits
circuit.measure([0, 1], [0, 1])

# Execute the circuit on the qasm simulator
job = q.execute(circuit, simulator, shots=1000)

# Return the histogram data of the results of the experiment.
return job.result().get_counts(circuit)


if __name__ == '__main__':
counts = single_qubit_measure(2, 2)
print(f'Total count for various states are: {counts}')