semantics for a quantum programming language by operator ...group-mmm.org/qpl2014/slides/cho.pdf ·...

106
Semantics for a Quantum Programming Language by Operator Algebras Kenta Cho Radboud University Nijmegen QPL 2014 5 June 2014

Upload: others

Post on 26-Jun-2020

6 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Semantics for a Quantum Programming Language

by Operator Algebras

Kenta ChoRadboud University Nijmegen

QPL 2014 5 June 2014

Page 2: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Semantics for a Quantum Programming Language

by Operator Algebras

Kenta ChoRadboud University Nijmegen

QPL 2014 5 June 2014

Master thesis University of Tokyo

Page 3: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

Overview• Semantics for a first-order functional quantum

programming language QPL [Selinger 2004]

• Use the category of W*-algebras and normal completely positive pre-unital maps

• is a -enriched SMC with -enriched finite products

• “nice” enough to give a semantics for QPL

2

WstarCP-PU

WstarCP-PUDcppo?

Dcppo?

Page 4: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

Overview• Semantics for a first-order functional quantum

programming language QPL [Selinger 2004]

• Use the category of W*-algebras and normal completely positive pre-unital maps

• is a -enriched SMC with -enriched finite products

• “nice” enough to give a semantics for QPL

2

WstarCP-PU

WstarCP-PUDcppo?

Dcppo?

?

Page 5: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

Overview• Semantics for a first-order functional quantum

programming language QPL [Selinger 2004]

• Use the category of W*-algebras and normal completely positive pre-unital maps

• is a -enriched SMC with -enriched finite products

• “nice” enough to give a semantics for QPL

2

WstarCP-PU

WstarCP-PUDcppo?

Dcppo?

quantum operations in the Heisenberg picture

?

Page 6: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

Outline• Quantum Operation

• Selinger’s QPL

• Operator Algebras and Quantum Operation

• Semantics for QPL by W*-algebras

• Future work and Conclusions

3

Page 7: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

Outline• Quantum Operation!

• Selinger’s QPL

• Operator Algebras and Quantum Operation

• Semantics for QPL by W*-algebras

• Future work and Conclusions

4

Page 8: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

Quantum Operation [Kraus]

5

: Hilbert spacesH1,H2

T (Hi) : the set of trace class operators on Hi

Def. A linear map is a quantum operation (QO) it is completely positive and trace-nonincreasing.def()

E : T (H1) ! T (H2)

T (Cn) ⇠= Mnthe set of

n×n matrices

(aka. superoperator)

Page 9: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

Quantum Operation [Kraus]

5

: Hilbert spacesH1,H2

T (Hi) : the set of trace class operators on Hi

Def. A linear map is a quantum operation (QO) it is completely positive and trace-nonincreasing.def()

E : T (H1) ! T (H2)

: state (density operator) on i.e. positive operator on with (hence by def.)

⇢tr(⇢) = 1

H1

H1

⇢ 2 T (H1)

T (Cn) ⇠= Mnthe set of

n×n matrices

(aka. superoperator)

Page 10: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

7�! E(⇢) : positive operator on with i.e. subnormalised state on

0 tr(E(⇢)) 1H2

H2

Quantum Operation [Kraus]

5

: Hilbert spacesH1,H2

T (Hi) : the set of trace class operators on Hi

Def. A linear map is a quantum operation (QO) it is completely positive and trace-nonincreasing.def()

E : T (H1) ! T (H2)

: state (density operator) on i.e. positive operator on with (hence by def.)

⇢tr(⇢) = 1

H1

H1

⇢ 2 T (H1)

T (Cn) ⇠= Mnthe set of

n×n matrices

(aka. superoperator)

Page 11: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

Def. A linear map is a quantum operation (QO) it is completely positive and trace-nonincreasing.def()

E : T (H1) ! T (H2)

6

Complete positivity

Page 12: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

Def. A linear map is a quantum operation (QO) it is completely positive and trace-nonincreasing.def()

E : T (H1) ! T (H2)

6

is completely positive (CP)def() 8n 2 N

is positive

E : T (H1) ! T (H2)

id⌦ E : Mn ⌦ T (H1) ! Mn ⌦ T (H2)⇠= T (Cn ⌦H1) ⇠= T (Cn ⌦H2)

Complete positivity

Page 13: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

Def. A linear map is a quantum operation (QO) it is completely positive and trace-nonincreasing.def()

E : T (H1) ! T (H2)

6

is completely positive (CP)def() 8n 2 N

is positive

E : T (H1) ! T (H2)

id⌦ E : Mn ⌦ T (H1) ! Mn ⌦ T (H2)⇠= T (Cn ⌦H1) ⇠= T (Cn ⌦H2)

id

ECn Cn

Compatibility with composition (i.e. tensor product) of systems

H1 H2

Cn ⌦H1 Cn ⌦H2

Complete positivity

Page 14: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

Dualising Quantum Operations

7

