Towards a High Level Quantum Programming Language

Size: px
Start display at page:

Download "Towards a High Level Quantum Programming Language"

Transcription

1 Towards a High Level Quantum Programming Language Thorsten Altenkirch University of Nottingham based on joint work with Jonathan Grattage and discussions with V.P. Belavkin Towards ahigh LevelQuantum Programming Language p.1/36

2 Background Towards ahigh LevelQuantum Programming Language p.2/36

3 Background Simulation of quantum systems is expensive: PSPACE complexity for polynomial circuits. Towards ahigh LevelQuantum Programming Language p.2/36

4 Background Simulation of quantum systems is expensive: PSPACE complexity for polynomial circuits. Feynman: Can we exploit this fact to perform computations more efficiently? Towards ahigh LevelQuantum Programming Language p.2/36

5 Background Simulation of quantum systems is expensive: PSPACE complexity for polynomial circuits. Feynman: Can we exploit this fact to perform computations more efficiently? Shor: Factorisation in quantum polynomial time. Towards ahigh LevelQuantum Programming Language p.2/36

6 Background Simulation of quantum systems is expensive: PSPACE complexity for polynomial circuits. Feynman: Can we exploit this fact to perform computations more efficiently? Shor: Factorisation in quantum polynomial time. Grover: Blind search in Towards ahigh LevelQuantum Programming Language p.2/36

7 Background Simulation of quantum systems is expensive: PSPACE complexity for polynomial circuits. Feynman: Can we exploit this fact to perform computations more efficiently? Shor: Factorisation in quantum polynomial time. Grover: Blind search in Can we build a quantum computer? Towards ahigh LevelQuantum Programming Language p.2/36

8 Background Simulation of quantum systems is expensive: PSPACE complexity for polynomial circuits. Feynman: Can we exploit this fact to perform computations more efficiently? Shor: Factorisation in quantum polynomial time. Grover: Blind search in Can we build a quantum computer? yes We can run quantum algorithms. Towards ahigh LevelQuantum Programming Language p.2/36

9 Background Simulation of quantum systems is expensive: PSPACE complexity for polynomial circuits. Feynman: Can we exploit this fact to perform computations more efficiently? Shor: Factorisation in quantum polynomial time. Grover: Blind search in Can we build a quantum computer? yes We can run quantum algorithms. no Nature is classical after all! Towards ahigh LevelQuantum Programming Language p.2/36

10 Background Simulation of quantum systems is expensive: PSPACE complexity for polynomial circuits. Feynman: Can we exploit this fact to perform computations more efficiently? Shor: Factorisation in quantum polynomial time. Grover: Blind search in Can we build a quantum computer? yes We can run quantum algorithms. no Nature is classical after all! Assumption: Nature is fair... Towards ahigh LevelQuantum Programming Language p.2/36

11 The quantum software crisis Towards ahigh LevelQuantum Programming Language p.3/36

12 The quantum software crisis Quantum algorithms are usually presented using the circuit model. Towards ahigh LevelQuantum Programming Language p.3/36

13 The quantum software crisis Quantum algorithms are usually presented using the circuit model. Nielsen and Chuang, p.7, Coming up with good quantum algorithms is hard. Towards ahigh LevelQuantum Programming Language p.3/36

14 The quantum software crisis Quantum algorithms are usually presented using the circuit model. Nielsen and Chuang, p.7, Coming up with good quantum algorithms is hard. Richard Josza, QPL 2004: We need to develop quantum thinking! Towards ahigh LevelQuantum Programming Language p.3/36

15 QML Towards ahigh LevelQuantum Programming Language p.4/36

16 QML QML: a functional language for quantum computations on finite types. Towards ahigh LevelQuantum Programming Language p.4/36

17 QML QML: a functional language for quantum computations on finite types. Quantum control and quantum data. Towards ahigh LevelQuantum Programming Language p.4/36

18 QML QML: a functional language for quantum computations on finite types. Quantum control and quantum data. Design guided by semantics Towards ahigh LevelQuantum Programming Language p.4/36

19 QML QML: a functional language for quantum computations on finite types. Quantum control and quantum data. Design guided by semantics Analogy with classical computation Finite classical computations Finite quantum computations Towards ahigh LevelQuantum Programming Language p.4/36

20 QML QML: a functional language for quantum computations on finite types. Quantum control and quantum data. Design guided by semantics Analogy with classical computation Finite classical computations Finite quantum computations Important issue: control of decoherence Towards ahigh LevelQuantum Programming Language p.4/36

21 QML QML: a functional language for quantum computations on finite types. Quantum control and quantum data. Design guided by semantics Analogy with classical computation Finite classical computations Finite quantum computations Important issue: control of decoherence Draft paper available (Google:Thorsten,functional,quantum) Towards ahigh LevelQuantum Programming Language p.4/36

22 QML QML: a functional language for quantum computations on finite types. Quantum control and quantum data. Design guided by semantics Analogy with classical computation Finite classical computations Finite quantum computations Important issue: control of decoherence Draft paper available (Google:Thorsten,functional,quantum) Compiler under construction (Jonathan) Towards ahigh LevelQuantum Programming Language p.4/36

23 Example: Hadamard operation Towards ahigh LevelQuantum Programming Language p.5/36

24 Example: Hadamard operation Matrix Towards ahigh LevelQuantum Programming Language p.5/36

