Presentation is loading. Please wait.

Presentation is loading. Please wait.

Cove: A Practical Quantum Computer Programming Framework Summer 2008 Status Matt Purkeypile.

Similar presentations


Presentation on theme: "Cove: A Practical Quantum Computer Programming Framework Summer 2008 Status Matt Purkeypile."— Presentation transcript:

1 Cove: A Practical Quantum Computer Programming Framework Summer 2008 Status Matt Purkeypile

2 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.

3 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.

4 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)

5 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.

6 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.

7 Tafliovich’s approach Typical of many of the nonprocedural or non-object oriented approaches.

8 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.

9 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.

10 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.

11 Brief Comparison of Approaches CoveOmerTafliovich Readability and writeability Good- readability is a key goal Fair, there are some obscure abbreviations Poor (how to type on a keyboard?) Classical computation Good, built on a classical language. Poor, a quantum specific language lacking classical features. ExpandabilityGood, as a framework designed to be expanded Fair to poor, is a procedural approach. Poor, has to be formally proven. Integration with existing software Good, designed to integrate with any supported classical language Fair, needs some sort of interface.

12 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.

13 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.comhttps://cove.purkeypile.com –https for cypherpunks.

14 Questions?


Download ppt "Cove: A Practical Quantum Computer Programming Framework Summer 2008 Status Matt Purkeypile."

Similar presentations


Ads by Google