Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Distribution monad D For a set X , define � support( ϕ ) is finite, and � � D ( X ) = { ϕ : X → [0 , 1] x ϕ ( x ) = 1 } Such ϕ ∈ D ( X ) is a formal convex combination: support( ϕ ) = { x 1 , . . . , x n } r 1 x 1 + · · · + r n x n where r i = ϕ ( x i ) > 0 r 1 + · · · + r n = 1 Coalgebras X → D ( X ) are Markov chains, giving probabilistic transitions: r i − → x i � x with i r i = 1 . Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 8 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Multiset monad M Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 9 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Multiset monad M The mulitset monad M over complex numbers is similar to, but simpler than, the distribution monad D . For a set X , now define Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 9 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Multiset monad M The mulitset monad M over complex numbers is similar to, but simpler than, the distribution monad D . For a set X , now define � support( ϕ ) is finite } � M ( X ) = { ϕ : X → C Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 9 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Multiset monad M The mulitset monad M over complex numbers is similar to, but simpler than, the distribution monad D . For a set X , now define � support( ϕ ) is finite } � M ( X ) = { ϕ : X → C Such ϕ ∈ M ( X ) is a formal linear combination: � support( ϕ ) = { x 1 , . . . , x n } z 1 x 1 + · · · + z n x n where z i = ϕ ( x i ) ∈ C Such formal linear combinations form the free vector space on X . Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 9 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Multiset monad M The mulitset monad M over complex numbers is similar to, but simpler than, the distribution monad D . For a set X , now define � support( ϕ ) is finite } � M ( X ) = { ϕ : X → C Such ϕ ∈ M ( X ) is a formal linear combination: � support( ϕ ) = { x 1 , . . . , x n } z 1 x 1 + · · · + z n x n where z i = ϕ ( x i ) ∈ C Such formal linear combinations form the free vector space on X . Coalgebras X → M ( X ) are like weighted automata, adding weights/resources in C as labels to transitions. Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 9 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Outline Introduction Walks illustrating computation types Non-deterministic walks Probabilistic walks Quantum walks Quantum walks, coalgebraically Matrix representation Reversible computation Turing Machines Conclusions Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 10 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Walk the walk Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 11 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Walk the walk Consider a line of integer points . . . , − 2 , − 1 , 0 , 1 , 2 , . . . ∈ Z . Different styles of walks, say of a drunkard, on this line will be described next: • non-deterministic • probabilistic • quantum Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 11 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Walk the walk Consider a line of integer points . . . , − 2 , − 1 , 0 , 1 , 2 , . . . ∈ Z . Different styles of walks, say of a drunkard, on this line will be described next: • non-deterministic • probabilistic • quantum All three computational styles can & will be represented coalgebraically. Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 11 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Non-deterministic walks: definition Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 12 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Non-deterministic walks: definition Coalgebraic represenation, of possible left-or-right stepping: s � P ( Z ) Z � { k − 1 , k + 1 } k � Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 12 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Non-deterministic walks: definition Coalgebraic represenation, of possible left-or-right stepping: s � P ( Z ) Z � { k − 1 , k + 1 } k � Iteration, starting in 0 ∈ Z , yields: 0 �→ {− 1 , 1 } Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 12 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Non-deterministic walks: definition Coalgebraic represenation, of possible left-or-right stepping: s � P ( Z ) Z � { k − 1 , k + 1 } k � Iteration, starting in 0 ∈ Z , yields: 0 �→ {− 1 , 1 } �→ {− 2 , 0 , 2 } Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 12 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Non-deterministic walks: definition Coalgebraic represenation, of possible left-or-right stepping: s � P ( Z ) Z � { k − 1 , k + 1 } k � Iteration, starting in 0 ∈ Z , yields: 0 �→ {− 1 , 1 } �→ {− 2 , 0 , 2 } �→ {− 3 , − 1 , 1 , 3 } Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 12 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Non-deterministic walks: definition Coalgebraic represenation, of possible left-or-right stepping: s � P ( Z ) Z � { k − 1 , k + 1 } k � Iteration, starting in 0 ∈ Z , yields: 0 �→ {− 1 , 1 } �→ {− 2 , 0 , 2 } �→ {− 3 , − 1 , 1 , 3 } · · · {− n , − n + 2 , · · · n − 2 , n } Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 12 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Non-deterministic walks: definition Coalgebraic represenation, of possible left-or-right stepping: s � P ( Z ) Z � { k − 1 , k + 1 } k � Iteration, starting in 0 ∈ Z , yields: · · · · · · -3 -2 -1 0 1 2 3 0 �→ {− 1 , 1 } • � � � � �→ {− 2 , 0 , 2 } • • � � � � � � � � �→ {− 3 , − 1 , 1 , 3 } • • • � � � � � � � � � � � � • • • • · · · {− n , − n + 2 , · · · n − 2 , n } � � � � � � � � � � � � � � � � • • • • • etc Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 12 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Non-deterministic walks: iteration Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 13 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Non-deterministic walks: iteration Formally, iteration is done via the Kleisli extension endomap: s # � P ( Z ) P ( Z ) U � � � k ∈ U { k − 1 , k + 1 } Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 13 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Non-deterministic walks: iteration Formally, iteration is done via the Kleisli extension endomap: s # � P ( Z ) P ( Z ) U � � � k ∈ U { k − 1 , k + 1 } The subset of successors of 0 ∈ Z , after n steps, is obtained as the n -th iterate: s # � n � ( { 0 } ) {− n , − n + 2 , · · · n − 2 , n } . = Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 13 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Non-deterministic walks: iteration Formally, iteration is done via the Kleisli extension endomap: s # � P ( Z ) P ( Z ) U � � � k ∈ U { k − 1 , k + 1 } The subset of successors of 0 ∈ Z , after n steps, is obtained as the n -th iterate: s # � n � ( { 0 } ) {− n , − n + 2 , · · · n − 2 , n } . = Aside : categorically, this can be described directly as iteration in the Kleisli category of the powerset monad P . Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 13 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Probabilistic walks: definition Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 14 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Probabilistic walks: definition Probabilistic left-or-right stepping, each with chance 1 2 is expressed via a formal convex sum / distribution, as: d � D ( Z ) Z � 1 2 ( k − 1) + 1 k � 2 ( k + 1) Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 14 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Probabilistic walks: definition Probabilistic left-or-right stepping, each with chance 1 2 is expressed via a formal convex sum / distribution, as: d � D ( Z ) Z � 1 2 ( k − 1) + 1 k � 2 ( k + 1) Iteration, starting in 0 ∈ Z , now yields: 0 �→ 1 2 (-1) + 1 2 (1) Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 14 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Probabilistic walks: definition Probabilistic left-or-right stepping, each with chance 1 2 is expressed via a formal convex sum / distribution, as: d � D ( Z ) Z � 1 2 ( k − 1) + 1 k � 2 ( k + 1) Iteration, starting in 0 ∈ Z , now yields: 0 �→ 1 2 (-1) + 1 2 (1) �→ 1 4 (-2) + 1 2 (0) + 1 4 (2) Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 14 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Probabilistic walks: definition Probabilistic left-or-right stepping, each with chance 1 2 is expressed via a formal convex sum / distribution, as: d � D ( Z ) Z � 1 2 ( k − 1) + 1 k � 2 ( k + 1) Iteration, starting in 0 ∈ Z , now yields: 0 �→ 1 2 (-1) + 1 2 (1) �→ 1 4 (-2) + 1 2 (0) + 1 4 (2) �→ 1 8 (-3) + 3 8 (-1) + 3 8 (1) + 1 8 (3) Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 14 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Probabilistic walks: definition Probabilistic left-or-right stepping, each with chance 1 2 is expressed via a formal convex sum / distribution, as: d � D ( Z ) Z � 1 2 ( k − 1) + 1 k � 2 ( k + 1) Iteration, starting in 0 ∈ Z , now yields: · · · · · · -3 -2 -1 0 1 2 3 1 � 0 �→ 1 2 (-1) + 1 � � 2 (1) � 1 1 2 � 2 � � � � � �→ 1 4 (-2) + 1 2 (0) + 1 � � 4 (2) 1 1 1 4 2 4 � � � � � � � � � � � � �→ 1 8 (-3) + 3 8 (-1) + 3 8 (1) + 1 1 3 3 1 8 (3) 8 � 8 � 8 � 8 � � � � � � � � � � � � � 1 1 5 1 1 16 4 8 4 16 etc Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 14 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Probabilistic walks: the general formula Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 15 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Probabilistic walks: the general formula This tree of probabilities involves Pascal’s triangle. Starting in k ∈ Z , after n iterations one obtains the formal convex sum: � n � n � n � n � n � � � � � 0 1 2 n − 1 n 2 n ( k − n )+ 2 n ( k − n +2)+ 2 n ( k − n +4)+ . . . + ( k + n − 2)+ 2 n ( k + n ) 2 n Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 15 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Probabilistic walks: the general formula This tree of probabilities involves Pascal’s triangle. Starting in k ∈ Z , after n iterations one obtains the formal convex sum: � n � n � n � n � n � � � � � 0 1 2 n − 1 n 2 n ( k − n )+ 2 n ( k − n +2)+ 2 n ( k − n +4)+ . . . + ( k + n − 2)+ 2 n ( k + n ) 2 n Using the sum formula for binomial coefficients: � n � n � n � n � n � � � � � 2 n . + + + · · · + + = 0 1 2 n − 1 n Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 15 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Probabilistic walks: iteration Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 16 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Probabilistic walks: iteration Again there is a Kleisli extension endomap d # : D ( Z ) → D ( Z ) � � r 1 k 1 + · · · + r n k n � � 1 2 r 1 ( k 1 − 1) + 1 2 r 1 ( k 1 + 1) + · · · + 1 2 r n ( k n − 1) + 1 �− → 2 r n ( k n + 1) Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 16 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Probabilistic walks: iteration Again there is a Kleisli extension endomap d # : D ( Z ) → D ( Z ) � � r 1 k 1 + · · · + r n k n � � 2 r 1 ( k 1 − 1) + 1 1 2 r 1 ( k 1 + 1) + · · · + 1 2 r n ( k n − 1) + 1 �− → 2 r n ( k n + 1) The subset of successors of 0 ∈ Z , after n steps, is obtained as the n -th iterate: � n � n � n � n � � � � d # � n � n − 1 0 1 n 2 n ( − n )+ 2 n ( − n +2)+ . . . + ( n − 2)+ (1 0) = 2 n ( n ) 2 n Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 16 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Probabilistic walks: iteration Again there is a Kleisli extension endomap d # : D ( Z ) → D ( Z ) � � r 1 k 1 + · · · + r n k n � � 2 r 1 ( k 1 − 1) + 1 1 2 r 1 ( k 1 + 1) + · · · + 1 2 r n ( k n − 1) + 1 �− → 2 r n ( k n + 1) The subset of successors of 0 ∈ Z , after n steps, is obtained as the n -th iterate: � n � n � n � n � � � � d # � n � n − 1 0 1 n 2 n ( − n )+ 2 n ( − n +2)+ . . . + ( n − 2)+ (1 0) = 2 n ( n ) 2 n It is iteration in the Kleisli category of the distribution monad D . Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 16 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Quantum walks Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 17 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Quantum walks Situation / plan • Quantum walks are standardly described as endomap S → S (see eg. work of Julia Kempe) Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 17 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Quantum walks Situation / plan • Quantum walks are standardly described as endomap S → S (see eg. work of Julia Kempe) • Here it will be shown that there is also an (equivalent) coalgebraic / monadic description. Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 17 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Quantum walks: endomap definition I Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 18 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Quantum walks: endomap definition I Two vector spaces • M ( Z ), the free vector space on Z (over C ), with base vectors written as: | k � ∈ M ( Z ), for k ∈ Z • C 2 , the one qubit space, with base vectors | ↑ � and | ↓ � (think of the direction of the walk) Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 18 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Quantum walks: endomap definition I Two vector spaces • M ( Z ), the free vector space on Z (over C ), with base vectors written as: | k � ∈ M ( Z ), for k ∈ Z • C 2 , the one qubit space, with base vectors | ↑ � and | ↓ � (think of the direction of the walk) � | ↑ � ⊗ | k � The state space is C 2 ⊗ M ( Z ), with basis | ↓ � ⊗ | k � Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 18 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Quantum walks: endomap definition II Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 19 / 42
� � Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Quantum walks: endomap definition II The relevant endomap is: q C 2 ⊗ M ( Z ) � C 2 ⊗ M ( Z ) 1 1 2 | ↑ � ⊗ | k − 1 � + 2 | ↓ � ⊗ | k + 1 � | ↑ � ⊗ | k � � √ √ 1 1 2 | ↑ � ⊗ | k − 1 � – 2 | ↓ � ⊗ | k + 1 � | ↓ � ⊗ | k � � √ √ Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 19 / 42
� � Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Quantum walks: endomap definition II The relevant endomap is: q C 2 ⊗ M ( Z ) � C 2 ⊗ M ( Z ) 1 1 2 | ↑ � ⊗ | k − 1 � + 2 | ↓ � ⊗ | k + 1 � | ↑ � ⊗ | k � � √ √ 1 1 2 | ↑ � ⊗ | k − 1 � – 2 | ↓ � ⊗ | k + 1 � | ↓ � ⊗ | k � � √ √ Implicitly, the Hadamard operator H : C 2 → C 2 is used: 1 1 1 H = √ 1 − 1 2 Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 19 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Quantum walks: iteration and probabilities I Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 20 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Quantum walks: iteration and probabilities I Obtaining probabilities in quantum walks • We are interested in the probability of reaching | k � after n steps. Starting from 0 — more precisely, from | ↑ � ⊗ | 0 � . Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 20 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Quantum walks: iteration and probabilities I Obtaining probabilities in quantum walks • We are interested in the probability of reaching | k � after n steps. Starting from 0 — more precisely, from | ↑ � ⊗ | 0 � . • We do so by n -times iterating the endomap q , and then measuring in the basis | k � . Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 20 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Quantum walks: iteration and probabilities I Obtaining probabilities in quantum walks • We are interested in the probability of reaching | k � after n steps. Starting from 0 — more precisely, from | ↑ � ⊗ | 0 � . • We do so by n -times iterating the endomap q , and then measuring in the basis | k � . • The sum of norms | α i | 2 of amplitudes α i for | k � then gives the probability. Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 20 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Quantum walks: iteration and probabilities II Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 21 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Quantum walks: iteration and probabilities II 1 1 | ↑ � ⊗ | 0 � �→ 2 | ↑ � ⊗ | -1 � + 2 | ↓ � ⊗ | 1 � √ √ Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 21 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Quantum walks: iteration and probabilities II 1 1 | ↑ � ⊗ | 0 � �→ 2 | ↑ � ⊗ | -1 � + 2 | ↓ � ⊗ | 1 � √ √ 2 | 2 = 1 | 1 | -1 � √ 2 probabilities 2 | 2 = 1 | 1 | 1 � √ 2 Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 21 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Quantum walks: iteration and probabilities II 1 1 | ↑ � ⊗ | 0 � �→ 2 | ↑ � ⊗ | -1 � + 2 | ↓ � ⊗ | 1 � √ √ 2 | 2 = 1 | 1 | -1 � √ 2 probabilities 2 | 2 = 1 | 1 | 1 � √ 2 1 2 | ↑ � ⊗ | -2 � + 1 2 | ↓ � ⊗ | 0 � �→ 1 2 | ↑ � ⊗ | 0 � − 1 2 | ↓ � ⊗ | 2 � + Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 21 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Quantum walks: iteration and probabilities II 1 1 | ↑ � ⊗ | 0 � �→ 2 | ↑ � ⊗ | -1 � + 2 | ↓ � ⊗ | 1 � √ √ 2 | 2 = 1 | 1 | -1 � √ 2 probabilities 2 | 2 = 1 | 1 | 1 � √ 2 2 | ↑ � ⊗ | -2 � + 1 1 2 | ↓ � ⊗ | 0 � �→ 1 2 | ↑ � ⊗ | 0 � − 1 2 | ↓ � ⊗ | 2 � + 2 | 2 = 1 | 1 | -2 � 4 2 | 2 + | 1 2 | 2 = 1 | 1 probabilities | 0 � 2 2 | 2 = 1 | − 1 | 2 � 4 Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 21 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Quantum walks: iteration and probabilities II 1 1 | ↑ � ⊗ | 0 � �→ 2 | ↑ � ⊗ | -1 � + 2 | ↓ � ⊗ | 1 � √ √ 2 | 2 = 1 | 1 | -1 � √ 2 probabilities 2 | 2 = 1 | 1 | 1 � √ 2 2 | ↑ � ⊗ | -2 � + 1 1 2 | ↓ � ⊗ | 0 � �→ 1 2 | ↑ � ⊗ | 0 � − 1 2 | ↓ � ⊗ | 2 � + 2 | 2 = 1 | 1 | -2 � 4 2 | 2 + | 1 2 | 2 = 1 | 1 probabilities | 0 � 2 2 | 2 = 1 | − 1 | 2 � 4 �→ · · · (next page) Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 21 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Quantum walks: iteration and probabilities II Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 22 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Quantum walks: iteration and probabilities II 1 1 1 2 | ↑ � ⊗ | -3 � + 2 | ↓ � ⊗ | -1 � + 2 | ↑ � ⊗ | -1 � · · · �→ √ √ √ 2 2 2 1 1 1 − 2 | ↓ � ⊗ | 1 � + 2 | ↑ � ⊗ | -1 � + 2 | ↓ � ⊗ | 1 � √ √ √ 2 2 2 1 1 2 | ↑ � ⊗ | 1 � + 2 | ↓ � ⊗ | 3 � − √ √ 2 2 Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 22 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Quantum walks: iteration and probabilities II 1 1 1 2 | ↑ � ⊗ | -3 � + 2 | ↓ � ⊗ | -1 � + 2 | ↑ � ⊗ | -1 � · · · �→ √ √ √ 2 2 2 1 1 1 − 2 | ↓ � ⊗ | 1 � + 2 | ↑ � ⊗ | -1 � + 2 | ↓ � ⊗ | 1 � √ √ √ 2 2 2 1 1 2 | ↑ � ⊗ | 1 � + 2 | ↓ � ⊗ | 3 � − √ √ 2 2 1 1 1 2 | ↑ � ⊗ | -3 � + 2 | ↑ � ⊗ | -1 � + 2 | ↓ � ⊗ | -1 � = √ √ √ 2 2 1 1 − 2 | ↑ � ⊗ | 1 � + 2 | ↓ � ⊗ | 3 � √ √ 2 2 Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 22 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Quantum walks: iteration and probabilities II 1 1 1 2 | ↑ � ⊗ | -3 � + 2 | ↓ � ⊗ | -1 � + 2 | ↑ � ⊗ | -1 � · · · �→ √ √ √ 2 2 2 1 1 1 − 2 | ↓ � ⊗ | 1 � + 2 | ↑ � ⊗ | -1 � + 2 | ↓ � ⊗ | 1 � √ √ √ 2 2 2 1 1 2 | ↑ � ⊗ | 1 � + 2 | ↓ � ⊗ | 3 � − √ √ 2 2 1 1 1 2 | ↑ � ⊗ | -3 � + 2 | ↑ � ⊗ | -1 � + 2 | ↓ � ⊗ | -1 � = √ √ √ 2 2 1 1 − 2 | ↑ � ⊗ | 1 � + 2 | ↓ � ⊗ | 3 � √ √ 2 2 2 | 2 = 1 1 | -3 � | √ 8 2 2 | 2 + | 2 | 2 = 5 | 1 1 | -1 � √ √ 8 2 probabilities 2 | 2 = 1 1 | 1 � | − √ 8 2 2 | 2 = 1 1 | 3 � | √ 8 2 Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 22 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Quantum walks: iteration and probabilities II 1 1 1 2 | ↑ � ⊗ | -3 � + 2 | ↓ � ⊗ | -1 � + 2 | ↑ � ⊗ | -1 � · · · �→ √ √ √ 2 2 2 1 1 1 − 2 | ↓ � ⊗ | 1 � + 2 | ↑ � ⊗ | -1 � + 2 | ↓ � ⊗ | 1 � √ √ √ 2 2 2 1 1 2 | ↑ � ⊗ | 1 � + 2 | ↓ � ⊗ | 3 � − √ √ 2 2 1 1 1 2 | ↑ � ⊗ | -3 � + 2 | ↑ � ⊗ | -1 � + 2 | ↓ � ⊗ | -1 � = √ √ √ 2 2 1 1 − 2 | ↑ � ⊗ | 1 � + 2 | ↓ � ⊗ | 3 � √ √ 2 2 2 | 2 = 1 1 | -3 � | √ 8 2 2 | 2 + | 2 | 2 = 5 | 1 1 | -1 � √ √ 8 2 probabilities 2 | 2 = 1 1 | 1 � | − √ 8 2 2 | 2 = 1 1 | 3 � | √ 8 2 There is “drift to the left” due to interference. Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 22 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Quantum walks: iteration and probabilities III Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 23 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Quantum walks: iteration and probabilities III The resulting tree of quantum walk probabilities starts as: · · · · · · -3 -2 -1 0 1 2 3 1 � � � � 1 1 2 2 � � � � � � � � 1 1 1 4 2 4 � � � � � � � � � � � � 1 5 1 1 8 8 8 8 � � � � � � � � � � � � � � � � 1 5 1 1 1 16 8 8 8 16 The matrix involved — Hadamard’s H in this case — determines the drifting, and thus how the tree is traversed. This may yield optimisations in data processing. Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 23 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Basic isomorphism Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 24 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Basic isomorphism LEMMA C 2 ⊗ M ( X ) ∼ = M ( X + X ) where + is disjoint union Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 24 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Basic isomorphism LEMMA C 2 ⊗ M ( X ) ∼ = M ( X + X ) where + is disjoint union Proof By the following chain of isomorphisms: C 2 ⊗ M ( X ) = ( C ⊕ C ) ⊗ M ( X ) Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 24 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Basic isomorphism LEMMA C 2 ⊗ M ( X ) ∼ = M ( X + X ) where + is disjoint union Proof By the following chain of isomorphisms: C 2 ⊗ M ( X ) = ( C ⊕ C ) ⊗ M ( X ) ∼ = C ⊗ M ( X ) ⊕ C ⊗ M ( X ) by distributivity Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 24 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Basic isomorphism LEMMA C 2 ⊗ M ( X ) ∼ = M ( X + X ) where + is disjoint union Proof By the following chain of isomorphisms: C 2 ⊗ M ( X ) = ( C ⊕ C ) ⊗ M ( X ) ∼ = C ⊗ M ( X ) ⊕ C ⊗ M ( X ) by distributivity ∼ M ( X ) ⊕ M ( X ) = since C is tensor unit Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 24 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Basic isomorphism LEMMA C 2 ⊗ M ( X ) ∼ = M ( X + X ) where + is disjoint union Proof By the following chain of isomorphisms: C 2 ⊗ M ( X ) = ( C ⊕ C ) ⊗ M ( X ) ∼ = C ⊗ M ( X ) ⊕ C ⊗ M ( X ) by distributivity ∼ M ( X ) ⊕ M ( X ) = since C is tensor unit ∼ M ( X + X ) = ⊕ is also coproduct of spaces, and M is a free functor. Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 24 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Quantum endomorphism as coalgebra Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 25 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Quantum endomorphism as coalgebra THEOREM Linear maps (in Vect C ) C 2 ⊗ M ( Z ) − → C 2 ⊗ M ( Z ) correspond bijectively to functions (in Sets ) → M ( Z + Z ) 2 Z − . that is, to coalgebras with state space Z of the functor M (2 · − ) 2 . Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 25 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Quantum endomorphism as coalgebra THEOREM Linear maps (in Vect C ) C 2 ⊗ M ( Z ) − → C 2 ⊗ M ( Z ) correspond bijectively to functions (in Sets ) → M ( Z + Z ) 2 Z − . that is, to coalgebras with state space Z of the functor M (2 · − ) 2 . Proof C 2 ⊗ M ( Z ) − → C 2 ⊗ M ( Z ) linear = = = = = = = = = = = = = = = = = = = = = = M ( Z + Z ) − → M ( Z + Z ) linear Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 25 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Quantum endomorphism as coalgebra THEOREM Linear maps (in Vect C ) C 2 ⊗ M ( Z ) − → C 2 ⊗ M ( Z ) correspond bijectively to functions (in Sets ) → M ( Z + Z ) 2 Z − . that is, to coalgebras with state space Z of the functor M (2 · − ) 2 . Proof C 2 ⊗ M ( Z ) − → C 2 ⊗ M ( Z ) linear = = = = = = = = = = = = = = = = = = = = = = M ( Z + Z ) − → M ( Z + Z ) linear = = = = = = = = = = = = = = = = = = = = Z + Z − → M ( Z + Z ) Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 25 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Quantum endomorphism as coalgebra THEOREM Linear maps (in Vect C ) C 2 ⊗ M ( Z ) − → C 2 ⊗ M ( Z ) correspond bijectively to functions (in Sets ) → M ( Z + Z ) 2 Z − . that is, to coalgebras with state space Z of the functor M (2 · − ) 2 . Proof C 2 ⊗ M ( Z ) − → C 2 ⊗ M ( Z ) linear = = = = = = = = = = = = = = = = = = = = = = M ( Z + Z ) − → M ( Z + Z ) linear = = = = = = = = = = = = = = = = = = = = Z + Z − → M ( Z + Z ) = = = = = = = = = = = = = = = = = → M ( Z + Z ) 2 Z − Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 25 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Qubit action is monadic! Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 26 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Qubit action is monadic! In the background, there is a new monad transformer result. Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 26 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Qubit action is monadic! In the background, there is a new monad transformer result. LEMMA If T is a monad, then so is X �→ T ( n · X ) n , for each n ∈ N Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 26 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Qubit action is monadic! In the background, there is a new monad transformer result. LEMMA If T is a monad, then so is X �→ T ( n · X ) n , for each n ∈ N For quantum walks we use T = M and n = 2. Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 26 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Outline Introduction Walks illustrating computation types Non-deterministic walks Probabilistic walks Quantum walks Quantum walks, coalgebraically Matrix representation Reversible computation Turing Machines Conclusions Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 27 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Three representations of quantum walks Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 28 / 42
Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Three representations of quantum walks 1 Endomaps C 2 ⊗ M ( Z ) − → C 2 ⊗ M ( Z ) Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 28 / 42
� � Introduction Walks illustrating computation types Matrix representation Reversible computation Radboud University Nijmegen Turing Machines Conclusions Three representations of quantum walks 1 Endomaps C 2 ⊗ M ( Z ) − → C 2 ⊗ M ( Z ) 1 1 2 | ↑ � ⊗ | k − 1 � + 2 | ↓ � ⊗ | k + 1 � | ↑ � ⊗ | k � � √ √ 1 1 2 | ↑ � ⊗ | k − 1 � − 2 | ↓ � ⊗ | k + 1 � | ↓ � ⊗ | k � � √ √ Bart Jacobs 30/10/10, Oxford Coalgebraic Walks 28 / 42
Recommend
More recommend