Fact. There is a 1-1 correspondence:bounded

weak*-continuous (called normal)

E : T (H1) �! T (H2)

E⇤ : B(H2) �! B(H1)

: the set of bounded operators on HiB(Hi)

Page 15: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

Dualising Quantum Operations

7

Fact. There is a 1-1 correspondence:bounded

weak*-continuous (called normal)

E : T (H1) �! T (H2)

E⇤ : B(H2) �! B(H1)

: the set of bounded operators on HiB(Hi)

is a Banach space wrt. trace norm, and

T (Hi)

T (Hi)⇤ ⇠= B(Hi)

Page 16: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

Dualising Quantum Operations

7

Fact. There is a 1-1 correspondence:bounded

weak*-continuous (called normal)

E : T (H1) �! T (H2)

E⇤ : B(H2) �! B(H1)

QO, i.e. CP trace-nonincreasing

normal CP pre-unital

This correspondence restricts to:

(sub-unital)E⇤(I) I

E : T (H1) �! T (H2)

E⇤ : B(H2) �! B(H1)

: the set of bounded operators on HiB(Hi)

is a Banach space wrt. trace norm, and

T (Hi)

T (Hi)⇤ ⇠= B(Hi)

Page 17: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

Schrödinger vs Heisenberg picture

8

QOs arise in two equivalent (dual) forms:

CP trace-nonincreasing

normal CP pre-unital

E : T (H1) �! T (H2)

E⇤ : B(H2) �! B(H1)

Page 18: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

Schrödinger vs Heisenberg picture

8

QOs arise in two equivalent (dual) forms:

CP trace-nonincreasing

normal CP pre-unital

span of density operators

E : T (H1) �! T (H2)

E⇤ : B(H2) �! B(H1)

Page 19: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

Schrödinger vs Heisenberg picture

8

QOs arise in two equivalent (dual) forms:

CP trace-nonincreasing

normal CP pre-unital

span of density operatorsspace of states

E : T (H1) �! T (H2)

E⇤ : B(H2) �! B(H1)

Page 20: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

Schrödinger vs Heisenberg picture

8

QOs arise in two equivalent (dual) forms:

CP trace-nonincreasing

normal CP pre-unital

span of density operatorsspace of states

span of self-adjoint operators

E : T (H1) �! T (H2)

E⇤ : B(H2) �! B(H1)

Page 21: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

Schrödinger vs Heisenberg picture

8

QOs arise in two equivalent (dual) forms:

CP trace-nonincreasing

normal CP pre-unital

span of density operatorsspace of states

span of self-adjoint operatorsalgebra of observables

E : T (H1) �! T (H2)

E⇤ : B(H2) �! B(H1)

Page 22: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

Schrödinger vs Heisenberg picture

8

QOs arise in two equivalent (dual) forms:

CP trace-nonincreasing

normal CP pre-unital

span of density operatorsspace of states

span of self-adjoint operatorsalgebra of observables

is a QO in the Schrödinger picture (states evolve)is a QO in the Heisenberg picture (observables evolve)

E

E⇤

E : T (H1) �! T (H2)

E⇤ : B(H2) �! B(H1)

Page 23: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

Outline• Quantum Operation

• Selinger’s QPL!

• Operator Algebras and Quantum Operation

• Semantics for QPL by W*-algebras

• Future work and Conclusions

9

Page 24: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

Selinger’s QPL• QPL (QFC) [Selinger 2004]

• First-order functional quantum programming language

• Loop and recursion

• “Quantum data,Classical control”

• Data types: qbit, bit

• Written as a flow chart

10

new qbit q := 0

q ∗= H

measure q

q : qbit

q : qbit

q : qbitq : qbit0 1

Example

Page 25: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

Selinger’s QPL• QPL (QFC) [Selinger 2004]

• First-order functional quantum programming language

• Loop and recursion

• “Quantum data,Classical control”

• Data types: qbit, bit

• Written as a flow chart

10

new qbit q := 0

q ∗= H

measure q

q : qbit

q : qbit

q : qbitq : qbit

✓1 00 0

state (density matrix) for |0i

0 1

Example

Page 26: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

Selinger’s QPL• QPL (QFC) [Selinger 2004]

• First-order functional quantum programming language

• Loop and recursion

• “Quantum data,Classical control”

• Data types: qbit, bit

• Written as a flow chart

10

new qbit q := 0

q ∗= H

measure q

q : qbit

q : qbit

q : qbitq : qbit

✓1 00 0

H

✓1 00 0

◆H†

=1

2

✓1 11 1

state (density matrix) for |0i

0 1

Example

Page 27: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

Selinger’s QPL• QPL (QFC) [Selinger 2004]

• First-order functional quantum programming language

• Loop and recursion

• “Quantum data,Classical control”

• Data types: qbit, bit

• Written as a flow chart

10

new qbit q := 0

q ∗= H

measure q

q : qbit

q : qbit

q : qbitq : qbit

✓1 00 0

