Je suis issu de l'informatique et j'ai du mal à décider des ressources sur lesquelles je dois me concentrer pour apprendre l'informatique quantique, car il y a tellement de choses à lire / regarder. Mon but ultime est de créer un langage de programmation agissant comme une interface entre les ordinateurs quantiques et la personne similaire à 1972 quand C a été créé. En tant qu'étape intermédiaire réaliste, j'aimerais en arriver à écrire des programmes sur QISKit d'IBM.
Pour cela, j'aurais besoin d'un guide d'étude schématique afin d'acquérir les connaissances nécessaires en physique et les domaines connexes nécessaires pour plonger dans le domaine de l'informatique quantique. Cela existe-t-il déjà: une liste ordonnée des concepts et des capacités indispensables à maîtriser, qui si possible mentionne également le matériel adéquat pour acquérir chacun d'eux ?
Supposons une connaissance en physique de niveau secondaire. Fournir un guide d'étude, c'est-à-dire du type de guide débutant à expert. Essayez d'énumérer les ressources vidéo / livres que l'on doit suivre dans un ordre chronologique afin de devenir un expert dans le domaine de l'informatique quantique au niveau où je peux écrire mon propre langage informatique quantique (en supposant déjà d'autres compétences en CS pour écrire la langue) .
la source
Réponses:
Je ne pense pas qu'il existe une seule ressource en or qui puisse vous fournir toutes les connaissances nécessaires. Mais je pourrais suggérer une voie (ou un guide d'étude schématique dans vos mots):
Si votre objectif est de créer un nouveau langage de programmation quantique, je dirais plutôt que vous devriez d'abord apprendre à fond un langage de programmation quantique existant ainsi que les concepts de base de l'informatique quantique, à la fois du côté physique et du côté informatique (peut-être même les mathématiques côté!).
Microsoft a son langage de programmation quantique nommé Q # (qui fait partie de leur kit de développement quantique ). La documentation complète-guide est sur leur site Web: https://docs.microsoft.com/en-us/quantum . Si vous êtes du côté CS, j'espère que vous avez déjà une connaissance des vecteurs, des matrices et de l'algèbre linéaire en général. Si c'est le cas, vous pouvez directement commencer à lire le guide article par article. Dans un premier temps, ils commencent par une brève révision des matrices, vecteurs, etc. suivie d'une brève introduction aux qubits. Cela suffit pour au moins commencer à écrire un programme quantique de base, avec une compréhension minimale de la physique derrière. Soit dit en passant, si vos concepts d'algèbre linéaire sont faibles, vous pouvez toujours essayerLes conférences de la Khan Academy sur le même sujet.
Ensuite, vous voudriez apprendre au moins quelques bases de la mécanique quantique. J'aime personnellement les conférences du professeur Vazirani , qui sont maintenant sur Youtube. Dans environ 60 conférences de dix minutes, il couvre toutes les bases nécessaires de la mécanique quantique et des algorithmes de calcul quantique. Après cela, vous seriez en bonne forme pour choisir vous-même de nouveaux algorithmes.
Dans une troisième étape, je suggère de choisir " Calcul quantique et informations quantiques par Isaac Chuang et Michael Nielsen " et également " Calcul quantique pour les informaticiens par Mirco A. Mannucci et Noson S. Yanofsky " pour couvrir les sujets importants que vous manqué.
Cela devrait vous suffire pour obtenir une base solide pour commencer à écrire votre propre langage de programmation quantique. Vous pouvez également consulter des didacticiels pour les autres langages informatiques quantiques courants pour avoir une idée de la façon d'écrire des programmes quantiques et de concevoir des langages de programmation quantique.
la source
Je vous suggère de réfléchir à la question de savoir si l'objectif de «créer un nouveau langage de programmation quantique» convient à ce stade du développement du calcul quantique. Ce n'est pas l'approche la plus courante, car la plupart du temps, nous en sommes encore au stade de la réflexion en termes de langage essentiellement machine. Lorsque nous créons des algorithmes, le niveau auquel cela se fait est similaire à l'expression d'algorithmes classiques en termes de portes logiques (comme cet exemple pour la multiplication). Les SDK quantiques, comme QISKit, sont essentiellement des moyens de créer des tâches à envoyer au matériel quantique ou aux simulateurs. Cela inclut des outils pour effectuer des simulations, optimiser le temps d'exécution ou les niveaux de bruit, etc. Ce ne sont pas vraiment des langages au sens haut auquel nous sommes habitués pour le calcul classique.
Pour une introduction à ce qui se passe à ce niveau de la pile quantique, Q est pour Quantum par Terry Rudolph pourrait être utile.
Pour votre objectif intermédiaire d'écrire des programmes avec QISKit, je recommanderais le tutoriel QISKit . Il a de nombreux exemples concrets de mise en œuvre de programmes quantiques courts. Il existe également une publication QISKit sur Medium dans laquelle certaines des choses du tutoriel sont expliquées plus en détail. Il existe également un didacticiel gamifié sur QISKit , qui pourrait être utile comme préchauffage pour le didacticiel QISKit complet.
Disclosure complète: J'ai contribué à toutes les choses mentionnées dans le dernier paragraphe.
la source