1 / 25

Communicating Quantum Processes

Communicating Quantum Processes. Simon Gay Department of Computing Science University of Glasgow, UK. Rajagopal Nagarajan Department of Computer Science University of Warwick, UK. Overview. Quantum computing is of great interest because it has the

inara
Download Presentation

Communicating Quantum Processes

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. Communicating Quantum Processes Simon Gay Department of Computing Science University of Glasgow, UK Rajagopal Nagarajan Department of Computer Science University of Warwick, UK

  2. Overview Quantum computing is of great interest because it has the potential to solve some hard problems efficiently. Only a few algorithms are known and at present there are no techniques for generic improvement of algorithmic performance. Physical implementations of quantum computers of useful size are a long way in the future. Recent interest in quantum programming languages, including semantic studies, is very significant. Communicating Quantum Processes / POPL 2005

  3. Overview Our work addresses quantum protocols rather than algorithms. A range of protocols has been developed: cryptographic key distribution, communication protocols exploiting entanglement, ... Quantum cryptographic techniques are provably secure even in the presence of quantum computers. Quantum cryptography is much easier to implement than quantum computing. City-scale demonstrations have taken place, and components are commercially available. Quantum cryptography (and other quantum communication systems) will become an important practical technology in the near future. Communicating Quantum Processes / POPL 2005

  4. Overview Although quantum cryptographic protocols have been proved mathematically to be secure, we believe that there is a need for verification of systems which combine quantum and classical computation and communication. Computer science has a range of theories, techniques and tools which have been successfully used to verify classical communication and cryptographic systems. Formal modelling languages, specification logics, type theory, model-checking tools, automated theorem-proving, ... Our research programme: to apply these techniques to combined quantum/classical systems. Communicating Quantum Processes / POPL 2005

  5. Overview We have defined a formal language, CQP, for modelling systems which combine quantum and classical computation and communication. CQP is based on a combination of the pi calculus and Selinger’s language QPL. Details of the semantics have also been influenced by Jorrand & Lalire’s QPAlg. CQP has a static type system which controls the use of quantum state, corresponding to the no cloning theorem. The type system and the operational semantics are related by a Type Preservation theorem of the usual kind. Communicating Quantum Processes / POPL 2005

  6. Recall Concepts of Quantum Computation Qubits: basis states |0 and |1 , superpositions |0 + |1 Measurement: measuring |0 + |1 has the result 0 with probability (and final state |0). 1 with probability (and final state |1). Systems of multiple qubits: for example a two-qubit system has basis states |0|0|0|1 |1|0 |1|1 Communicating Quantum Processes / POPL 2005

  7. Recall Concepts of Quantum Computation Unitary transformation: for example CNot and H defined by CNot|0|x =|0|x H |0 = CNot|1|x =|1|1-x H|1 = Entanglement: a multi-qubit state which is not a tensor product for example measuring the first qubit yields either |0|0 or |1|1 and in either case both qubits now have the same value Entanglement is used by several protocols as a resource for information transmission. Communicating Quantum Processes / POPL 2005

  8. Dense Coding A protocol allowing 2 classical bits of information to be transmitted by sending 1 qubit and making use of entanglement. Alice and Bob share an entangled pair of qubits: x, y. Alice wishes to send n (0  n  3) to Bob. There is a quantum channel q linking them. Alice Bob x y (0  n  3) can transmit qubits q Communicating Quantum Processes / POPL 2005

  9. Dense Coding A protocol allowing 2 classical bits of information to be transmitted by sending 1 qubit and making use of entanglement. Alice and Bob share an entangled pair of qubits: x, y. Alice wishes to send n (0  n  3) to Bob. There is a quantum channel q linking them. Alice(x:Qbit, q:^[Qbit], n:0..3) = ... Bob(y:Qbit, q:^[Qbit]) = ... System(x:Qbit, y:Qbit, n:0..3) = (new q:^[Qbit])( Alice(x,q,n) | Bob(y,q) ) Communicating Quantum Processes / POPL 2005

  10. Dense Coding Alice uses n to select one of the 4 Pauli transformations, applies it to x, and sends x to Bob. Alice Bob x y send x to Bob x Alice(x:Qbit, q:^[Qbit], n:0..3) = {x *= n} . q![x] . Stop Communicating Quantum Processes / POPL 2005

  11. Dense Coding Alice uses n to select one of the 4 Pauli transformations, applies it to x, and sends x to Bob. Alice Bob x y eg. n=1 send x to Bob x Alice(x:Qbit, q:^[Qbit], n:0..3) = {x *= n} . q![x] . Stop Communicating Quantum Processes / POPL 2005

  12. Dense Coding Bob receives x, applies CNot to x,y, applies H to x, then measures x,y. The result uniquely determines n. Alice Bob x y send x to Bob x x, y CNot x, y H measure x,y n x, y Communicating Quantum Processes / POPL 2005

  13. Dense Coding Bob receives x, applies CNot to x,y, applies H to x, then measures x,y. The result uniquely determines n. Alice Bob x y eg. n=1 send x to Bob x CNot x, y H measure x,y n x, y Communicating Quantum Processes / POPL 2005

  14. Dense Coding Bob receives x, applies CNot to x,y, applies H to x, then measures x,y. The result uniquely determines n. Alice Bob x y eg. n=1 send x to Bob x CNot H measure x,y n x, y Communicating Quantum Processes / POPL 2005

  15. Dense Coding Bob receives x, applies CNot to x,y, applies H to x, then measures x,y. The result uniquely determines n. Alice Bob x y eg. n=1 send x to Bob x CNot H measure x,y n Communicating Quantum Processes / POPL 2005

  16. Dense Coding Bob receives x, applies CNot to x,y, applies H to x, then measures x,y. The result uniquely determines n. Alice Bob x y eg. n=1 send x to Bob x CNot H measure x,y 1 Communicating Quantum Processes / POPL 2005

  17. Dense Coding Bob receives x, applies CNot to x,y, applies H to x, then measures x,y. The result uniquely determines n. Bob(y:Qbit, q:^[Qbit]) = q?[z:Qbit] . {z,y *= CNot} . {z *= H} . Use(measure x,y) Communicating Quantum Processes / POPL 2005

  18. Dense Coding Alice(x:Qbit, q:^[Qbit], n:0..3) = {x *= n} . q![x] . Stop Bob(y:Qbit, q:^[Qbit]) = q?[z:Qbit] . {z,y *= CNot} . {z *= H} . Use(measure x,y) System(x:Qbit, y:Qbit, n:0..3) = (new q:^[Qbit])( Alice(x,q,n) | Bob(y,q) ) System is parameterized by x and y (and we must assume that they are entangled). Communicating Quantum Processes / POPL 2005

  19. Dense Coding with Entanglement Server We can make the system more self-contained: Alice and Bob receive their entangled qubits from a third process. (EPR source or entanglement server) q A B Alice’(s:^[Qbit], q:^[Qbit], n:0..3) = s?[x:Qbit] . Alice(x,q,n) s t Bob’(t:^[Qbit], q:^[Qbit]) = t?[y:Qbit] . Bob(y,q) S Source(s:^[Qbit], t:^[Qbit]) = (qbit x,y)({x *= H} . {x,y *= CNot} . s![x] . t![y] . Stop) System(n:0..3) = (new q, s, t:^[Qbit])( Alice’(s,q,n) | Bob’(t,q) | Source(s,t) ) Communicating Quantum Processes / POPL 2005

  20. The Language CQP This example has introduced our language CQP. Defining a formal language for describing protocols is a valuable step. We have also defined a formal operational semantics. It is based on the pi calculus, with the addition of global state (for the qubits) and probabilistic reductions (arising from measurements). CQP has a static type system which, in addition to checking correct use of values and channels, guarantees that qubits are not syntactically copied. Communicating Quantum Processes / POPL 2005

  21. Reduction in CQP Communication Communicating Quantum Processes / POPL 2005

  22. Reduction in CQP Measurement Communicating Quantum Processes / POPL 2005

  23. The No Cloning Theorem There is no unitary transformation U such that for all  ( s is some standard initial state for the second qubit). This means that there is no procedure for duplicating an arbitrary quantum state. Suppose that Alice continues with some behaviour, after sending the qubit to Bob. Alice(x:Qbit, q:^[Qbit], n:0..3) = {x *= n} . q![x] . Continue If Continue refers to x, then the natural interpretation would be that x has been copied. We cannot allow this. Communicating Quantum Processes / POPL 2005

  24. Typechecking for No Cloning Alice(x:Qbit, q:^[Qbit], n:0..3) = {x *= n} . q![x] . Continue The static type system of CQP guarantees that Continue does not refer to x. Technically: the fact that x is sent along q means that Continue is typechecked in an environment which does not contain x. The details are based on several pi calculus type systems, going back to Kobayashi, Pierce & Turner (1996). Similar ideas have recently been used to guarantee unique ownership of packets in a network system (Ennals, Sharp & Mycroft, 2004). Communicating Quantum Processes / POPL 2005

  25. Future Work The purpose of defining CQP is to support formal reasoning about quantum systems. There are several directions to explore. Model checking: we are now using the probabilistic model checking tool PRISM to analyze quantum systems. In the future we will translate CQP models automatically into PRISM, exploiting static analysis at the CQP level. Logics for specification: need to be developed for both automatic and non-automatic verification. Type-theoretic methods: can we get more from a type system? For example: can we develop type systems for high-level properties such as secrecy? Communicating Quantum Processes / POPL 2005

More Related