P|0i1

2

✓1 11 1

◆P|0i

=1

2

✓1 00 0

H

✓1 00 0

◆H†

=1

2

✓1 11 1

state (density matrix) for |0i

with prob. 1/2|0i

0 1

Example

Page 28: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

Selinger’s QPL• QPL (QFC) [Selinger 2004]

• First-order functional quantum programming language

• Loop and recursion

• “Quantum data,Classical control”

• Data types: qbit, bit

• Written as a flow chart

10

new qbit q := 0

q ∗= H

measure q

q : qbit

q : qbit

q : qbitq : qbit

✓1 00 0

P|0i1

2

✓1 11 1

◆P|0i

=1

2

✓1 00 0

◆P|1i

1

2

✓1 11 1

◆P|1i

=1

2

✓0 00 1

H

✓1 00 0

◆H†

=1

2

✓1 11 1

state (density matrix) for |0i

with prob. 1/2|0i with prob. 1/2|1i

0 1

Example

Page 29: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

Semantics for QPL

11

q : qbit

q : qbit, p : qbitKJ

Page 30: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

Semantics for QPL

11

q : qbit

q : qbit, p : qbitKJ M2 �! M2 ⌦M2

⇠= M4:QO (in Schrödinger picture)

T (Cn) ⇠= Mnthe set of

n×n matrices

Page 31: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

Semantics for QPL

11

q : qbit

q : qbit, p : qbitKJ

Jq : qbit

q : qbit q : qbit

K= ??

q : qbit

q : qbit, b : bit

J K= ??Kraus’ “simple” QO is

not suitable for classical control/data

M2 �! M2 ⌦M2⇠= M4:

QO (in Schrödinger picture)

T (Cn) ⇠= Mnthe set of

n×n matrices

Page 32: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

Selinger’s QO

12

Selinger’s solution: generalise QOs into maps of type

E :kM

j=1

Mnj �!lM

i=1

Mmi

direct sum (of vector spaces)

Def.!A linear map is a QO !

it is CP and trace-nonincreasing.def()(in the Schrödinger pic.)

E :kM

j=1

Mnj �!lM

i=1

Mmi

Page 33: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

Selinger’s QO

12

Selinger’s solution: generalise QOs into maps of type

E :kM

j=1

Mnj �!lM

i=1

Mmi

direct sum (of vector spaces)

q : qbit

q : qbit q : qbitJ K : M2 �! M2 �M2

Def.!A linear map is a QO !

it is CP and trace-nonincreasing.def()(in the Schrödinger pic.)

E :kM

j=1

Mnj �!lM

i=1

Mmi

Page 34: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho 13

Def. The category is defined as follows. !Objects: for each sequence of natural numbers !

Arrows: Selinger’s QO

kM

j=1

Mnj

(n1, . . . , nk)

E :kM

j=1

Mnj �!lM

i=1

Mmi

Q

The category Q

Page 35: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

QCategorical Property of

14

is an SMC with finite coproducts such that distributes over :

(�, 0)

Q

⌦ (�, 0)

A⌦ (B � C) ⇠= (A⌦B)� (A⌦ C), A⌦ 0 ⇠= 0

(Q,⌦,C)

.

Page 36: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

QCategorical Property of

14

is an SMC with finite coproducts such that distributes over :

(�, 0)

Q

⌦ (�, 0)

A⌦ (B � C) ⇠= (A⌦B)� (A⌦ C), A⌦ 0 ⇠= 0

(Q,⌦,C)

.

tensor product

Page 37: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

QCategorical Property of

14

is an SMC with finite coproducts such that distributes over :

(�, 0)

Q

⌦ (�, 0)

A⌦ (B � C) ⇠= (A⌦B)� (A⌦ C), A⌦ 0 ⇠= 0

(Q,⌦,C)

.

tensor product

direct sum

Page 38: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

QCategorical Property of

14

is an SMC with finite coproducts such that distributes over :

(�, 0)

Q

!Cppo-enriched!Cppo-enriched

⌦ (�, 0)

A⌦ (B � C) ⇠= (A⌦B)� (A⌦ C), A⌦ 0 ⇠= 0

(Q,⌦,C)

.

tensor product

direct sum

Page 39: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

QCategorical Property of

14

is an SMC with finite coproducts such that distributes over :

(�, 0)

Q

!Cppo-enriched!Cppo-enriched

⌦ (�, 0)

A⌦ (B � C) ⇠= (A⌦B)� (A⌦ C), A⌦ 0 ⇠= 0

(Q,⌦,C)

.

the category of pointed ωcpos and ω-continuous mapstensor product

direct sum

Page 40: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

QCategorical Property of

14

is an SMC with finite coproducts such that distributes over :

(�, 0)

Q

!Cppo-enriched!Cppo-enriched

⌦ (�, 0)

A⌦ (B � C) ⇠= (A⌦B)� (A⌦ C), A⌦ 0 ⇠= 0