25 ( ( Example: Hadamard operation Matrix QML $&%' # "! $&%'! )* Towards ahigh LevelQuantum Programming Language p.5/36

26 Overview 1. Semantics of finite classical and quantum computation 2. QML basics 3. Compiling QML 4. Conclusions and further work Towards ahigh LevelQuantum Programming Language p.6/36

27 1. Semantics 1. Semantics of finite classical and quantum computation 2. QML basics 3. Compiling QML 4. Conclusions and further work Towards ahigh LevelQuantum Programming Language p.7/36

28 Something we know well... Towards ahigh LevelQuantum Programming Language p.8/36

29 Something we know well... Start with classical computations on finite types. Towards ahigh LevelQuantum Programming Language p.8/36

30 Something we know well... Start with classical computations on finite types. Quantum mechanics is time-reversible... Towards ahigh LevelQuantum Programming Language p.8/36

31 Something we know well... Start with classical computations on finite types. Quantum mechanics is time-reversible hence quantum computation is based on reversible operations. Towards ahigh LevelQuantum Programming Language p.8/36

32 Something we know well... Start with classical computations on finite types. Quantum mechanics is time-reversible hence quantum computation is based on reversible operations. However: Newtonian mechanics, Maxwellian electrodynamics are also time-reversible... Towards ahigh LevelQuantum Programming Language p.8/36

33 Something we know well... Start with classical computations on finite types. Quantum mechanics is time-reversible hence quantum computation is based on reversible operations. However: Newtonian mechanics, Maxwellian electrodynamics are also time-reversible hence classical computation should be based on reversible operations. Towards ahigh LevelQuantum Programming Language p.8/36

34 Classical computation ( ) Towards ahigh LevelQuantum Programming Language p.9/36

35 . / + -, 0 Classical computation ( ) Given finite sets (input) and (output): Towards ahigh LevelQuantum Programming Language p.9/36

36 . / + -, 0 Classical computation ( ) Given finite sets (input) and (output): a finite set of initial heaps, Towards ahigh LevelQuantum Programming Language p.9/36

37 . / + -, 0 Classical computation ( ) Given finite sets (input) and (output): a finite set of initial heaps, an initial heap 132, Towards ahigh LevelQuantum Programming Language p.9/36

38 . / + -, 0 Classical computation ( ) Given finite sets (input) and (output): a finite set of initial heaps, an initial heap 132 a finite set of garbage states,, Towards ahigh LevelQuantum Programming Language p.9/36

39 . 2 / + 4-5, 0 4 Classical computation ( ) Given finite sets (input) and (output): a finite set of initial heaps, an initial heap 132 a finite set of garbage states, a bijection,, Towards ahigh LevelQuantum Programming Language p.9/36

40 Semantics Towards ahigh LevelQuantum Programming Language p.10/36

41 # " " 86 Semantics A classical computation 1 2 induces a function U by U 9;: # Towards ahigh LevelQuantum Programming Language p.10/36

42 # " " 86 2 Semantics A classical computation 1 2 induces a function U by U 9;: # Theorem Any function (on finite sets 7) can be realized by a quantum computation. Towards ahigh LevelQuantum Programming Language p.10/36

43 Composing classical computations Towards ahigh LevelQuantum Programming Language p.11/36

44 = < <, = = < Composing classical computations = < Towards ahigh LevelQuantum Programming Language p.11/36

45 = < " <, " # 6 > = " # > 6 # = < Composing classical computations = < Theorem: U U U Towards ahigh LevelQuantum Programming Language p.11/36

46 Coming next: Quantum computations Develop analogously to... Towards ahigh LevelQuantum Programming Language p.12/36

47 Linear algebra revision Towards ahigh LevelQuantum Programming Language p.13/36

48 Linear algebra revision Given a finite set (the base) is a Hilbert space. Towards ahigh LevelQuantum Programming Language p.13/36

49 2 2 Linear algebra revision Given a finite set (the base) is a Hilbert space. Linear operators: induces we write? 2. Towards ahigh LevelQuantum Programming Language p.13/36

50 2 2 E"# F " A 8 A 8 D C B Linear algebra revision Given a finite set (the base) is a Hilbert space. Linear operators: induces we write Norm of # 2? 2. Towards ahigh LevelQuantum Programming Language p.13/36

51 2 2 E"# F " A 8 A 8 D C B 2 Linear algebra revision Given a finite set (the base) is a Hilbert space. Linear operators: induces we write Norm of a vector:, A unitary operator # 2? 2 unitary is a linear isomorphism that preserves the norm.. Towards ahigh LevelQuantum Programming Language p.13/36

52 Basics of quantum computation Towards ahigh LevelQuantum Programming Language p.14/36

53 2 A Basics of quantum computation A pure state over is a vector with Towards ahigh LevelQuantum Programming Language p.14/36

54 2 A 2 Basics of quantum computation A pure state over is a vector A reversible computation is given by a unitary operator unitary. with Towards ahigh LevelQuantum Programming Language p.14/36

55 Quantum computations ( ) Towards ahigh LevelQuantum Programming Language p.15/36

56 . / + -, 0 Quantum computations ( ) Given finite sets (input) and (output): Towards ahigh LevelQuantum Programming Language p.15/36

57 . / + -, 0 Quantum computations ( ) Given finite sets (input) and (output): a finite set heaps,, the base of the space of initial Towards ahigh LevelQuantum Programming Language p.15/36

58 . / + -, 0 Quantum computations ( ) Given finite sets (input) and (output): a finite set, the base of the space of initial heaps, a heap initialisation vector 1 2, Towards ahigh LevelQuantum Programming Language p.15/36

59 . / + -, 0 Quantum computations ( ) Given finite sets (input) and (output): a finite set, the base of the space of initial heaps, a heap initialisation vector 1 2 a finite set, the base of the space of garbage states,, Towards ahigh LevelQuantum Programming Language p.15/36

60 . / + 2 -, 0 Quantum computations ( ) Given finite sets (input) and (output): a finite set, the base of the space of initial heaps, a heap initialisation vector 1 2 a finite set, the base of the space of garbage states, a unitary operator, unitary. Towards ahigh LevelQuantum Programming Language p.15/36

61 Composing quantum computations Towards ahigh LevelQuantum Programming Language p.16/36

62 = < <, = = < Composing quantum computations = < Towards ahigh LevelQuantum Programming Language p.16/36

63 Semantics of quantum computations.. Towards ahigh LevelQuantum Programming Language p.17/36

64 Semantics of quantum computations..... is a bit more subtle. Towards ahigh LevelQuantum Programming Language p.17/36

65 2 4 Semantics of quantum computations..... is a bit more subtle. There is no (sensible) operator on vector spaces, replacing. 9: Towards ahigh LevelQuantum Programming Language p.17/36

66 2 4 Semantics of quantum computations..... is a bit more subtle. There is no (sensible) operator on vector spaces, replacing. 9: Indeed: Forgetting part of a pure state results in a mixed state. Towards ahigh LevelQuantum Programming Language p.17/36

67 Density matrices and superoperators Towards ahigh LevelQuantum Programming Language p.18/36

68 Density matrices and superoperators Mixed states are represented by density matrices. Towards ahigh LevelQuantum Programming Language p.18/36

69 Density matrices and superoperators Mixed states are represented by density matrices. Operations on mixed states (i.e. density matrices) are represented by superoperators. Towards ahigh LevelQuantum Programming Language p.18/36

70 G Density matrices and superoperators Mixed states are represented by density matrices. Operations on mixed states (i.e. density matrices) are represented by superoperators. Every unitary operator superoperator. gives rise to a Towards ahigh LevelQuantum Programming Language p.18/36

71 G 2 O Density matrices and superoperators Mixed states are represented by density matrices. Operations on mixed states (i.e. density matrices) are represented by superoperators. Every unitary operator superoperator. There is an operator gives rise to a HJILKNM super called partial trace. Towards ahigh LevelQuantum Programming Language p.18/36

72 Semantics Towards ahigh LevelQuantum Programming Language p.19/36

73 26 V W < 6 Semantics Every quantum computation superoperator U super gives rise to a PRQ S;TU XZY U Towards ahigh LevelQuantum Programming Language p.19/36

74 26 V W < 6 2 Semantics Every quantum computation superoperator U super gives rise to a PRQ S;TU XZY U Theorem: Every superoperator super (on finite Hilbert spaces) comes from a quantum computation. Towards ahigh LevelQuantum Programming Language p.19/36

75 Classical vs quantum Towards ahigh LevelQuantum Programming Language p.20/36

76 Classical vs quantum classical quantum Towards ahigh LevelQuantum Programming Language p.20/36

77 Classical vs quantum classical finite sets quantum Towards ahigh LevelQuantum Programming Language p.20/36

78 Classical vs quantum classical finite sets quantum finite dimensional Hilbert spaces Towards ahigh LevelQuantum Programming Language p.20/36

79 Classical vs quantum classical finite sets bijections quantum finite dimensional Hilbert spaces Towards ahigh LevelQuantum Programming Language p.20/36

80 Classical vs quantum classical finite sets bijections quantum finite dimensional Hilbert spaces unitary operators Towards ahigh LevelQuantum Programming Language p.20/36

81 [ Classical vs quantum classical finite sets bijections cartesian product ( ) quantum finite dimensional Hilbert spaces unitary operators Towards ahigh LevelQuantum Programming Language p.20/36

82 \ [ Classical vs quantum classical finite sets bijections cartesian product ( quantum finite dimensional Hilbert spaces unitary operators ) tensor product ( ) Towards ahigh LevelQuantum Programming Language p.20/36

83 \ [ Classical vs quantum classical finite sets bijections cartesian product ( functions quantum finite dimensional Hilbert spaces unitary operators ) tensor product ( ) Towards ahigh LevelQuantum Programming Language p.20/36

84 \ [ Classical vs quantum classical finite sets bijections cartesian product ( functions quantum finite dimensional Hilbert spaces unitary operators ) tensor product ( ) superoperators Towards ahigh LevelQuantum Programming Language p.20/36

85 \ [ Classical vs quantum classical finite sets bijections cartesian product ( functions projections quantum finite dimensional Hilbert spaces unitary operators ) tensor product ( ) superoperators Towards ahigh LevelQuantum Programming Language p.20/36

86 \ [ Classical vs quantum classical finite sets bijections cartesian product ( functions projections quantum finite dimensional Hilbert spaces unitary operators ) tensor product ( ) superoperators partial trace Towards ahigh LevelQuantum Programming Language p.20/36

87 Decoherence Towards ahigh LevelQuantum Programming Language p.21/36

88 ^ ] Decoherence -bac -`_ Towards ahigh LevelQuantum Programming Language p.21/36

89 ^ ] d e Decoherence -bac -`_ Classically > 9L: Towards ahigh LevelQuantum Programming Language p.21/36

90 ^ ] d e Decoherence -bac -`_ Classically > 9L: Quantum Towards ahigh LevelQuantum Programming Language p.21/36

91 ^ g^! ] ( g^! d e Decoherence -bac -`_ Classically > 9L: Quantum input: : f : f Towards ahigh LevelQuantum Programming Language p.21/36

92 ^ g^! ] ( g^! d e Decoherence -bac -`_ Classically > 9L: Quantum input: : f : f output: ( g! : ( g^! : Towards ahigh LevelQuantum Programming Language p.21/36

93 2. QML basics 1. Semantics of finite classical and quantum computation 2. QML basics 3. Compiling QML 4. Conclusions and further work Towards ahigh LevelQuantum Programming Language p.22/36

94 QML basics Towards ahigh LevelQuantum Programming Language p.23/36

95 QML basics QML is a first order functional languages, i.e. programs are well-typed expressions. Towards ahigh LevelQuantum Programming Language p.23/36

96 i QML basics QML is a first order functional languages, i.e. programs are well-typed expressions. QML types are h 7 h i 7 Towards ahigh LevelQuantum Programming Language p.23/36

97 i QML basics QML is a first order functional languages, i.e. programs are well-typed expressions. QML types are Qbits h 7 h i 7 Towards ahigh LevelQuantum Programming Language p.23/36

98 i QML basics QML is a first order functional languages, i.e. programs are well-typed expressions. QML types are Qbits Qbytes j h 7 h i 7. Towards ahigh LevelQuantum Programming Language p.23/36

99 l k k QML basics... A QML program is an expression in a context of typed variables, e.g. $ $ l $&%' ) * Towards ahigh LevelQuantum Programming Language p.24/36

100 l k k QML basics... A QML program is an expression in a context of typed variables, e.g. $ $ l $&%' ) * We can compile QML programs into quantum computations (i.e. quantum circuits). Towards ahigh LevelQuantum Programming Language p.24/36

101 QML basics... Forgetting variables has to be explicit. Towards ahigh LevelQuantum Programming Language p.25/36

102 # " $ n 7 QML basics... Forgetting variables has to be explicit. E.g. $m is illegal, Towards ahigh LevelQuantum Programming Language p.25/36

103 # " $ n 7 ( # " $ n n 7 QML basics... Forgetting variables has to be explicit. E.g. $m is illegal, but $m is ok. Towards ahigh LevelQuantum Programming Language p.25/36

104 QML basics... There are two different if-then-else (or more generally case) constructs. Towards ahigh LevelQuantum Programming Language p.26/36

105 o o QML basics... There are two different if-then-else (or more generally case) constructs. $&%' ) * is just the identity, Towards ahigh LevelQuantum Programming Language p.26/36

106 o o p p introduces a measurement (end hence Towards ahigh LevelQuantum Programming Language p.26/36 decoherence). QML basics... There are two different if-then-else (or more generally case) constructs. $&%' ) * is just the identity, but $&%' )*

107 QML basics... Using is only allowed, if the branches are orthogonal, i.e. observable different. Towards ahigh LevelQuantum Programming Language p.27/36

108 s rq # " q q n s rq 7 # " # n 7 QML basics... Using is only allowed, if the branches are orthogonal, i.e. observable different. n7 " ) * is illegal, Towards ahigh LevelQuantum Programming Language p.27/36

109 # " q n s rq 7 # # " n 7 # " # " q n s rq 7 ## " 7 " ## " n 7 7 QML basics... Using is only allowed, if the branches are orthogonal, i.e. observable different. s rq q " n7 ) * is illegal, but s rq q $&%' " n7 ) * is ok. Towards ahigh LevelQuantum Programming Language p.27/36

110 ( ( QML basics... We can introduce superpositions, e.g. $&%' # "! $&%'! )* Towards ahigh LevelQuantum Programming Language p.28/36

111 ( ( QML basics... We can introduce superpositions, e.g. # $&%' "! $&%'! )* However, the terms in the superposition have to be orthogonal. Towards ahigh LevelQuantum Programming Language p.28/36

112 3. Compiling QML 1. Semantics of finite classical and quantum computation 2. QML basics 3. Compiling QML 4. Conclusions and further work Towards ahigh LevelQuantum Programming Language p.29/36

113 Compilation Towards ahigh LevelQuantum Programming Language p.30/36

114 t i h 7 z v # " t Compilation Correct QML programs are defined by typing rules, e.g. uv uy i x h 7 w { ~} u y ƒ x w 7 Towards ahigh LevelQuantum Programming Language p.30/36

115 t i h 7 z v # " t Compilation Correct QML programs are defined by typing rules, e.g. uv uy i x h 7 w { ~} u y ƒ x w 7 For each rule we can construct a quantum computation, i.e. a circuit. Towards ahigh LevelQuantum Programming Language p.30/36

116 i 7 v # " t uv t h uy i x h 7 w { z} u y ƒ x w 7 Towards ahigh LevelQuantum Programming Language p.31/36 -elim

117 i 7 v # " t t Œ M Ž uv t h uy i x h 7 w { z} u y ƒ x w 7 ˆ Š -elim Ž Ž Towards ahigh LevelQuantum Programming Language p.31/36

118 Compiler Towards ahigh LevelQuantum Programming Language p.32/36

119 Compiler A compiler is currently being implemented by my student Jonathan Grattage (in Haskell). Towards ahigh LevelQuantum Programming Language p.32/36

120 Compiler A compiler is currently being implemented by my student Jonathan Grattage (in Haskell). The output of the compiler are quantum circuits which can be simulated by a quantum circuit simulator. Towards ahigh LevelQuantum Programming Language p.32/36

121 Compiler A compiler is currently being implemented by my student Jonathan Grattage (in Haskell). The output of the compiler are quantum circuits which can be simulated by a quantum circuit simulator. Amr Sabry and Juliana Vizotti (Indiana University) embarked on an independent implementation of QML based on our paper. Towards ahigh LevelQuantum Programming Language p.32/36

122 4. Conclusions 1. Semantics of finite classical and quantum computation 2. QML basics 3. Compiling QML 4. Conclusions and further work Towards ahigh LevelQuantum Programming Language p.33/36

123 Conclusions Towards ahigh LevelQuantum Programming Language p.34/36

124 Conclusions Our semantic ideas proved useful when designing a quantum programming language, analogous concepts are modelled by the same syntactic constructs. Towards ahigh LevelQuantum Programming Language p.34/36

125 Conclusions Our semantic ideas proved useful when designing a quantum programming language, analogous concepts are modelled by the same syntactic constructs. Our analysis also highlights the differences between classical and quantum programming. Towards ahigh LevelQuantum Programming Language p.34/36

126 Conclusions Our semantic ideas proved useful when designing a quantum programming language, analogous concepts are modelled by the same syntactic constructs. Our analysis also highlights the differences between classical and quantum programming. Quantum programming introduces the problem of control of decoherence, which we address by making forgetting variables explicit and by having different if-then-else constructs. Towards ahigh LevelQuantum Programming Language p.34/36

127 Further work Towards ahigh LevelQuantum Programming Language p.35/36

128 Further work We have to analyze more quantum programs to evaluate the practical usefulness of our approach. Towards ahigh LevelQuantum Programming Language p.35/36

129 Further work We have to analyze more quantum programs to evaluate the practical usefulness of our approach. Are we able to come up with completely new algorithms using QML? Towards ahigh LevelQuantum Programming Language p.35/36

130 Further work We have to analyze more quantum programs to evaluate the practical usefulness of our approach. Are we able to come up with completely new algorithms using QML? How to deal with higher order programs? Towards ahigh LevelQuantum Programming Language p.35/36

131 Further work We have to analyze more quantum programs to evaluate the practical usefulness of our approach. Are we able to come up with completely new algorithms using QML? How to deal with higher order programs? How to deal with infinite datatypes? Towards ahigh LevelQuantum Programming Language p.35/36

132 Further work We have to analyze more quantum programs to evaluate the practical usefulness of our approach. Are we able to come up with completely new algorithms using QML? How to deal with higher order programs? How to deal with infinite datatypes? Investigate the similarities/differences between FCC and FQC from a categorical point of view. Towards ahigh LevelQuantum Programming Language p.35/36

133 The end Thank you for your attention. Towards ahigh LevelQuantum Programming Language p.36/36

A Functional Quantum Programming Language

A Functional Quantum Programming Language A Functional Quantum Programming Language Thorsten Altenkirch University of Nottingham based on joint work with Jonathan Grattage and discussions with V.P. Belavkin supported by EPSRC grant GR/S30818/01

More information

Towards a High Level Quantum Programming Language

Towards a High Level Quantum Programming Language MGS Xmas 04 p.1/?? Towards a High Level Quantum Programming Language Thorsten Altenkirch University of Nottingham based on joint work with Jonathan Grattage and discussions with V.P. Belavkin supported

More information

A functional quantum programming language

A functional quantum programming language A functional quantum programming language Thorsten Altenkirch and Jonathan Grattage School of Computer Science and IT, Nottingham University email: {txa,jjg}@cs.nott.ac.uk Abstract. We introduce the language

More information

arxiv:quant-ph/ v5 19 Apr 2005

arxiv:quant-ph/ v5 19 Apr 2005 A functional quantum programming language arxiv:quant-ph/0409065v5 19 Apr 2005 Thorsten Altenkirch and Jonathan Grattage School of Computer Science and IT, Nottingham University email: {txa,jjg}@cs.nott.ac.uk

More information

Quantum Effects. Juliana K. Vizzotto 1 Thorsten Altenkirch 2. Amr Sabry January Yale CS Colloquium Page 1

Quantum Effects. Juliana K. Vizzotto 1 Thorsten Altenkirch 2. Amr Sabry January Yale CS Colloquium Page 1 Quantum Effects Juliana K. Vizzotto 1 Thorsten Altenkirch 2 Amr Sabry 3 1 Federal University of Rio Grande do Sul 2 The University of Nottingham 3 Indiana University 2 January 25 Yale CS Colloquium Page

More information

Orthogonality and Algebraic Lambda-Calculus

Orthogonality and Algebraic Lambda-Calculus Orthogonality and Algebraic Lambda-Calculus Benoît Valiron March 28, 2010 Abstract Directly encoding lambda-terms on quantum strings while keeping a quantum interpretation is a hard task. As shown by van

More information

A functional quantum programming language. by Jonathan James Grattage, BSc (Hons)

A functional quantum programming language. by Jonathan James Grattage, BSc (Hons) A functional quantum programming language by Jonathan James Grattage, BSc (Hons) Thesis submitted to The University of Nottingham for the degree of Doctor of Philosophy, September 2006 Abstract This thesis

More information

Quantum data and control made easier

Quantum data and control made easier QPL 006 Preliminary Version Quantum data and control made easier Michael Lampis 1, Kyriakos G. Ginis 3 Nikolaos S. Papaspyrou 4 School of Electrical and Computer Engineering National Technical University

More information

Quantum Programming. Juliana K. Vizzotto 1 and Amr Sabry 2. 8 November Yale CS Colloquium Page 1. 1 Federal University of Rio Grande do Sul

Quantum Programming. Juliana K. Vizzotto 1 and Amr Sabry 2. 8 November Yale CS Colloquium Page 1. 1 Federal University of Rio Grande do Sul Quantum Programming Juliana K. Vizzotto 1 and Amr Sabry 2 1 Federal University of Rio Grande do Sul 2 IU Computer Science Department 8 November 2004 Yale CS Colloquium Page 1 Quantum mechanics It is a

More information

Quantum Recursion and Second Quantisation

Quantum Recursion and Second Quantisation Quantum Recursion and Second Quantisation Mingsheng Ying State Key Laboratory of Computer Science Outline 1. Introduction 2. Recursive Programming 3. Classical Recursion in Quantum Programming 4. Quantum

More information

Lecture 2: From Classical to Quantum Model of Computation

Lecture 2: From Classical to Quantum Model of Computation CS 880: Quantum Information Processing 9/7/10 Lecture : From Classical to Quantum Model of Computation Instructor: Dieter van Melkebeek Scribe: Tyson Williams Last class we introduced two models for deterministic

More information

Type Systems for Quantum Computation

Type Systems for Quantum Computation Type Systems for Quantum Computation Bill Zorn Abstract Type systems are useful to programmers for a variety of reasons. In the classical world, they help us to define interfaces between separate pieces

More information

Introduction to Quantum Computing

Introduction to Quantum Computing Introduction to Quantum Computing Part I Emma Strubell http://cs.umaine.edu/~ema/quantum_tutorial.pdf April 12, 2011 Overview Outline What is quantum computing? Background Caveats Fundamental differences

More information

Introduction to Quantum Computing

Introduction to Quantum Computing Introduction to Quantum Computing Einar Pius University of Edinburgh Why this Course To raise interest in quantum computing To show how quantum computers could be useful To talk about concepts not found

More information

THE UNIVERSITY OF CALGARY. Programming with a Quantum Stack. Brett Gordon Giles A THESIS SUBMITTED TO THE FACULTY OF GRADUATE STUDIES

THE UNIVERSITY OF CALGARY. Programming with a Quantum Stack. Brett Gordon Giles A THESIS SUBMITTED TO THE FACULTY OF GRADUATE STUDIES THE UNIVERSITY OF CALGARY Programming with a Quantum Stack by Brett Gordon Giles A THESIS SUBMITTED TO THE FACULTY OF GRADUATE STUDIES IN PARTIAL FULFILLMENT OF THE REQUIREMENTS FOR THE DEGREE OF MASTER

More information

Quantum Recursion and Second Quantisation Basic Ideas and Examples

Quantum Recursion and Second Quantisation Basic Ideas and Examples Quantum Recursion and Second Quantisation Basic Ideas and Examples Mingsheng Ying University of Technology, Sydney, Australia and Tsinghua University, China Happy Birthday Prakash! Happy Birthday Prakash!

More information

From Symmetric Pattern-Matching to Quantum Control

From Symmetric Pattern-Matching to Quantum Control From Symmetric Pattern-Matching to Quantum Control Amr Sabry 1, Benoît Valiron 2, and Juliana Kaizer Vizzotto 3 1 Indiana University sabry@indiana.edu 2 LRI, CentraleSupélec, Université Paris-Saclay benoit.valiron@lri.fr

More information

Structuring Quantum Effects: Superoperators as Arrows

Structuring Quantum Effects: Superoperators as Arrows Math. Struct. in Comp. Science Structuring Quantum Effects: Superoperators as Arrows J U L I A N A V I Z Z O T T O 1, T H O R S T E N A L T E N K I R C H 2 and A M R S A B R Y 3 1 Institute of Informatics,

More information

Quantum Computing. Thorsten Altenkirch

Quantum Computing. Thorsten Altenkirch Quantum Computing Thorsten Altenkirch Is Computation universal? Alonzo Church - calculus Alan Turing Turing machines computable functions The Church-Turing thesis All computational formalisms define the

More information

Reversible and Quantum computing. Fisica dell Energia - a.a. 2015/2016

Reversible and Quantum computing. Fisica dell Energia - a.a. 2015/2016 Reversible and Quantum computing Fisica dell Energia - a.a. 2015/2016 Reversible computing A process is said to be logically reversible if the transition function that maps old computational states to

More information

)j > Riley Tipton Perry University of New South Wales, Australia. World Scientific CHENNAI

)j > Riley Tipton Perry University of New South Wales, Australia. World Scientific CHENNAI Riley Tipton Perry University of New South Wales, Australia )j > World Scientific NEW JERSEY LONDON. SINGAPORE BEIJING SHANSHAI HONG K0N6 TAIPEI» CHENNAI Contents Acknowledgments xi 1. Introduction 1 1.1

More information

QLang: Qubit Language

QLang: Qubit Language QLang: Qubit Language Christopher Campbell Clément Canonne Sankalpa Khadka Winnie Narang Jonathan Wong September 24, 24 Introduction In 965, Gordon Moore predicted that the number of transistors in integrated

More information

Errata list, Nielsen & Chuang. rrata/errata.html

Errata list, Nielsen & Chuang.  rrata/errata.html Errata list, Nielsen & Chuang http://www.michaelnielsen.org/qcqi/errata/e rrata/errata.html Part II, Nielsen & Chuang Quantum circuits (Ch 4) SK Quantum algorithms (Ch 5 & 6) Göran Johansson Physical realisation

More information

Chapter 10. Quantum algorithms

Chapter 10. Quantum algorithms Chapter 10. Quantum algorithms Complex numbers: a quick review Definition: C = { a + b i : a, b R } where i = 1. Polar form of z = a + b i is z = re iθ, where r = z = a 2 + b 2 and θ = tan 1 y x Alternatively,

More information

An Introduction to Quantum Computation and Quantum Information

An Introduction to Quantum Computation and Quantum Information An to and Graduate Group in Applied Math University of California, Davis March 13, 009 A bit of history Benioff 198 : First paper published mentioning quantum computing Feynman 198 : Use a quantum computer

More information

Introduction to Quantum Information Processing QIC 710 / CS 768 / PH 767 / CO 681 / AM 871

Introduction to Quantum Information Processing QIC 710 / CS 768 / PH 767 / CO 681 / AM 871 Introduction to Quantum Information Processing QIC 710 / CS 768 / PH 767 / CO 681 / AM 871 Lecture 1 (2017) Jon Yard QNC 3126 jyard@uwaterloo.ca TAs Nitica Sakharwade nsakharwade@perimeterinstitute.ca

More information

Quantum Recursion and Second Quantisation

Quantum Recursion and Second Quantisation Quantum Recursion and Second Quantisation Mingsheng Ying University of Technology Sydney, Australia and Tsinghua University, China Outline 1. Introduction 2. Quantum Case Statement 3. Syntax of Quantum

More information

Some Introductory Notes on Quantum Computing

Some Introductory Notes on Quantum Computing Some Introductory Notes on Quantum Computing Markus G. Kuhn http://www.cl.cam.ac.uk/~mgk25/ Computer Laboratory University of Cambridge 2000-04-07 1 Quantum Computing Notation Quantum Computing is best

More information

Simon s algorithm (1994)

Simon s algorithm (1994) Simon s algorithm (1994) Given a classical circuit C f (of polynomial size, in n) for an f : {0, 1} n {0, 1} n, such that for a certain s {0, 1} n \{0 n }: x, y {0, 1} n (x y) : f (x) = f (y) x y = s with

More information

Complex numbers: a quick review. Chapter 10. Quantum algorithms. Definition: where i = 1. Polar form of z = a + b i is z = re iθ, where

Complex numbers: a quick review. Chapter 10. Quantum algorithms. Definition: where i = 1. Polar form of z = a + b i is z = re iθ, where Chapter 0 Quantum algorithms Complex numbers: a quick review / 4 / 4 Definition: C = { a + b i : a, b R } where i = Polar form of z = a + b i is z = re iθ, where r = z = a + b and θ = tan y x Alternatively,

More information

- Why aren t there more quantum algorithms? - Quantum Programming Languages. By : Amanda Cieslak and Ahmana Tarin

- Why aren t there more quantum algorithms? - Quantum Programming Languages. By : Amanda Cieslak and Ahmana Tarin - Why aren t there more quantum algorithms? - Quantum Programming Languages By : Amanda Cieslak and Ahmana Tarin Why aren t there more quantum algorithms? there are only a few problems for which quantum

More information

Quantum Algorithms. Andreas Klappenecker Texas A&M University. Lecture notes of a course given in Spring Preliminary draft.

Quantum Algorithms. Andreas Klappenecker Texas A&M University. Lecture notes of a course given in Spring Preliminary draft. Quantum Algorithms Andreas Klappenecker Texas A&M University Lecture notes of a course given in Spring 003. Preliminary draft. c 003 by Andreas Klappenecker. All rights reserved. Preface Quantum computing

More information

Quantum computing! quantum gates! Fisica dell Energia!

Quantum computing! quantum gates! Fisica dell Energia! Quantum computing! quantum gates! Fisica dell Energia! What is Quantum Computing?! Calculation based on the laws of Quantum Mechanics.! Uses Quantum Mechanical Phenomena to perform operations on data.!

More information

Lecture 22: Quantum computational complexity

Lecture 22: Quantum computational complexity CPSC 519/619: Quantum Computation John Watrous, University of Calgary Lecture 22: Quantum computational complexity April 11, 2006 This will be the last lecture of the course I hope you have enjoyed the

More information

Hilbert Space, Entanglement, Quantum Gates, Bell States, Superdense Coding.

Hilbert Space, Entanglement, Quantum Gates, Bell States, Superdense Coding. CS 94- Bell States Bell Inequalities 9//04 Fall 004 Lecture Hilbert Space Entanglement Quantum Gates Bell States Superdense Coding 1 One qubit: Recall that the state of a single qubit can be written as

More information

Quantum Information & Quantum Computation

Quantum Information & Quantum Computation CS9A, Spring 5: Quantum Information & Quantum Computation Wim van Dam Engineering, Room 59 vandam@cs http://www.cs.ucsb.edu/~vandam/teaching/cs9/ Administrivia Who has the book already? Office hours: Wednesday

More information

D.5 Quantum error correction

D.5 Quantum error correction D. QUANTUM ALGORITHMS 157 Figure III.34: E ects of decoherence on a qubit. On the left is a qubit yi that is mostly isoloated from its environment i. Ontheright,aweakinteraction between the qubit and the

More information

Quantum algorithms (CO 781, Winter 2008) Prof. Andrew Childs, University of Waterloo LECTURE 1: Quantum circuits and the abelian QFT

Quantum algorithms (CO 781, Winter 2008) Prof. Andrew Childs, University of Waterloo LECTURE 1: Quantum circuits and the abelian QFT Quantum algorithms (CO 78, Winter 008) Prof. Andrew Childs, University of Waterloo LECTURE : Quantum circuits and the abelian QFT This is a course on quantum algorithms. It is intended for graduate students

More information

Chapter 2. Basic Principles of Quantum mechanics

Chapter 2. Basic Principles of Quantum mechanics Chapter 2. Basic Principles of Quantum mechanics In this chapter we introduce basic principles of the quantum mechanics. Quantum computers are based on the principles of the quantum mechanics. In the classical

More information

Lecture 1: Introduction to Quantum Computing

Lecture 1: Introduction to Quantum Computing Lecture : Introduction to Quantum Computing Rajat Mittal IIT Kanpur What is quantum computing? This course is about the theory of quantum computation, i.e., to do computation using quantum systems. These

More information

Concepts and Algorithms of Scientific and Visual Computing Advanced Computation Models. CS448J, Autumn 2015, Stanford University Dominik L.

Concepts and Algorithms of Scientific and Visual Computing Advanced Computation Models. CS448J, Autumn 2015, Stanford University Dominik L. Concepts and Algorithms of Scientific and Visual Computing Advanced Computation Models CS448J, Autumn 2015, Stanford University Dominik L. Michels Advanced Computation Models There is a variety of advanced

More information

6.080/6.089 GITCS May 6-8, Lecture 22/23. α 0 + β 1. α 2 + β 2 = 1

6.080/6.089 GITCS May 6-8, Lecture 22/23. α 0 + β 1. α 2 + β 2 = 1 6.080/6.089 GITCS May 6-8, 2008 Lecturer: Scott Aaronson Lecture 22/23 Scribe: Chris Granade 1 Quantum Mechanics 1.1 Quantum states of n qubits If you have an object that can be in two perfectly distinguishable

More information

Physics 239/139 Spring 2018 Assignment 6

Physics 239/139 Spring 2018 Assignment 6 University of California at San Diego Department of Physics Prof. John McGreevy Physics 239/139 Spring 2018 Assignment 6 Due 12:30pm Monday, May 14, 2018 1. Brainwarmers on Kraus operators. (a) Check that

More information

2.0 Basic Elements of a Quantum Information Processor. 2.1 Classical information processing The carrier of information

2.0 Basic Elements of a Quantum Information Processor. 2.1 Classical information processing The carrier of information QSIT09.L03 Page 1 2.0 Basic Elements of a Quantum Information Processor 2.1 Classical information processing 2.1.1 The carrier of information - binary representation of information as bits (Binary digits).

More information

Introduction to Quantum Algorithms Part I: Quantum Gates and Simon s Algorithm

Introduction to Quantum Algorithms Part I: Quantum Gates and Simon s Algorithm Part I: Quantum Gates and Simon s Algorithm Martin Rötteler NEC Laboratories America, Inc. 4 Independence Way, Suite 00 Princeton, NJ 08540, U.S.A. International Summer School on Quantum Information, Max-Planck-Institut

More information

Quantum computing and mathematical research. Chi-Kwong Li The College of William and Mary

Quantum computing and mathematical research. Chi-Kwong Li The College of William and Mary and mathematical research The College of William and Mary Classical computing Classical computing Hardware - Beads and bars. Classical computing Hardware - Beads and bars. Input - Using finger skill to

More information

Factoring on a Quantum Computer

Factoring on a Quantum Computer Factoring on a Quantum Computer The Essence Shor s Algorithm Wolfgang Polak wp@pocs.com Thanks to: Eleanor Rieffel Fuji Xerox Palo Alto Laboratory Wolfgang Polak San Jose State University, 4-14-010 - p.

More information

Compute the Fourier transform on the first register to get x {0,1} n x 0.

Compute the Fourier transform on the first register to get x {0,1} n x 0. CS 94 Recursive Fourier Sampling, Simon s Algorithm /5/009 Spring 009 Lecture 3 1 Review Recall that we can write any classical circuit x f(x) as a reversible circuit R f. We can view R f as a unitary

More information

Information quantique, calcul quantique :

Information quantique, calcul quantique : Séminaire LARIS, 8 juillet 2014. Information quantique, calcul quantique : des rudiments à la recherche (en 45min!). François Chapeau-Blondeau LARIS, Université d Angers, France. 1/25 Motivations pour

More information

Quantum Computation and Communication

Quantum Computation and Communication Tom Lake tswsl1989@sucs.org 16/02/2012 quan tum me chan ics: The branch of mechanics that deals with the mathematical description of the motion and interaction of subatomic particles - OED quan tum me

More information

Graph Non-Isomorphism Has a Succinct Quantum Certificate

Graph Non-Isomorphism Has a Succinct Quantum Certificate Graph Non-Isomorphism Has a Succinct Quantum Certificate Tatsuaki Okamoto Keisuke Tanaka Summary This paper presents the first quantum computational characterization of the Graph Non-Isomorphism problem

More information

Logical error rate in the Pauli twirling approximation

Logical error rate in the Pauli twirling approximation Logical error rate in the Pauli twirling approximation Amara Katabarwa and Michael R. Geller Department of Physics and Astronomy, University of Georgia, Athens, Georgia 30602, USA (Dated: April 10, 2015)

More information

α x x 0 α x x f(x) α x x α x ( 1) f(x) x f(x) x f(x) α x = α x x 2

α x x 0 α x x f(x) α x x α x ( 1) f(x) x f(x) x f(x) α x = α x x 2 Quadratic speedup for unstructured search - Grover s Al- CS 94- gorithm /8/07 Spring 007 Lecture 11 01 Unstructured Search Here s the problem: You are given an efficient boolean function f : {1,,} {0,1},

More information

Quantum Physics II (8.05) Fall 2002 Assignment 3

Quantum Physics II (8.05) Fall 2002 Assignment 3 Quantum Physics II (8.05) Fall 00 Assignment Readings The readings below will take you through the material for Problem Sets and 4. Cohen-Tannoudji Ch. II, III. Shankar Ch. 1 continues to be helpful. Sakurai

More information

Grover s algorithm. We want to find aa. Search in an unordered database. QC oracle (as usual) Usual trick

Grover s algorithm. We want to find aa. Search in an unordered database. QC oracle (as usual) Usual trick Grover s algorithm Search in an unordered database Example: phonebook, need to find a person from a phone number Actually, something else, like hard (e.g., NP-complete) problem 0, xx aa Black box ff xx

More information

Modelling Parallel Quantum Computing Using Transactional Memory

Modelling Parallel Quantum Computing Using Transactional Memory Electronic Notes in Theoretical Computer Science 270 (1) (2011) 183 190 www.elsevier.com/locate/entcs Modelling Parallel Quantum Computing Using Transactional Memory Juliana Kaizer Vizzotto 1 Programa

More information

Programming with classical quantum datatypes

Programming with classical quantum datatypes Programming with classical quantum datatypes Robin Cockett & Brett Giles (robin,gilesb)@cpsc.ucalgary.ca University of Calgary FMCS 2006, Programming with classical quantum datatypes p. 1/49 Yet another

More information

Towards a quantum calculus

Towards a quantum calculus QPL 2006 Preliminary Version Towards a quantum calculus (work in progress, extended abstract) Philippe Jorrand 1 Simon Perdrix 2 Leibniz Laboratory IMAG-INPG Grenoble, France Abstract The aim of this paper

More information

Quantum Computation. Michael A. Nielsen. University of Queensland

Quantum Computation. Michael A. Nielsen. University of Queensland Quantum Computation Michael A. Nielsen University of Queensland Goals: 1. To eplain the quantum circuit model of computation. 2. To eplain Deutsch s algorithm. 3. To eplain an alternate model of quantum

More information

Introduction to Quantum Error Correction

Introduction to Quantum Error Correction Introduction to Quantum Error Correction Nielsen & Chuang Quantum Information and Quantum Computation, CUP 2000, Ch. 10 Gottesman quant-ph/0004072 Steane quant-ph/0304016 Gottesman quant-ph/9903099 Errors

More information

Quantum Information Processing and Diagrams of States

Quantum Information Processing and Diagrams of States Quantum Information and Diagrams of States September 17th 2009, AFSecurity Sara Felloni sara@unik.no / sara.felloni@iet.ntnu.no Quantum Hacking Group: http://www.iet.ntnu.no/groups/optics/qcr/ UNIK University

More information

6.896 Quantum Complexity Theory 30 October Lecture 17

6.896 Quantum Complexity Theory 30 October Lecture 17 6.896 Quantum Complexity Theory 30 October 2008 Lecturer: Scott Aaronson Lecture 17 Last time, on America s Most Wanted Complexity Classes: 1. QMA vs. QCMA; QMA(2). 2. IP: Class of languages L {0, 1} for

More information

Quantum NP - Cont. Classical and Quantum Computation A.Yu Kitaev, A. Shen, M. N. Vyalyi 2002

Quantum NP - Cont. Classical and Quantum Computation A.Yu Kitaev, A. Shen, M. N. Vyalyi 2002 Quantum NP - Cont. Classical and Quantum Computation A.Yu Kitaev, A. Shen, M. N. Vyalyi 2002 1 QMA - the quantum analog to MA (and NP). Definition 1 QMA. The complexity class QMA is the class of all languages

More information

Chapter 1. Introduction

Chapter 1. Introduction Chapter 1 Introduction Symbolical artificial intelligence is a field of computer science that is highly related to quantum computation. At first glance, this statement appears to be a contradiction. However,

More information

Quantum Computation. Alessandra Di Pierro Computational models (Circuits, QTM) Algorithms (QFT, Quantum search)

Quantum Computation. Alessandra Di Pierro Computational models (Circuits, QTM) Algorithms (QFT, Quantum search) Quantum Computation Alessandra Di Pierro alessandra.dipierro@univr.it 21 Info + Programme Info: http://profs.sci.univr.it/~dipierro/infquant/ InfQuant1.html Preliminary Programme: Introduction and Background

More information

Limits on the power of quantum statistical zero-knowledge

Limits on the power of quantum statistical zero-knowledge Limits on the power of quantum statistical zero-knowledge John Watrous Department of Computer Science University of Calgary Calgary, Alberta, Canada jwatrous@cpsc.ucalgary.ca January 16, 2003 Abstract

More information

Research Proposal: Quantum Computation and Algebraic Structures in Semantics

Research Proposal: Quantum Computation and Algebraic Structures in Semantics Research Proposal: Quantum Computation and Algebraic Structures in Semantics Benoît Valiron Abstract La théorie des algèbres d opérateurs est jointe à la fois au monde du calcul quantique, car celui-ci

More information

Quantum Predicative Programming

Quantum Predicative Programming Quantum Predicative Programming Anya Tafliovich and E.C.R. Hehner University of Toronto, Toronto ON M5S 3G4, Canada anya,hehner@cs.toronto.edu Abstract. The subject of this work is quantum predicative

More information

Simulating classical circuits with quantum circuits. The complexity class Reversible-P. Universal gate set for reversible circuits P = Reversible-P

Simulating classical circuits with quantum circuits. The complexity class Reversible-P. Universal gate set for reversible circuits P = Reversible-P Quantum Circuits Based on notes by John Watrous and also Sco8 Aaronson: www.sco8aaronson.com/democritus/ John Preskill: www.theory.caltech.edu/people/preskill/ph229 Outline Simulating classical circuits

More information

Quantum Computing Lecture 3. Principles of Quantum Mechanics. Anuj Dawar

Quantum Computing Lecture 3. Principles of Quantum Mechanics. Anuj Dawar Quantum Computing Lecture 3 Principles of Quantum Mechanics Anuj Dawar What is Quantum Mechanics? Quantum Mechanics is a framework for the development of physical theories. It is not itself a physical

More information

Quantum Computing Lecture 8. Quantum Automata and Complexity

Quantum Computing Lecture 8. Quantum Automata and Complexity Quantum Computing Lecture 8 Quantum Automata and Complexity Maris Ozols Computational models and complexity Shor s algorithm solves, in polynomial time, a problem for which no classical polynomial time

More information

More advanced codes 0 1 ( , 1 1 (

More advanced codes 0 1 ( , 1 1 ( p. 1/24 More advanced codes The Shor code was the first general-purpose quantum error-correcting code, but since then many others have been discovered. An important example, discovered independently of

More information

Introduction to Quantum Computing

Introduction to Quantum Computing Introduction to Quantum Computing Petros Wallden Lecture 7: Complexity & Algorithms I 13th October 016 School of Informatics, University of Edinburgh Complexity - Computational Complexity: Classification

More information

Introduction to Quantum Computation

Introduction to Quantum Computation Chapter 1 Introduction to Quantum Computation 1.1 Motivations The main task in this course is to discuss application of quantum mechanics to information processing (or computation). Why? Education:Asingleq-bitisthesmallestpossiblequantummechanical

More information

How quantum computation gates can be realized in terms of scattering theory approach to quantum tunneling of charge transport

How quantum computation gates can be realized in terms of scattering theory approach to quantum tunneling of charge transport ISSN: 2347-3215 Volume 3 Number 3 (March-2015) pp. 62-66 www.ijcrar.com How quantum computation gates can be realized in terms of scattering theory approach to quantum tunneling of charge transport Anita

More information

Baby's First Diagrammatic Calculus for Quantum Information Processing

Baby's First Diagrammatic Calculus for Quantum Information Processing Baby's First Diagrammatic Calculus for Quantum Information Processing Vladimir Zamdzhiev Department of Computer Science Tulane University 30 May 2018 1 / 38 Quantum computing ˆ Quantum computing is usually

More information

Discrete Quantum Theories

Discrete Quantum Theories Discrete Quantum Theories Andrew J. Hanson 1 Gerardo Ortiz 2 Amr Sabry 1 Yu-Tsung Tai 3 (1) School of Informatics and Computing (2) Department of Physics (3) Mathematics Department Indiana University July

More information

Quantum decoherence. Éric Oliver Paquette (U. Montréal) -Traces Worshop [Ottawa]- April 29 th, Quantum decoherence p. 1/2

Quantum decoherence. Éric Oliver Paquette (U. Montréal) -Traces Worshop [Ottawa]- April 29 th, Quantum decoherence p. 1/2 Quantum decoherence p. 1/2 Quantum decoherence Éric Oliver Paquette (U. Montréal) -Traces Worshop [Ottawa]- April 29 th, 2007 Quantum decoherence p. 2/2 Outline Quantum decoherence: 1. Basics of quantum

More information

Unitary Dynamics and Quantum Circuits

Unitary Dynamics and Quantum Circuits qitd323 Unitary Dynamics and Quantum Circuits Robert B. Griffiths Version of 20 January 2014 Contents 1 Unitary Dynamics 1 1.1 Time development operator T.................................... 1 1.2 Particular

More information

Towards a Quantum Programming Language

Towards a Quantum Programming Language The final version of this paper appeared in Math. Struct. in Comp. Science 14(4:527-586, 2004 Towards a Quantum Programming Language P E T E R S E L I N G E R Department of Mathematics and Statistics University

More information

Discrete quantum random walks

Discrete quantum random walks Quantum Information and Computation: Report Edin Husić edin.husic@ens-lyon.fr Discrete quantum random walks Abstract In this report, we present the ideas behind the notion of quantum random walks. We further

More information

Quantum Computing. 6. Quantum Computer Architecture 7. Quantum Computers and Complexity

Quantum Computing. 6. Quantum Computer Architecture 7. Quantum Computers and Complexity Quantum Computing 1. Quantum States and Quantum Gates 2. Multiple Qubits and Entangled States 3. Quantum Gate Arrays 4. Quantum Parallelism 5. Examples of Quantum Algorithms 1. Grover s Unstructured Search

More information

Introduction to Quantum Information Processing

Introduction to Quantum Information Processing Introduction to Quantum Information Processing Lecture 6 Richard Cleve Overview of Lecture 6 Continuation of teleportation Computation and some basic complexity classes Simple quantum algorithms in the

More information

The Deutsch-Josza Algorithm in NMR

The Deutsch-Josza Algorithm in NMR December 20, 2010 Matteo Biondi, Thomas Hasler Introduction Algorithm presented in 1992 by Deutsch and Josza First implementation in 1998 on NMR system: - Jones, JA; Mosca M; et al. of a quantum algorithm

More information

Grover Algorithm Applied to Four Qubits System

Grover Algorithm Applied to Four Qubits System www.ccsenet.org/cis Computer and Inormation Science Vol., No. ; May Grover Algorithm Applied to Four Qubits System Z. Sakhi (Corresponding author) Laboratory o Inormation Technology and Modelisation, and

More information

SUPERDENSE CODING AND QUANTUM TELEPORTATION

SUPERDENSE CODING AND QUANTUM TELEPORTATION SUPERDENSE CODING AND QUANTUM TELEPORTATION YAQIAO LI This note tries to rephrase mathematically superdense coding and quantum teleportation explained in [] Section.3 and.3.7, respectively (as if I understood

More information

A High Level Programming Language for Quantum Computing

A High Level Programming Language for Quantum Computing QUARK QUantum Analysis and Realization Kit A High Level Programming Language for Quantum Computing Team In lexicographical order: Name UNI Role Daria Jung djj2115 Verification and Validation Jamis Johnson

More information

Quantum Computer Simulation Using CUDA (Quantum Fourier Transform Algorithm)

Quantum Computer Simulation Using CUDA (Quantum Fourier Transform Algorithm) Quantum Computer Simulation Using CUDA (Quantum Fourier Transform Algorithm) Alexander Smith & Khashayar Khavari Department of Electrical and Computer Engineering University of Toronto April 15, 2009 Alexander

More information

QWIRE Practice: Formal Verification of Quantum Circuits in Coq

QWIRE Practice: Formal Verification of Quantum Circuits in Coq 1 / 29 QWIRE Practice: Formal Verification of Quantum Circuits in Coq Robert Rand, Jennifer Paykin, Steve Zdancewic University of Pennsylvania Quantum Physics and Logic, 2017 2 / 29 QWIRE A high-level

More information

Lecture 7: Quantum Fourier Transform over Z N

Lecture 7: Quantum Fourier Transform over Z N Quantum Computation (CMU 18-859BB, Fall 015) Lecture 7: Quantum Fourier Transform over Z September 30, 015 Lecturer: Ryan O Donnell Scribe: Chris Jones 1 Overview Last time, we talked about two main topics:

More information

Isomorphism of Finitary Inductive Types

Isomorphism of Finitary Inductive Types Isomorphism of Finitary Inductive Types Christian Sattler joint work (in progress) with Nicolai Kraus University of Nottingham May 2014 Motivating Example Generic data may be represented in a multitude

More information

Ensembles and incomplete information

Ensembles and incomplete information p. 1/32 Ensembles and incomplete information So far in this course, we have described quantum systems by states that are normalized vectors in a complex Hilbert space. This works so long as (a) the system

More information

Quantum Computational Complexity

Quantum Computational Complexity Quantum Computational Complexity John Watrous Institute for Quantum Computing and School of Computer Science University of Waterloo, Waterloo, Ontario, Canada. arxiv:0804.3401v1 [quant-ph] 21 Apr 2008

More information

Foundations of Quantum Programming

Foundations of Quantum Programming Foundations of Quantum Programming Mingsheng Ying University of Technology Sydney, Australia Institute of Software, Chinese Academy of Sciences Tsinghua University, China Outline Introduction Syntax of

More information

1 The Quantum IO Monad

1 The Quantum IO Monad 1 The Quantum IO Monad Thorsten Altenkirch and Alexander S. Green School of Computer Science, The University of Nottingham Abstract The Quantum IO monad is a purely functional interface to quantum programming

More information

Quantum Circuits with Mixed States

Quantum Circuits with Mixed States Quantum Circuits with Mixed States Dorit Aharonov Alexei Kitaev Noam Nisan arxiv:quant-ph/9806029v1 8 Jun 1998 February 1, 2008 Abstract Current formal models for quantum computation deal only with unitary

More information

6. Quantum error correcting codes

6. Quantum error correcting codes 6. Quantum error correcting codes Error correcting codes (A classical repetition code) Preserving the superposition Parity check Phase errors CSS 7-qubit code (Steane code) Too many error patterns? Syndrome

More information

An Implementation of Compact Genetic Algorithm on a Quantum Computer

An Implementation of Compact Genetic Algorithm on a Quantum Computer An Implementation of Compact Genetic Algorithm on a Quantum Computer Sorrachai Yingchareonthawornchai 1, Chatchawit Aporntewan, Prabhas Chongstitvatana 1 1 Department of Computer Engineering Department

More information

Quantum gate. Contents. Commonly used gates

Quantum gate. Contents. Commonly used gates Quantum gate From Wikipedia, the free encyclopedia In quantum computing and specifically the quantum circuit model of computation, a quantum gate (or quantum logic gate) is a basic quantum circuit operating

More information

Lecture 4: Postulates of quantum mechanics

Lecture 4: Postulates of quantum mechanics Lecture 4: Postulates of quantum mechanics Rajat Mittal IIT Kanpur The postulates of quantum mechanics provide us the mathematical formalism over which the physical theory is developed. For people studying

More information