Acquérir des connaissances de base sur la programmation des dispositifs quantiques et les bits quantiques (qubits).
Comprendre les différences entre le calcul classique et le calcul dit quantique.
Avoir quelques notions du langage de programmation quantique le plus utilisé aujourd'hui: Qiskit.
Quelques notions sur le comportement des systèmes quantiques, sans faire appel à un appareil mathématique compliqué, avec des analogies avec les systèmes classiques.
Utilisation d'un pseudo-langage, QCEngine (disponible sur une page web publique, écrit en JavaScript avec un backend Q# de Microsoft), pour introduire les opérations de base effectuées sur les qubits.
Introduction de la plateforme IBM Quantum; utiliser le Quantum Composer de IBM, accessible sans avoir besoin d'un compte IBMid, pour éditer graphiquement des circuits quantiques, avec visualisation du code en Qiskit et OpenQASM.
Apprendre le langage de programmation quantique Qiskit et l'utiliser sur les ressources mises à disposition dans le cadre du cours: Linux + Python3 + Jupyter + Notebook + navigateur web.
Des TP seront distribués au besoin du matériel présenté, pendant la plupart des sessions de CM, pour mieux accompagner l'acquisition des nouvelles connaissances. Le cours est basé sur l'intéractivité et l'application immédiate des notions présentées à l'aide des outils mis à disposition.
Notions de base: probabilités, nombres complexes, trigonométrie, calcul matriciel.
Programming Quantum Computers: Essential Algorithms and Code Samples, Eric R. Johnston, Nic Harrigan, Mercedes Gimeno-Segovia, O'Reilly 2019
https://www.ibm.com/quantum/qiskit