(Q,⌦,C)

.

the category of pointed ωcpos and ω-continuous maps

each is a pointed ωcpo and composition is ω-continuousQ(A,B)

tensor product

direct sum

Page 41: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

QCategorical Property of

14

is an SMC with finite coproducts such that distributes over :

(�, 0)

Q

!Cppo-enriched!Cppo-enriched

⌦ (�, 0)

A⌦ (B � C) ⇠= (A⌦B)� (A⌦ C), A⌦ 0 ⇠= 0

(Q,⌦,C)

.

JqbitK = M2

JbitK = C� C

Thm. With the interpretation of types

gives a semantics for QPL.Q

the category of pointed ωcpos and ω-continuous maps

each is a pointed ωcpo and composition is ω-continuousQ(A,B)

tensor product

direct sum

Page 42: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

QCategorical Property of

14

is an SMC with finite coproducts such that distributes over :

(�, 0)

Q

!Cppo-enriched!Cppo-enriched

⌦ (�, 0)

A⌦ (B � C) ⇠= (A⌦B)� (A⌦ C), A⌦ 0 ⇠= 0

(Q,⌦,C)

.

JqbitK = M2

JbitK = C� C

Thm. With the interpretation of types

gives a semantics for QPL.Q

the category of pointed ωcpos and ω-continuous maps

each is a pointed ωcpo and composition is ω-continuousQ(A,B)

tensor product

direct sum

for loop and recursion

Page 43: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho 15

is an SMC with finite coproducts such that distributes over :

(�, 0)!Cppo-enriched!Cppo-enriched

⌦ (�, 0)

A⌦ (B � C) ⇠= (A⌦B)� (A⌦ C), A⌦ 0 ⇠= 0 .

JqbitK 2 C

C (C,⌦, I)

An object

Some additional conditions…

f � ? = ?f ⌦? = ?

◆ : I � I ! JqbitKp : JqbitK ! I � I

p � ◆ = id

Sufficient condition to give a semantics for QPL

Thm. Such gives a semantics for QPL.C

(JbitK = I � I)

Page 44: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

Outline• Quantum Operation

• Selinger’s QPL

• Operator Algebras and Quantum Operation!

• Semantics for QPL by W*-algebras

• Future work and Conclusions

16

Page 45: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

Operator Algebras

17

Concrete!(*-subalgebra of )

Abstract!(Hilbert space-free)

norm-closed C*-algebra

weakly closed, unital = von Neumann algebra W*-algebra

B(H)

• First, von Neumann algebras are introduced by von Neumann, motivated by quantum theory

• In the context of quantum theory, operator algebras are seen as algebras of observables

• Algebraic quantum theory • Emphasis on operator algebras, rather than Hilbert spaces • Successful in quantum field theory, quantum statistical mechanics

Page 46: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

W*-algebra

18

Def. (Sakai’s characterisation) A W*-algebra is a C*-algebra that has a predual , i.e. .

M M⇤M ⇠= (M⇤)

Page 47: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

W*-algebra

18

Def. (Sakai’s characterisation) A W*-algebra is a C*-algebra that has a predual , i.e. .

M M⇤M ⇠= (M⇤)

Eg. is a W*-algebra for a Hilbert space B(H) ⇠= T (H)⇤ H

Page 48: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

W*-algebra

18

Def. (Sakai’s characterisation) A W*-algebra is a C*-algebra that has a predual , i.e. .

M M⇤M ⇠= (M⇤)

Eg. is a W*-algebra for a Hilbert space B(H) ⇠= T (H)⇤ H

Def. A map between W*-algebras is normal it is weak*-continuous.def()

Page 49: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

W*-algebra

18

Def. (Sakai’s characterisation) A W*-algebra is a C*-algebra that has a predual , i.e. .

M M⇤M ⇠= (M⇤)

Eg. is a W*-algebra for a Hilbert space B(H) ⇠= T (H)⇤ H

Def. A map between W*-algebras is normal it is weak*-continuous.def()

Eg. QO in the Heisenberg picture is (by def.) a normal CP pre-unital map betw. W*-alg.

E⇤ : B(H2) �! B(H1)

Page 50: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

Def. The category is defined as follows. Objects: W*-algebras Arrows: normal CP pre-unital maps

The category

19

WstarCP-PU

E⇤ : B(H2) �! B(H1)QO is an arrow in WstarCP-PU

WstarCP-PU

Page 51: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

Def. The category is defined as follows. Objects: W*-algebras Arrows: normal CP pre-unital maps

The category

19

WstarCP-PU

E⇤ : B(H2) �! B(H1)QO is an arrow in WstarCP-PU

QE :kM

j=1

Mnj �!lM

i=1

Mmi

E⇤ :lM

i=1

Mmi �!kM

j=1

Mnj

Selinger’s QO, i.e. arrow in

WstarCP-PUarrow in

Moreover, there is one-to-one correspondence:

WstarCP-PU

Page 52: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

