Créer une présentation
Télécharger la présentation

Télécharger la présentation
## Cove: A Practical Quantum Computer Programming Framework

- - - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - - -

**Cove: A Practical Quantum Computer Programming Framework**Summer 2008 Status Matt Purkeypile**Brief Introduction to Quantum Information**• The quantum unit of information is the quantum bit, or qubit. • Unlike a classical bit, a qubit can be 1 and 0 at the same time. This is known as superposition. • Measurement “collapses” a qubit in superposition to 1 or 0 based on probabilities. • A collection of qubits is called a quantum register. • Existing computers are called classical. • Quantum computers were first thought of in the 1980s. • While quantum computers exist in the lab, there are no commercial ones yet- best guess is around 2021 +- 5 years.**Comparison of Classical and Quantum Information**Based on P. Kaye, R. Laflamme, and M. Mosca, An Introduction to Quantum Computing. New York City, New York: Oxford University Press, 2007.**What Can Quantum Computers Do That Classical Ones Cannot?**• Solve certain types of problems faster than classical computers • Factoring, exponential improvement. • Means encryption systems such as ones used to protect Internet communication can be broken. • Unsorted search, quadratic improvement. • Perhaps not surprisingly, simulation of quantum systems. • Classical computers experience an exponential slow down when simulating quantum systems and quantum computers. (Exponential improvement)**Limitations of quantum computers**• No-cloning: arbitrary qubits cannot be copied. • Teleportation transfers the state of one qubit to another, but the source is destroyed in the process- so no-cloning is not violated. • Probabilistic output. • No observation during computation. • Computation must be reversible. • It has been shown any computation can be made reversible.**Existing programming techniques**• A majority of the existing programming techniques face significant hurdles to use in mainstream commercial software development. This includes (but is not limited to): • Not scalable. • Unfamiliar techniques such as functional programming. • General lack of readability.**Tafliovich’s approach**• Typical of many of the nonprocedural or non-object oriented approaches.**Omer’s QCL**• Procedural approach based on C, hard to extend. • One of the most complete programming proposals. • One of the closest works to Cove.**What is Cove?**• A framework for programming quantum computers that focuses on ease of use for commercial programmers. • As a framework it is expandable and flexible. • Key idea: “programming to interfaces”. • Built on existing classical languages, so the focus of Cove is on quantum computation and not providing classical features. • Try to shield the user from lower level issues such as error correction.**Cove Example**• Operators applied to registers, not vice versa as in other techniques. • Expandable • Base library specifies what must be provided, implementations specify how. • Implementations can be swapped out. • Utilizes an “Expanded QRAM” model which is a refinement on the QRAM model, which takes into account that the quantum resource may be remote.**Current Status**• Proposal accepted in February. • Key Cove components: • Base library: initial version complete • Classical utilities: current area of focus • Much of the work is linear algebra. • Local simulation: little work done, this will allow working code to be written. • Will expand to use big floats for more accurate simulations. • Documentation: created in the code as it is developed. • Unit tests to help show correctness and reduce bugs. • Can also be used to help verify implementations are interchangeable. • Refinement is anticipated.**Taking a “Science 2.0” Approach**• All documents, source code, tickets (to do’s), help, and so on will be available on the web. • Access to certain items restricted until closer to completion. • Detailing thoughts, progress, and stumbling blocks through a blog. • Will also be useful in detailing the design rationale in the dissertation. • Site is at: https://cove.purkeypile.com • https for cypherpunks.