1 / 13

Quantum Computer Programming Framework Design

Quantum Computer Programming Framework Design. Matt Purkeypile Fall 2007. Brief Primer. Existing computers that we are familiar with are referred to as “classical” computers. Unit of information is a bit: 0 or 1

hilda
Download Presentation

Quantum Computer Programming Framework Design

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Quantum Computer Programming Framework Design Matt Purkeypile Fall 2007

  2. Brief Primer • Existing computers that we are familiar with are referred to as “classical” computers. • Unit of information is a bit: 0 or 1 • It the early 1980s it was recognized that this isn’t how nature operates at quantum scales. • Classical simulations of quantum systems suffer exponential slow down. • Therefore some mismatch between classical computing and how nature really behaves.

  3. Brief Primer Continued • Quantum computers • Unit of information is a qubit: 0, 1, or a combination (superposition) of 0 and 1. • Able to carry out massively parallel computations that are not feasible on classical systems. • Limitation: only one result is obtained per execution. • Examples of benefits: Makes factorization practical and unsorted search efficient.

  4. Current Status • Working on research proposal. • Focusing on the design of quantum computing frameworks. • The goal of the research is currently a quantum computer programming framework that is practical for existing commercial programmers. • Proposed deliverables: • List of functional and usability properties the framework must satisfy. • A set of framework interfaces. • Proofs (formal?) that the proposed framework satisfies the properties. • An implementation of the proposed framework, not necessarily complete (?).

  5. Why Framework Design? • There have been a variety of different proposals for quantum computer programming to date. • Not even all of the proposals are complete. • No list of functional properties have been encountered in the literature. • All existing proposals suffer from flaws that render them impractical for commercial programming. • Some of these flaws will be covered over the next few slides.

  6. Flaw: Foreign Techniques • Many of the existing proposals utilize techniques that are foreign to a majority of computer programmers. • This includes the use of functional languages. • Less than 40% of practicing developers hold a degree in a software related discipline*, so many practicing developers have no exposure to techniques outside of a typical commercial environment. * S. McConnel, Professional Software Development. Boston, MA: Addison-Wesley, 2004.

  7. Flaw: Not Scalable • As more complex quantum algorithms are developed, the programming techniques must be adequate to implement them. • Actual code bases are more than short snippets of code, so any programming technique must be scalable beyond “snippets”. • Proposals for visual programming or utilizing formal proofs suffer from this flaw. • A vast majority of software does not need the expense or safety of being formally proven.

  8. Flaw: New Language for Quantum Computing • Over 8,500 languages have been developed to date*, yet very few see commercial success. • Languages developed specifically for quantum computing lack the ability to carry out classical computing as well as existing classical languages. * T. J. Bergin, "A History of the History of Programming Languages," Communications. ACM, vol. 50, p. 5, May 2007 2007.

  9. Flaw: Difficult to Integrate with Existing Software • Highly unlikely that existing code bases will be rewritten to take advantage of quantum computing. • Therefore any method must integrate well with existing software. • Easy to integrate leads to decreased cost in utilizing quantum computation.

  10. Flaw: Usability • Languages and libraries that often see widespread use are easy to use and utilize common conventions. • Difficult to use or understand APIs are prone to being used incorrectly and have higher learning curves. • Outdated languages can also be considered to suffer from this flaw. • Overcoming this flaw is one of the key research objectives. • Design rationale

  11. Flaw: Can Only Run on a Quantum Computer • Quantum computers will likely be a resource that is utilized by a classical computer (Knill’s QRAM model*). • Therefore any approach should not have to be completely executed on a quantum computer. • This quantum resource may be local or remote. * E. Knill, "Conventions for Quantum Pseudocode," Los Alamos National Laboratory LAUR-96-2724, 1996.

  12. Conclusion / Work Ahead • Immediate focus will be expanding and refining the research proposal. • Approach must not suffer from any of the flaws outlined. • Usability is key • Original idea focused more on the implementation of the framework than the properties and proofs of a proposed framework, shifting focus more towards the later. • Continue to scan quantum computing literature. • Expand search of programming library/languages design rationale and usability.

  13. Questions? "Ohhhhhhh. ... Look at that, Schuster. ... Dogs are so cute when they try to comprehend quantum mechanics."Gary Larson, March 23, 1984

More Related