Def. The category is defined as follows. Objects: W*-algebras Arrows: normal CP pre-unital maps

The category

19

WstarCP-PU

E⇤ : B(H2) �! B(H1)QO is an arrow in WstarCP-PU

This gives a full embedding Q �! (WstarCP-PU

)op

QE :kM

j=1

Mnj �!lM

i=1

Mmi

E⇤ :lM

i=1

Mmi �!kM

j=1

Mnj

Selinger’s QO, i.e. arrow in

WstarCP-PUarrow in

Moreover, there is one-to-one correspondence:

WstarCP-PU

Page 53: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

Various Quantum Operations

20

Kraus’ (simple) QO Selinger’s QO

E :kM

j=1

Mnj �!lM

i=1

MmiE⇤ : B(H2) �! B(H1)

E : T (H1) �! T (H2)

Page 54: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

Various Quantum Operations

20

Kraus’ (simple) QO Selinger’s QO

E :kM

j=1

Mnj �!lM

i=1

MmiE⇤ : B(H2) �! B(H1)

E : T (H1) �! T (H2)

normal CP pre-unital map between W*-algebrasf : M �! N WstarCP-PUin

Page 55: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

Various Quantum Operations

20

naturally arises as the category whose arrows are quantum operations (in the Heisenberg picture)WstarCP-PU

Kraus’ (simple) QO Selinger’s QO

E :kM

j=1

Mnj �!lM

i=1

MmiE⇤ : B(H2) �! B(H1)

E : T (H1) �! T (H2)

normal CP pre-unital map between W*-algebrasf : M �! N WstarCP-PUin

Page 56: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

Various Quantum Operations

20

naturally arises as the category whose arrows are quantum operations (in the Heisenberg picture)WstarCP-PU

Kraus’ (simple) QO Selinger’s QO

E :kM

j=1

Mnj �!lM

i=1

MmiE⇤ : B(H2) �! B(H1)

E : T (H1) �! T (H2)

normal CP pre-unital map between W*-algebrasf : M �! N WstarCP-PUin

The present work shows:WstarCP-PU is “nice” enough to give a sem. for QPL

Page 57: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

Outline• Quantum Operation

• Selinger’s QPL

• Operator Algebras and Quantum Operation

• Semantics for QPL by W*-algebras!

• Future work and Conclusions

21

Page 58: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho 22

Cho 15

is an SMC with finite coproducts such that distributes over :

(�, 0)!Cppo-enriched!Cppo-enriched

⌦ (�, 0)

A⌦ (B � C) ⇠= (A⌦B)� (A⌦ C), A⌦ 0 ⇠= 0 .

JqbitK 2 C

C (C,⌦, I)

An object

Some additional conditions…

f � ? = ?f ⌦? = ?

◆ : I � I ! JqbitKp : JqbitK ! I � I

p � ◆ = id

Sufficient condition to give a semantics for QPL

Thm. Such gives a semantics for QPL.C

(JbitK = I � I)

Page 59: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho 22

Goal: satisfies these conditions(WstarCP-PU

)op

Cho 15

is an SMC with finite coproducts such that distributes over :

(�, 0)!Cppo-enriched!Cppo-enriched

⌦ (�, 0)

A⌦ (B � C) ⇠= (A⌦B)� (A⌦ C), A⌦ 0 ⇠= 0 .

JqbitK 2 C

C (C,⌦, I)

An object

Some additional conditions…

f � ? = ?f ⌦? = ?

◆ : I � I ! JqbitKp : JqbitK ! I � I

p � ◆ = id

Sufficient condition to give a semantics for QPL

Thm. Such gives a semantics for QPL.C

(JbitK = I � I)

Page 60: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho 23

WstarCP-PUCategorical Property of

is an SMCwith finite products such that distributes over :

(�, 0)

(�, 0)

WstarCP-PU (WstarCP-PU,⌦,C)

M ⌦(N � L) ⇠= (M ⌦N)� (M ⌦L), M ⌦ 0 ⇠= 0

Page 61: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho 23

WstarCP-PUCategorical Property of

is an SMCwith finite products such that distributes over :

(�, 0)

(�, 0)

WstarCP-PU (WstarCP-PU,⌦,C)

M ⌦(N � L) ⇠= (M ⌦N)� (M ⌦L), M ⌦ 0 ⇠= 0

spatial W*-tensor product

Page 62: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho 23

WstarCP-PUCategorical Property of

is an SMCwith finite products such that distributes over :

(�, 0)

(�, 0)

WstarCP-PU (WstarCP-PU,⌦,C)

M ⌦(N � L) ⇠= (M ⌦N)� (M ⌦L), M ⌦ 0 ⇠= 0

spatial W*-tensor product

direct sum of W*-algebras

Page 63: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho 23

Main problem. is -enriched?WstarCP-PU !Cppo

WstarCP-PUCategorical Property of

is an SMCwith finite products such that distributes over :

