An Algebraic Foundation for Quantum Programming Languages Andrew Petersen & Mark Oskin Department of Computer Science The University of Washington.

Slides:



Advertisements
Similar presentations
Department of Computer Science & Engineering University of Washington
Advertisements

Quantum Computation and Quantum Information – Lecture 3
Quantum Computing MAS 725 Hartmut Klauck NTU
Database Systems: Design, Implementation, and Management Tenth Edition
Quantum Computers Gates, circuits and programming.
Quantum Packet Switching A. Yavuz Oruç Department of Electrical and Computer Engineering University of Maryland, College Park.
Quantum Speedups DoRon Motter August 14, Introduction Two main approaches are known which produce fast Quantum Algorithms The first, and main approach.
Um ponto de vista simbólico sobre a Simulação de Algoritmos Quânticos António Pereira & Rosália Rodrigues CEOC-UA – CIMA-UE 2006.
Chien Hsing James Wu David Gottesman Andrew Landahl.
Department of Computer Science & Engineering University of Washington
Phase in Quantum Computing. Main concepts of computing illustrated with simple examples.
Quantum Computing Ambarish Roy Presentation Flow.
Use of Simulated Annealing in Quantum Circuit Synthesis Manoj Rajagopalan 17 Jun 2002.
1 Quantum Computing: What’s It Good For? Scott Aaronson Computer Science Department, UC Berkeley January 10,  John.
Grover. Part 2. Components of Grover Loop The Oracle -- O The Hadamard Transforms -- H The Zero State Phase Shift -- Z O is an Oracle H is Hadamards H.
High-Performance Simulation of Quantum Computation using QuIDDs George F. Viamontes, Manoj Rajagopalan, Igor L. Markov, and John P. Hayes Advanced Computer.
University of Queensland
Grover. Part 2 Anuj Dawar. Components of Grover Loop The Oracle -- O The Hadamard Transforms -- H The Zero State Phase Shift -- Z.
CSEP 590tv: Quantum Computing
Anuj Dawar.
1 Recap (I) n -qubit quantum state: 2 n -dimensional unit vector Unitary op: 2 n  2 n linear operation U such that U † U = I (where U † denotes the conjugate.
Quantum Mechanics from Classical Statistics. what is an atom ? quantum mechanics : isolated object quantum mechanics : isolated object quantum field theory.
Copyright 2008 Koren ECE666/Koren Part.6a.1 Israel Koren Spring 2008 UNIVERSITY OF MASSACHUSETTS Dept. of Electrical & Computer Engineering Digital Computer.
Quantum Computing Lecture 1 Michele Mosca. l Course Outline
By: Mike Neumiller & Brian Yarbrough
1 Chapter 2 Matrices Matrices provide an orderly way of arranging values or functions to enhance the analysis of systems in a systematic manner. Their.
Quantum Computing MAS 725 Hartmut Klauck NTU
Debasis Sadhukhan M.Sc. Physics, IIT Bombay. 1. Basics of Quantum Computation. 2. Quantum Circuits 3. Quantum Fourier Transform and it’s applications.
Outline Main result Quantum computation and quantum circuits Feynman’s sum over paths Polynomials QuPol program “Quantum Polynomials” Quantum polynomials.
Cove: A Practical Quantum Computer Programming Framework Matt Purkeypile Doctorate of Computer Science Dissertation Defense June 26, 2009.
1 Introduction to Quantum Information Processing CS 467 / CS 667 Phys 467 / Phys 767 C&O 481 / C&O 681 Richard Cleve DC 653 Course.
October 1 & 3, Introduction to Quantum Computing Lecture 1 of 2 Introduction to Quantum Computing Lecture 1 of 2
Sandia is a multiprogram laboratory operated by Sandia Corporation, a Lockheed Martin Company, for the United States Department of Energy’s National Nuclear.
An Introduction to Quantum Phenomena and their Effect on Computing Peter Shoemaker MSCS Candidate March 7 th, 2003.
The Road to Quantum Computing: Boson Sampling Nate Kinsey ECE 695 Quantum Photonics Spring 2014.
Solving mutual exclusion by using entangled Qbits Mohammad Rastegari proff: Dr.Rahmani.
Quantum Computer Simulation Alex Bush Matt Cole James Hancox Richard Inskip Jan Zaucha.
Abstraction of Deutsch Algorithm and Its Implementation on QCL.
You Did Not Just Read This or did you?. Quantum Computing Dave Bacon Department of Computer Science & Engineering University of Washington Lecture 3:
Bell Measurements and Teleportation. Overview Entanglement Bell states and Bell measurements Limitations on Bell measurements using linear devices Teleportation.
Cove: A Practical Quantum Computer Programming Framework Summer 2008 Status Matt Purkeypile.
Quantum Computing Reversibility & Quantum Computing.
CSEP 590tv: Quantum Computing Dave Bacon July 20, 2005 Today’s Menu n Qubit registers Begin Quantum Algorithms Administrivia Superdense Coding Finish Teleportation.
1 Introduction to Quantum Information Processing CS 467 / CS 667 Phys 667 / Phys 767 C&O 481 / C&O 681 Richard Cleve DC 653 Lecture.
On the Complexity of Manipulating Quantum Boolean Circuits Vincent Liew.
Multipartite Entanglement and its Role in Quantum Algorithms Special Seminar: Ph.D. Lecture by Yishai Shimoni.
IPQI-2010-Anu Venugopalan 1 qubits, quantum registers and gates Anu Venugopalan Guru Gobind Singh Indraprastha Univeristy Delhi _______________________________________________.
Quantum Computers The basics. Introduction 2/47 Dušan Gajević.
An Introduction to Quantum Computation Sandy Irani Department of Computer Science University of California, Irvine.
Quantum Computation Stephen Jordan. Church-Turing Thesis ● Weak Form: Anything we would regard as “computable” can be computed by a Turing machine. ●
Final Project for Phys 642: An Introduction to Quantum Information and Quantum Computing Fall 2013 Implementing a Computer Simulation of Shor’s Quantum.
Quantum Computer Simulation Alex Bush Matt Cole James Hancox Richard Inskip Jan Zaucha.
The Goal of Science To create a set of models that describe the measurable universe. These models must – Fit previous verified measurements applicable.
Suggestion for Optical Implementation of Hadamard Gate Amir Feizpour Physics Department Sharif University of Technology.
Christopher Monroe Joint Quantum Institute and Department of Physics NIST and University of Maryland Quantum Computation and Simulation.
1 An Introduction to Quantum Computing Sabeen Faridi Ph 70 October 23, 2007.
Beginner’s Guide to Quantum Computing Graduate Seminar Presentation Oct. 5, 2007.
Quantum Bits (qubit) 1 qubit probabilistically represents 2 states
COMPSCI 290.2: Computer Security
Quantum Circuit Visualization
Introduction to Quantum Computing Lecture 1 of 2
A low cost quantum factoring algorithm
For computer scientists
Quantum Computing Dorca Lee.
OSU Quantum Information Seminar
Quantum Computation and Information Chap 1 Intro and Overview: p 28-58
Grover. Part 2 Anuj Dawar.
Matt Purkeypile January 2008
Presentation transcript:

An Algebraic Foundation for Quantum Programming Languages Andrew Petersen & Mark Oskin Department of Computer Science The University of Washington

The Quantum Divide Advances in Quantum Hardware 7-bit computers created Silicon devices proposed Solid-state bits entangled Photons teleported Stagnation in Quantum Software Few new algorithms discovered Little discussion of higher level languages

What is the Problem? No more quantum algorithms exist…? We’re just not smart enough…? No representation developed for computing –Traditional notations describe physical systems Dirac notation: describes system state Matrix notation: represents system evolution –Enabling computation requires more Assist in guiding systems to “interesting” states Support reasoning about system evolution

Objective Develop an alternative notation for quantum computing Representation: dealing with groups of bits is hard –Ensure operations are insensitive to state space size –Introduce shorthand for common entangled states –Facilitate computation on large, highly entangled states Reasoning: interesting states are difficult to identify –Identify quantum properties explicitly –Define operations by the quantum properties they induce –Favor local transformations over global ones Not a language … yet

Qubits: Quantum Bits Bits and qubits both have two states: 0 and 1 Superposition: A qubit may be in both states simultaneously Phase: A qubit may have a negative quantity of a state Entanglement: Multiple qubits may share a single state

Dirac Notation: a Qubit |q> =  |0> +  |1> Superposition Probability Amplitude State

Matrix Notation: a Qubit Probability Amplitude for State 0 Probability Amplitude for State 1

Representing Qubit Systems |p,q> =  |00> +  |01> +  |10> +  |11> Amplitude for 00 Amplitude for 01 Amplitude for 10 Amplitude for 11

The New Algebra: a Qubit Name Weight StateSuperposition Unit of Phase

The New Algebra: Operators Superposition: + –Identity exists: x y + 0 = x y –Inverses exist: x y + (-1) x y = 0 Association: * –Identity exists: 1 x y = x y x y = x y –x y x z = 0 for y  z Other axioms hold for both operators –Associativity and commutativity of + and * –Distributivity of * over +

Association and Entanglement Unentangled (a) Entangled (b) Unentangled (a) Entangled (b) Distributivity reveals the lack of entanglement.

Weight and Phase in the Algebra Concepts of weight and phase separated –Weights are positive real values –Phases are complex values State probabilities are easy to compute

Phase and Interference Fundamental unit of phase  introduced –Phase is manipulated in discrete increments – Addition simulates phase interactions

Matrix Notation: Procedures Procedures are represented as matrices Larger state spaces require larger matrices The effect of the matrix may not be apparent

The New Algebra: Procedures Computation is performed via pattern matching: A procedure has four parts:

Example: The Hadamard Gate NameParameterDefinition Initial StateTransformed State

Computation in the New Algebra 1.Consolidate Associate the states of all arguments 2.Match Find affected patterns and replace them 3.Simplify

Example: Controlled Not Expressions can contain wild-cards Patterns can call other procedures

An Example: EPR Pairs In matrix notation: In the algebra:

Universality and Illegal States The algebra is complete and expressive –All legal operations can be defined (Boykin et al.) –All legal states can be expressed –Illegal states cannot be reached using legal gates

Negation Represents all states not present

Computing on Negations Computation may be performed directly 1.Add all the cases of the gate being applied 2.Apply the gate to the negated state 3.Subtract the result from 2) from 1)

Example: Grover’s Algorithm Fast search algorithm The desired solution is designated with a hat An Oracle is required –Adds a negative phase to the desired solutions A PhaseFlip operation is needed –Adds a negative phase to all non-zero states

Example: Grover Iteration

Summary Explicit indicators of quantum properties –Superposition operator + –Basic unit of phase  –Entanglement via distributivity Support for computing on large systems –Size-independent procedures –Focus on local transformations Methods for reasoning about entangled states –Symmetric entanglement operator | –Computation on negations

Future Work Reasoning about phase is still difficult –A compact representation for complex phases is needed –Weight and phase interactions may be further formalized Types could be used to enforce constraints –Separate quantum and classical types would properly restrict interactions –Linear types would prevent copying of state User studies will indicate problem areas Our final goal is a language implementation

Questions?

Previous Work Quantum circuits (Deutsch, Yao) Circuit representation with state annotations QCL (Ömer) Imperative language based on defining matrices qGCL (Sanders and Zuliani) Probabilistic language featuring a refinement calculus Quantum C++ (Bertelli) C++ with quantum operations defined as data structures Block-QPL (Selinger) A functional, graph-based computational model

Grover’s Algorithm