All Projects → lynnlangit → learning-quantum

lynnlangit / learning-quantum

Licence: Apache-2.0 license
Study resources for learning quantum computing

Programming Languages

Jupyter Notebook
11667 projects
python
139335 projects - #7 most used programming language
javascript
184084 projects - #8 most used programming language
Q#
14 projects
OpenQASM
18 projects

Projects that are alternatives of or similar to learning-quantum

Quantum-Computing-Resources
This repository contains the best resources for learning practical quantum computing. This repository will be updated frequently.
Stars: ✭ 60 (+17.65%)
Mutual labels:  quantum-computing, qiskit, cirq
QuantumPoker
Quantum Poker – a serious pedagogical tool to learn quantum computing that is fun to play
Stars: ✭ 16 (-68.63%)
Mutual labels:  quantum-computing, qiskit
cirq-on-iqm
Cirq adapter for IQM's quantum computers
Stars: ✭ 21 (-58.82%)
Mutual labels:  quantum-computing, cirq
Quantum-Computing-Collection-Of-Resources
A Well Maintained Repository On Quantum Computing Resources [Code+Theory] Updated Regularly During My Time At IBM, Qubit x Qubit And The Coding School's Introduction To Quantum Computing Course '21
Stars: ✭ 183 (+258.82%)
Mutual labels:  quantum-computing, qiskit
Quantum-Computing-UK-Repository
This repository contains all of the code found in the quantum computing tutorials at : https://quantumcomputinguk.org.
Stars: ✭ 52 (+1.96%)
Mutual labels:  quantum-computing, qiskit
Qiskit Tutorials
A collection of Jupyter notebooks showing how to use the Qiskit SDK
Stars: ✭ 1,777 (+3384.31%)
Mutual labels:  quantum-computing, qiskit
launchpad
Resources to get started in Quantum Computing!
Stars: ✭ 21 (-58.82%)
Mutual labels:  quantum-computing, qiskit
Cirq
A python framework for creating, editing, and invoking Noisy Intermediate Scale Quantum (NISQ) circuits.
Stars: ✭ 3,115 (+6007.84%)
Mutual labels:  quantum-computing, cirq
qisjob
Qiskit Job Control
Stars: ✭ 24 (-52.94%)
Mutual labels:  quantum-computing, qiskit
Qiskit Terra
Qiskit is an open-source SDK for working with quantum computers at the level of extended quantum circuits, operators, and algorithms.
Stars: ✭ 3,177 (+6129.41%)
Mutual labels:  quantum-computing, qiskit
QuantumComputing
Collection of Tutorials and other Quantum Computer programming related things.
Stars: ✭ 120 (+135.29%)
Mutual labels:  quantum-computing, qiskit
Qiskit
Qiskit is an open-source SDK for working with quantum computers at the level of circuits, algorithms, and application modules.
Stars: ✭ 2,332 (+4472.55%)
Mutual labels:  quantum-computing, qiskit
Qu.js
Quantum Computing for Humans!
Stars: ✭ 15 (-70.59%)
Mutual labels:  quantum-computing, qiskit
pyQuirk
A Python widget for Quirk to be used in Jupyter notebooks, JupyterLab, and the IPython kernel.
Stars: ✭ 18 (-64.71%)
Mutual labels:  quantum-computing
Quantum-Machine-Learning
This repository contains implementations of Quantum Machine Learning algorithms, feature maps, variational circuits and research papers.
Stars: ✭ 47 (-7.84%)
Mutual labels:  quantum-computing
QI
Quantum information mathematica package
Stars: ✭ 26 (-49.02%)
Mutual labels:  quantum-computing
forest-benchmarking
A library for quantum characterization, verification, validation (QCVV), and benchmarking using pyQuil.
Stars: ✭ 41 (-19.61%)
Mutual labels:  quantum-computing
pennylane-lightning
The PennyLane-Lightning plugin provides a fast state-vector simulator written in C++ for use with PennyLane
Stars: ✭ 28 (-45.1%)
Mutual labels:  quantum-computing
quantumcat
quantumcat is a platform-independent, open-source, high-level quantum computing library, which allows the quantum community to focus on developing platform-independent quantum applications without much effort.
Stars: ✭ 18 (-64.71%)
Mutual labels:  quantum-computing
pulsemaker
A Python widget library for designing pulses and pulse schedules for quantum computing hardware. Can be used in Jupyter notebooks, JupyterLab, and the IPython kernel.
Stars: ✭ 19 (-62.75%)
Mutual labels:  quantum-computing

Learning Cloud Quantum Programming

This repo contains my study resources for learning cloud quantum programming.

Shown to the left is a conceptual rendering of a bit vs a qubit, which is a fundamental concept of work in quantum computing. The Repo is a companion to my LI_L course "Cloud Quantum Computing Essentials"

A qubit is a two-state (or two-level) quantum-mechanical system, one of the simplest quantum systems displaying the peculiarity of quantum mechanics. A quantum computer performs quantum computations using the principles of quantum mechanics.

A QPU (quantum processing units) manipulates the quantum states of available qubits in a controlled way to perform computations, such as algorithms. A qubit is a quantum bit of information.

A quantum computer contains QPU processors, some number of qubits and the support mechanisms which allow these items to interact based on quantum instructions or programs.


What's Here

This Repo is organized by folder as follows:

  • concepts - info about quantum languages, libraries, operations, reference programs (Shor's, Grover's, etc...) and notation
  • cloud-vendors - info about quantum runtime environments (and simulators) organized by cloud vendor (AWS, Azure, GCP and IBM)
  • whitepapers - academic research papers of interest including quantum programming algorithms and examples
  • o-reilly-book - code examples, slides and link from a 15-week-long bookclub covering the referenced book on quantum programming

Quantum Computer Example

There are a number of quantum computer vendors. These vendors produce hardware (quantum computers) which contains a particular number of qubits and QPUs.

One example is the D-Wave company. Shown to the right are photos from one of D-Wave's quantum computers. This computer contains QPU units, which is hardware with qubits (image taken from D-Wave whitepaper). To run quantum programs on quantum hardware, use quantum languages or libraries.

NOTE: Generally quantum programs are run on quantum simulators prior to being run on quantum hardware due to the cost and time run on live QPUs.


Quantum Programs and IDEs

Shown below are screenshots from a couple of quantum programming development environments. This is just a small subset of the available options. Generally these IDEs are either cloud-based (IBM Composer) or downloadable via a SDK (D-Wave).

  • The first example (shown below) shows running a quantum program in the IBM Quantum Composer IDE. This example runs the Grover-example quantum program. The visual environment includes the composer, which shows quantum operations written in the OPENQASM quantum programming language and a number of other visualization tools.

  • The second example (shown below) is from from D-Wave Systems cloud at https://cloud.dwavesys.com/ and is being run using VSCode as an IDE. The sample shows a path optimization solver and is called path in the D-Wave examples. The program is written using the D-Wave Python-like quantum programming library. This IDE is a more traditional environment and doesn't include as many visualization tools for the state of the qubits used in computation.

Resources for Learning

  • Yet another example of a quantum program visualization tools is the browser-based Quantum Playground - http://www.quantumplayground.net/. Shown below is an example of animated output using the H gate example code. This is a particularly good tool for gaining an intuition into key quantum operations and program examples.

  • The QuanTime website (partnership with National Q-12 Education Partnership group) aggregates resources and links to materials which are designed to be used by educators - https://q12education.org/quantime

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].