(�, 0)

(�, 0)

WstarCP-PU (WstarCP-PU,⌦,C)

M ⌦(N � L) ⇠= (M ⌦N)� (M ⌦L), M ⌦ 0 ⇠= 0

spatial W*-tensor product

direct sum of W*-algebras

Page 64: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho 23

Main problem. is -enriched?WstarCP-PU !Cppo

Yes! In fact, is -enrichedWstarCP-PU Dcppo?

the category of pointed dcpos and strict Scott-continuous maps

WstarCP-PUCategorical Property of

is an SMCwith finite products such that distributes over :

(�, 0)

(�, 0)

WstarCP-PU (WstarCP-PU,⌦,C)

M ⌦(N � L) ⇠= (M ⌦N)� (M ⌦L), M ⌦ 0 ⇠= 0

spatial W*-tensor product

direct sum of W*-algebras

Page 65: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

Monotone closedness of W*-algebras

24

Thm. Every W*-algebra is monotone closed, i.e. every norm-bounded directed set of self-adjoint elements has a supremum (which is self-adjoint).

Page 66: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

Monotone closedness of W*-algebras

24

Thm. Every W*-algebra is monotone closed, i.e. every norm-bounded directed set of self-adjoint elements has a supremum (which is self-adjoint).

Conversely, a monotone closed C*-algebra that satisfies certain condition is a W*-algebra. (Kadison’s characterisation)

Page 67: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

Monotone closedness of W*-algebras

24

Thm. Every W*-algebra is monotone closed, i.e. every norm-bounded directed set of self-adjoint elements has a supremum (which is self-adjoint).

cf. A poset is directed complete every directed subset has a supremum.def()

Conversely, a monotone closed C*-algebra that satisfies certain condition is a W*-algebra. (Kadison’s characterisation)

Page 68: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

Monotone closedness of W*-algebras

24

Thm. Every W*-algebra is monotone closed, i.e. every norm-bounded directed set of self-adjoint elements has a supremum (which is self-adjoint).

cf. A poset is directed complete every directed subset has a supremum.def()

Prop. A C*-algebra is monotone closed is directed complete.()

A

[0, 1]A = {a 2 A | 0 a 1}the set of effects

Conversely, a monotone closed C*-algebra that satisfies certain condition is a W*-algebra. (Kadison’s characterisation)

Page 69: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

Monotone closedness of W*-algebras

24

Thm. Every W*-algebra is monotone closed, i.e. every norm-bounded directed set of self-adjoint elements has a supremum (which is self-adjoint).

cf. A poset is directed complete every directed subset has a supremum.def()

Prop. A C*-algebra is monotone closed is directed complete.()

A

[0, 1]A = {a 2 A | 0 a 1}the set of effects

For every W*-algebra , is a (pointed) dcpo. [0, 1]MM

Conversely, a monotone closed C*-algebra that satisfies certain condition is a W*-algebra. (Kadison’s characterisation)

Page 70: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho 25

Prop. positive pre-unital map betw. W*-alg. is normal (i.e. weak*-continuous) the restriction is Scott-continuous()

f : M ! Nf

f : [0, 1]M ! [0, 1]N

W*-algebras and Domain theory

Page 71: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho 25

Prop. positive pre-unital map betw. W*-alg. is normal (i.e. weak*-continuous) the restriction is Scott-continuous()

f : M ! Nf

f : [0, 1]M ! [0, 1]N

W*-algebras behave well domain-theoretically

W*-algebras and Domain theory

Page 72: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho 25

Prop. positive pre-unital map betw. W*-alg. is normal (i.e. weak*-continuous) the restriction is Scott-continuous()

f : M ! Nf

f : [0, 1]M ! [0, 1]N

Thm. : W*-algebras. is a pointed dcpo.

M,N

WstarCP-PU(M,N)

W*-algebras behave well domain-theoretically

Dcpo structure of W*-algebras “lifts” to hom-set with an ordering: is CPf v g

def() g � f

W*-algebras and Domain theory

Page 73: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho 26

Moreover, the composition of arrowsWstarCP-PU(N,L)⇥WstarCP-PU(M,N) ! WstarCP-PU(M,L)

(g, f) 7! g � fis strict Scott-continuous. Therefore:

Thm. is a -enriched category WstarCP-PU Dcppo?

Page 74: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho 26

Moreover, the composition of arrowsWstarCP-PU(N,L)⇥WstarCP-PU(M,N) ! WstarCP-PU(M,L)

(g, f) 7! g � fis strict Scott-continuous. Therefore:

Thm. is a -enriched category WstarCP-PU Dcppo?

We can also show:WstarCP-PU(M,N)⇥WstarCP-PU(M

0, N 0) ! WstarCP-PU(M ⌦M 0, N ⌦N 0)

(f, g) 7! f ⌦ g

WstarCP-PU(M,N)⇥WstarCP-PU(M,L) ! WstarCP-PU(M,N � L)

(f, g) 7! hf, giare strict Scott-continuous. Therefore:

Thm. is a -enriched SMC with -enriched finite products.

(WstarCP-PU,⌦,C)Dcppo?

Dcppo?

Page 75: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

satisfies all conditions of the following.

27

(WstarCP-PU

)op

Cho 15

is an SMC with finite coproducts such that distributes over :

(�, 0)!Cppo-enriched!Cppo-enriched

⌦ (�, 0)

A⌦ (B � C) ⇠= (A⌦B)� (A⌦ C), A⌦ 0 ⇠= 0 .

JqbitK 2 C

C (C,⌦, I)

An object

Some additional conditions…

f � ? = ?f ⌦? = ?

◆ : I � I ! JqbitKp : JqbitK ! I � I

p � ◆ = id

Sufficient condition to give a semantics for QPL

Thm. Such gives a semantics for QPL.C

(JbitK = I � I)

Page 76: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

satisfies all conditions of the following.

27

(WstarCP-PU

)op

Note. -enrichment implies -enrichment.Dcppo? !Cppo

Cho 15

is an SMC with finite coproducts such that distributes over :

(�, 0)!Cppo-enriched!Cppo-enriched

⌦ (�, 0)

A⌦ (B � C) ⇠= (A⌦B)� (A⌦ C), A⌦ 0 ⇠= 0 .

JqbitK 2 C

C (C,⌦, I)

An object

Some additional conditions…

f � ? = ?f ⌦? = ?

◆ : I � I ! JqbitKp : JqbitK ! I � I

p � ◆ = id

Sufficient condition to give a semantics for QPL

Thm. Such gives a semantics for QPL.C

(JbitK = I � I)

Page 77: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

satisfies all conditions of the following.

27

(WstarCP-PU

)op

Note. -enrichment implies -enrichment.Dcppo? !Cppo

(WstarCP-PU

)op gives a semantics for QPLCho 15

is an SMC with finite coproducts such that distributes over :

(�, 0)!Cppo-enriched!Cppo-enriched

⌦ (�, 0)

A⌦ (B � C) ⇠= (A⌦B)� (A⌦ C), A⌦ 0 ⇠= 0 .

JqbitK 2 C

C (C,⌦, I)

An object

Some additional conditions…

f � ? = ?f ⌦? = ?

◆ : I � I ! JqbitKp : JqbitK ! I � I

p � ◆ = id

Sufficient condition to give a semantics for QPL

Thm. Such gives a semantics for QPL.C

(JbitK = I � I)

Page 78: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

Comparison with Selinger’s original semantics

• Recall that there is a full embedding:

28

Q // (WstarCP-PU

)op

Page 79: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

Comparison with Selinger’s original semantics

• Recall that there is a full embedding:

28

Q // (WstarCP-PU

)op

in the Heisenberg picturein the Schrödinger picture

Page 80: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

Comparison with Selinger’s original semantics

• Recall that there is a full embedding:

28

Q // (WstarCP-PU

)op

(FdWstarCP-PU

)op

//

in the Heisenberg picturein the Schrödinger picture

the category of finite dimensional W*-algebras

Page 81: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

Comparison with Selinger’s original semantics

• Recall that there is a full embedding:

28

Q // (WstarCP-PU

)op

(FdWstarCP-PU

)op

//

in the Heisenberg picturein the Schrödinger picture

the category of finite dimensional W*-algebras

'

Page 82: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

Comparison with Selinger’s original semantics

• Recall that there is a full embedding:

28

Q // (WstarCP-PU

)op

(FdWstarCP-PU

)op

//

in the Heisenberg picturein the Schrödinger picture

can be seen as an infinite dimensional extension of(Wstar

CP-PU

)op

Q

the category of finite dimensional W*-algebras

'

Page 83: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

C* vs W*• The category of C*-algebras and CP

pre-unital maps does not work.

29

CstarCP-PU

Page 84: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

C* vs W*• The category of C*-algebras and CP

pre-unital maps does not work.

29

CstarCP-PU

CstarCP-PU Dcppo?!Cppo

• Because is neither -enriched nor -enriched.

Page 85: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

C* vs W*• The category of C*-algebras and CP

pre-unital maps does not work.

29

CstarCP-PU

CstarCP-PU Dcppo?!Cppo

• Because is neither -enriched nor -enriched.

W*-algebras are the appropriate setting

Page 86: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

C* vs W*• The category of C*-algebras and CP

pre-unital maps does not work.

29

CstarCP-PU

CstarCP-PU Dcppo?!Cppo

• Because is neither -enriched nor -enriched.

W*-algebras are the appropriate setting

(Note: )FdCstarCP-PU

= FdWstarCP-PU

' Qop

Page 87: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

QPL with infinite types

30

Example 1

Page 88: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

QPL with infinite types

30

JbitK = C� C

Example 1

Page 89: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

QPL with infinite types

30

JbitK = C� C

JtritK = C� C� C

Example 1

Page 90: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

QPL with infinite types

30

JbitK = C� C

JtritK = C� C� C

JnatK =M

n2NC

Example 1

Page 91: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

QPL with infinite types

30

2 WstarCP-PU

/2 Qbut

JbitK = C� C

JtritK = C� C� C

JnatK =M

n2NC

Example 1

Page 92: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

QPL with infinite types

30

2 WstarCP-PU

/2 Qbut

JbitK = C� C

JtritK = C� C� C

JnatK =M

n2NC

Example 1 Example 2

Page 93: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

QPL with infinite types

30

2 WstarCP-PU

/2 Qbut

JbitK = C� C

JtritK = C� C� C

JnatK =M

n2NC

JqbitK = M2⇠= B(C2)

Example 1 Example 2

Page 94: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

QPL with infinite types

30

2 WstarCP-PU

/2 Qbut

JbitK = C� C

JtritK = C� C� C

JnatK =M

n2NC

JqbitK = M2⇠= B(C2)

JqtritK = M3⇠= B(C3)

Example 1 Example 2

Page 95: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

QPL with infinite types

30

2 WstarCP-PU

/2 Qbut

JbitK = C� C

JtritK = C� C� C

JnatK =M

n2NC

JqbitK = M2⇠= B(C2)

JqtritK = M3⇠= B(C3)

where is countable dim.JqnatK = B(H)

H

Example 1 Example 2

Page 96: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

QPL with infinite types

30

2 WstarCP-PU

/2 Qbut

JbitK = C� C

JtritK = C� C� C

JnatK =M

n2NC

JqbitK = M2⇠= B(C2)

JqtritK = M3⇠= B(C3)

2 WstarCP-PU

/2 Qbut

where is countable dim.JqnatK = B(H)

H

Example 1 Example 2

Page 97: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

QPL with infinite types

31

2 WstarCP-PU

/2 Qbut

JbitK = C� C

JtritK = C� C� C

JnatK =M

n2NC

Example 1`

1(X) :=n

' : X ! C�

supx2X

|'(x)| < 1o

Page 98: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

QPL with infinite types

31

2 WstarCP-PU

/2 Qbut

JbitK = C� C

JtritK = C� C� C

JnatK =M

n2NC

Example 1

⇠= `1(2)

⇠= `1(3)

⇠= `1(N)

`

1(X) :=n

' : X ! C�

supx2X

|'(x)| < 1o

Page 99: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

Classical computation in commutative W*-algebras

32

`1 : Set �! (CWstarM-I-U

)op ✓ (WstarCP-PU

)opThere is an embedding

with `1(X ⇥ Y ) ⇠= `1(X)⌦ `1(Y )

Thm. the category of commutative W*-algebras

Page 100: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

Classical computation in commutative W*-algebras

32

`1 : Set �! (CWstarM-I-U

)op ✓ (WstarCP-PU

)opThere is an embedding

with `1(X ⇥ Y ) ⇠= `1(X)⌦ `1(Y )

Thm. the category of commutative W*-algebras

Classical (deterministic) computation in arises as a map between commutative W*-algebras

Set

Page 101: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

Outline• Quantum Operation

• Selinger’s QPL

• Operator Algebras and Quantum Operation

• Semantics for QPL by W*-algebras

• Future work and Conclusions

33

Page 102: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

Future work

34

• Semantics by operator algebras for higher-order quantum programming languages, or quantum lambda calculi

Page 103: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

Future work

34

• Semantics by operator algebras for higher-order quantum programming languages, or quantum lambda calculi

(WstarCP-PU

)opIs monoidal closed? Q.

Page 104: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

Future work

• Exploit the duality between commutative W*-algebras and measurable space

34

(CCstarM-I-U

)op ' CompHauscf. Gelfand duality

• Semantics by operator algebras for higher-order quantum programming languages, or quantum lambda calculi

(WstarCP-PU

)opIs monoidal closed? Q.

Page 105: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

Conclusions• Normal CP pre-unital maps between W*-algebras

generalise Kraus’ and Selinger’s QO • is a -enriched SMC with

-enriched finite products • “nice” enough to give a semantics for Selinger’s QPL

35

WstarCP-PU Dcppo?Dcppo?

Page 106: Semantics for a Quantum Programming Language by Operator ...group-mmm.org/qpl2014/slides/cho.pdf · Cho Overview • Semantics for a first-order functional quantum programming language

Cho

Conclusions• Normal CP pre-unital maps between W*-algebras

generalise Kraus’ and Selinger’s QO • is a -enriched SMC with

-enriched finite products • “nice” enough to give a semantics for Selinger’s QPL

35

WstarCP-PU Dcppo?Dcppo?

• W*-algebras give a flexible model for quantum computation • accommodate infinite dim. structures and

classical (= commutative) computation • The present work is the first step. A lot of things to do!

• cf. Mathys Rennela’s work (MFPS XXX, 2014)