J · K \ Abstract Semantics q0 := | 1 i ; q1 := | 0 i ; | 100 i q2 := | 0 i ; H q2; T q1; H q0; q0 q1 q2 T q2; CX q1, q2; q0 Z CX q2, q0; CX q0, q1; q1 Z q2 Z
J · K \ Abstract Semantics q0 := | 1 i ; q1 := | 0 i ; | 10+ i q2 := | 0 i ; H q2; T q1; H q0; q0 q1 q2 T q2; CX q1, q2; q0 Z CX q2, q0; CX q0, q1; q1 Z q2 X
J · K \ Abstract Semantics q0 := | 1 i ; q1 := | 0 i ; | 10+ i q2 := | 0 i ; H q2; T q1; H q0; q0 q1 q2 T q2; CX q1, q2; q0 Z CX q2, q0; CX q0, q1; q1 Z q2 X
J · K \ Abstract Semantics q0 := | 1 i ; q1 := | 0 i ; | � 0+ i q2 := | 0 i ; H q2; T q1; H q0; q0 q1 q2 T q2; CX q1, q2; q0 X CX q2, q0; CX q0, q1; q1 Z q2 X
J · K \ Abstract Semantics q0 := | 1 i ; q1 := | 0 i ; 1 2 | � 0 i ( | 0 i + e i π 4 | 1 i ) p q2 := | 0 i ; H q2; T q1; H q0; q0 q1 q2 T q2; CX q1, q2; q0 X CX q2, q0; CX q0, q1; q1 Z q2 >
J · K \ Abstract Semantics q0 := | 1 i ; q1 := | 0 i ; 1 2 | � 0 i ( | 0 i + e i π 4 | 1 i ) p q2 := | 0 i ; H q2; T q1; H q0; q0 q1 q2 T q2; CX q1, q2; q0 X CX q2, q0; CX q0, q1; q1 Z q2 >
J · K \ Abstract Semantics q0 := | 1 i ; q1 := | 0 i ; 1 2 | � 0 i ( | 0 i � e i π 4 | 1 i ) p q2 := | 0 i ; H q2; T q1; H q0; q0 q1 q2 T q2; CX q1, q2; q0 X CX q2, q0; CX q0, q1; q1 Z q2 >
J · K \ Abstract Semantics q0 := | 1 i ; q1 := | 0 i ; 1 2( | 00 i � | 11 i )( | 0 i � e i π 4 | 1 i ) q2 := | 0 i ; H q2; T q1; H q0; q0 q1 q2 T q2; CX q1, q2; q0 > CX q2, q0; CX q0, q1; q1 > q2 >
Soundness [Perdrix08] ∀ ρ : quantum state ∀ ( π , b ) ∈ A Q ∀ C : program ( π , b ) ✏ ρ ⇒ J C K \ ( π , b ) ✏ J C K ( ρ )
Soundness [Perdrix08] ∀ ρ : quantum state ∀ ( π , b ) ∈ A Q ∀ C : program ( π , b ) ✏ ρ ⇒ J C K \ ( π , b ) ✏ J C K ( ρ ) valid approximation valid approximation
J · K \ Abstract Semantics q0 := | 1 i ; q1 := | 0 i ; 1 2( | 00 i � | 11 i )( | 0 i � e i π 4 | 1 i ) q2 := | 0 i ; H q2; T q1; H q0; q0 q1 q2 T q2; CX q1, q2; q0 > CX q2, q0; CX q0, q1; q1 > q2 >
J · K \ Abstract Semantics q0 := | 1 i ; q1 := | 0 i ; 1 2( | 00 i � | 11 i )( | 0 i � e i π 4 | 1 i ) q2 := | 0 i ; H q2; T q1; H q0; q0 q1 q2 T q2; CX q1, q2; q0 > CX q2, q0; CX q0, q1; q1 > CX q1, q0; q2 > CX q1, q2;
Previous work • Measured qubit is separated from the others [Perdrix07] • Multi-qubit gate may entangle qubits [Perdrix07] • Restriction to CX gate [Perdrix08][Prost&Zerrari09] • C-qubit / preserves separability [Perdrix08][Prost&Zerrari09] | 0 i | 1 i • T-qubit preserves separability [Perdrix08] |± i • Type system, Abstract interpretation, Hoare-like logic [Perdrix07] [Perdrix08] [Prost&Zerrari09]
J · K \ Abstract Semantics q0 := | 1 i ; q1 := | 0 i ; 1 2( | 00 i � | 11 i )( | 0 i � e i π 4 | 1 i ) q2 := | 0 i ; H q2; T q1; H q0; q0 q1 q2 T q2; CX q1, q2; q0 > CX q2, q0; CX q0, q1; q1 > CX q1, q0; q2 > CX q1, q2;
J · K \ Abstract Semantics q0 := | 1 i ; q1 := | 0 i ; 1 2 | 0 �i ( | 0 i � e i π 4 | 1 i ) p q2 := | 0 i ; H q2; T q1; H q0; q0 q1 q2 T q2; CX q1, q2; q0 > CX q2, q0; CX q0, q1; q1 > CX q1, q0; q2 > CX q1, q2;
J · K \ Abstract Semantics q0 := | 1 i ; 1 q1 := | 0 i ; 2 | 0 i ( | 00 i � e i π 4 | 01 i q2 := | 0 i ; + e i π 4 | 10 i � | 11 i ) H q2; T q1; H q0; q0 q1 q2 T q2; CX q1, q2; q0 > CX q2, q0; CX q0, q1; q1 > CX q1, q0; q2 > CX q1, q2;
Previous work • Measured qubit is separated from the others [Perdrix07] • Multi-qubit gate may entangle qubits [Perdrix07] • Restriction to CX gate [Perdrix08][Prost&Zerrari09] • C-qubit / preserves separability [Perdrix08][Prost&Zerrari09] | 0 i | 1 i • T-qubit preserves separability [Perdrix08] |± i • Type system, Abstract interpretation, Hoare-like logic [Perdrix07] [Perdrix08] [Prost&Zerrari09]
Previous work • Measured qubit is separated from the others [Perdrix07] • Multi-qubit gate may entangle qubits [Perdrix07] disentangle • Restriction to CX gate [Perdrix08][Prost&Zerrari09] • C-qubit / preserves separability [Perdrix08][Prost&Zerrari09] | 0 i | 1 i • T-qubit preserves separability [Perdrix08] |± i • Type system, Abstract interpretation, Hoare-like logic [Perdrix07] [Perdrix08] [Prost&Zerrari09]
J · K \ Abstract Semantics q0 := | + i ; ρ q1 := | 0 i ; q2 := | 0 i ; CX q0, q1; q0 q1 q2 CX q1, q2; q0 − q1 − q2 −
J · K \ Abstract Semantics q0 := | + i ; | +00 i q1 := | 0 i ; q2 := | 0 i ; CX q0, q1; q0 q1 q2 CX q1, q2; q0 X q1 Z q2 Z
J · K \ Abstract Semantics 1 q0 := | + i ; p 2( | 00 i + | 11 i ) | 0 i q1 := | 0 i ; q2 := | 0 i ; CX q0, q1; q0 q1 q2 CX q1, q2; q0 > q1 > q2 Z
J · K \ Abstract Semantics 1 q0 := | + i ; p 2( | 000 i + | 111 i ) q1 := | 0 i ; q2 := | 0 i ; CX q0, q1; q0 q1 q2 CX q1, q2; q0 > q1 > q2 >
J · K \ Abstract Semantics 1 q0 := | + i ; p 2( | 000 i + | 111 i ) q1 := | 0 i ; q2 := | 0 i ; CX q0, q1; q0 q1 q2 CX q1, q2; meas q0; q0 > q1 > q2 >
Previous work • Measured qubit is separated from the others [Perdrix07] • Multi-qubit gate may entangle qubits [Perdrix07] • Restriction to CX gate [Perdrix08][Prost&Zerrari09] • C-qubit / preserves separability [Perdrix08][Prost&Zerrari09] | 0 i | 1 i • T-qubit preserves separability [Perdrix08] |± i • Type system, Abstract interpretation, Hoare-like logic [Perdrix07] [Perdrix08] [Prost&Zerrari09]
J · K \ Abstract Semantics 1 q0 := | + i ; p 2( | 000 i + | 111 i ) q1 := | 0 i ; q2 := | 0 i ; CX q0, q1; q0 q1 q2 CX q1, q2; meas q0; q0 > q1 > q2 >
J · K \ Abstract Semantics 1 q0 := | + i ; 2( | 000 i h 000 | + | 111 i h 111 | ) q1 := | 0 i ; q2 := | 0 i ; CX q0, q1; q0 q1 q2 CX q1, q2; meas q0; q0 Z q1 > q2 >
Previous work • Measured qubit is separated from the others [Perdrix07] • Multi-qubit gate may entangle qubits [Perdrix07] • Restriction to CX gate [Perdrix08][Prost&Zerrari09] • C-qubit / preserves separability [Perdrix08][Prost&Zerrari09] | 0 i | 1 i • T-qubit preserves separability [Perdrix08] |± i • Type system, Abstract interpretation, Hoare-like logic [Perdrix07] [Perdrix08] [Prost&Zerrari09]
Previous work • Measured qubit is separated from the others [Perdrix07] Measurement may affect unmeasured qubits • Multi-qubit gate may entangle qubits [Perdrix07] • Restriction to CX gate [Perdrix08][Prost&Zerrari09] • C-qubit / preserves separability [Perdrix08][Prost&Zerrari09] | 0 i | 1 i • T-qubit preserves separability [Perdrix08] |± i • Type system, Abstract interpretation, Hoare-like logic [Perdrix07] [Perdrix08] [Prost&Zerrari09]
Observation • Multi-qubit gate may undo entangled qubits • Measurement may destroy multipartite entanglement
Observation • Multi-qubit gate may undo entangled qubits • Measurement may destroy multipartite entanglement • Information about entangled qubits is needed • Semantics should be easily computable
Observation • Multi-qubit gate may undo entangled qubits • Measurement may destroy multipartite entanglement • Information about entangled qubits is needed • Semantics should be easily computable Stabilizer Formalism
Stabilizer Formalism standard stabilizer { P | P : Pauli matrix | ψ i = α 0 ··· 00 | 0 · · · 00 i s.t. P | ψ i = | ψ i } + · · · + α 1 ··· 11 | 1 · · · 11 i e.g. { III , XXX , − ZZI , − IZZ , 1 p 2( | 010 i + | 101 i ) ZIZ , YYX , − YXY , XYY }
Stabilizer Formalism standard stabilizer { P | P : Pauli matrix | ψ i = α 0 ··· 00 | 0 · · · 00 i s.t. P | ψ i = | ψ i } + · · · + α 1 ··· 11 | 1 · · · 11 i e.g. { III , XXX , − ZZI , − IZZ , 1 p 2( | 010 i + | 101 i ) ZIZ , YYX , − YXY , XYY } X X X + Z Z I − Z I Z +
Stabilizer Formalism standard stabilizer { P | P : Pauli matrix | ψ i = α 0 ··· 00 | 0 · · · 00 i s.t. P | ψ i = | ψ i } + · · · + α 1 ··· 11 | 1 · · · 11 i e.g. { III , XXX , − ZZI , − IZZ , 1 p 2( | 010 i + | 101 i ) ZIZ , YYX , − YXY , XYY } X X X + Z Z I − Z I Z +
Stabilizer Formalism standard stabilizer { P | P : Pauli matrix | ψ i = α 0 ··· 00 | 0 · · · 00 i s.t. P | ψ i = | ψ i } + · · · + α 1 ··· 11 | 1 · · · 11 i e.g. { III , XXX , − ZZI , − IZZ , 1 p 2( | 010 i + | 101 i ) ZIZ , YYX , − YXY , XYY } X X X + X | ψ a i h ψ a | ⌦ ρ a ρ = Z Z I − a Z I Z +
Stabilizer Formalism standard stabilizer { P | P : Pauli matrix | ψ i = α 0 ··· 00 | 0 · · · 00 i s.t. P | ψ i = | ψ i } + · · · + α 1 ··· 11 | 1 · · · 11 i e.g. { III , XXX , − ZZI , − IZZ , 1 p 2( | 010 i + | 101 i ) ZIZ , YYX , − YXY , XYY } h GHZ | σ 0 ρ = p 0 | GHZ i X X X + Z Z I h GHZ | (IIX) σ 1 + p 1 (IIX) | GHZ i − Z I Z + + · · ·
Our Abstract Domain C Q Partition with stabilizers
Our Abstract Domain C Q Partition with stabilizers q0 q1 q2
Our Abstract Domain C Q Partition with stabilizers q0 q1 q2 X � [Z] X Z Z
Our Abstract Domain C Q Partition with stabilizers q0 q1 q2 X � X ⌅ Z Z
Our Abstract Domain C Q Partition with stabilizers q0 q1 q2 X � X ⌅ Z Z may be a non-stabilizer state
Our Abstract Domain C Q Partition with stabilizers q0 q1 q2 X � X ⌅ Z Z
Our Abstract Domain C Q Partition with stabilizers q0 q1 q2 ⌅ ⌅
Our Abstract Domain C Q Partition with stabilizers q0 q1 q2 ⌅ ⌅ J C K C : C Q → C Q
Abstract Semantics J · K C q0 := | 1 i ; q1 := | 0 i ; | 100 i q2 := | 0 i ; H q2; T q1; H q0; q0 q1 q2 T q2; CX q1, q2; CX q2, q0; [Z] [Z] [Z] CX q0, q1; CX q1, q0; CX q1, q2;
Abstract Semantics J · K C q0 := | 1 i ; q1 := | 0 i ; | 10+ i q2 := | 0 i ; H q2; T q1; H q0; q0 q1 q2 T q2; CX q1, q2; CX q2, q0; [Z] [Z] [X] CX q0, q1; CX q1, q0; CX q1, q2;
Abstract Semantics J · K C q0 := | 1 i ; q1 := | 0 i ; | 10+ i q2 := | 0 i ; H q2; T q1; H q0; q0 q1 q2 T q2; CX q1, q2; CX q2, q0; [Z] [Z] [X] CX q0, q1; CX q1, q0; CX q1, q2;
Abstract Semantics J · K C q0 := | 1 i ; q1 := | 0 i ; | � 0+ i q2 := | 0 i ; H q2; T q1; H q0; q0 q1 q2 T q2; CX q1, q2; CX q2, q0; [X] [Z] [X] CX q0, q1; CX q1, q0; CX q1, q2;
Abstract Semantics J · K C q0 := | 1 i ; q1 := | 0 i ; 1 2 | � 0 i ( | 0 i + e i π 4 | 1 i ) p q2 := | 0 i ; H q2; T q1; H q0; q0 q1 q2 T q2; CX q1, q2; CX q2, q0; [X] [Z] ⌅ CX q0, q1; CX q1, q0; CX q1, q2;
Abstract Semantics J · K C q0 := | 1 i ; q1 := | 0 i ; 1 2 | � 0 i ( | 0 i + e i π 4 | 1 i ) p q2 := | 0 i ; H q2; T q1; H q0; q0 q1 q2 T q2; CX q1, q2; CX q2, q0; [X] [Z] ⌅ CX q0, q1; CX q1, q0; CX q1, q2;
Abstract Semantics J · K C q0 := | 1 i ; q1 := | 0 i ; 1 2 | � 0 i ( | 0 i � e i π 4 | 1 i ) p q2 := | 0 i ; H q2; T q1; H q0; q0 q1 q2 T q2; CX q1, q2; CX q2, q0; [X] [Z] ⌅ CX q0, q1; CX q1, q0; CX q1, q2;
Abstract Semantics J · K C q0 := | 1 i ; q1 := | 0 i ; 1 2( | 00 i � | 11 i )( | 0 i � e i π 4 | 1 i ) q2 := | 0 i ; H q2; T q1; H q0; q0 q1 q2 T q2; CX q1, q2; X CX q2, q0; � X ⌅ CX q0, q1; Z Z CX q1, q0; CX q1, q2;
Abstract Semantics J · K C q0 := | 1 i ; q1 := | 0 i ; 1 2 | 0 �i ( | 0 i � e i π 4 | 1 i ) p q2 := | 0 i ; H q2; T q1; H q0; q0 q1 q2 T q2; CX q1, q2; I CX q2, q0; � X ⌅ CX q0, q1; Z I CX q1, q0; CX q1, q2;
Abstract Semantics J · K C q0 := | 1 i ; q1 := | 0 i ; 1 2 | 0 �i ( | 0 i � e i π 4 | 1 i ) p q2 := | 0 i ; H q2; T q1; H q0; q0 q1 q2 T q2; CX q1, q2; CX q2, q0; [Z] [X] ⌅ CX q0, q1; CX q1, q0; CX q1, q2;
Abstract Semantics J · K C q0 := | 1 i ; 1 q1 := | 0 i ; 2 | 0 i ( | 00 i � e i π 4 | 01 i q2 := | 0 i ; + e i π 4 | 10 i � | 11 i ) H q2; T q1; H q0; q0 q1 q2 T q2; CX q1, q2; CX q2, q0; [Z] ⌅ CX q0, q1; CX q1, q0; CX q1, q2;
J · K C Abstract Semantics q0 := | + i ; | +00 i q1 := | 0 i ; q2 := | 0 i ; CX q0, q1; q0 q1 q2 CX q1, q2; meas q0; [X] [Z] [Z]
J · K C Abstract Semantics 1 q0 := | + i ; p 2( | 00 i + | 11 i ) | 0 i q1 := | 0 i ; q2 := | 0 i ; CX q0, q1; q0 q1 q2 CX q1, q2; meas q0; X � [Z] X Z Z
J · K C Abstract Semantics 1 q0 := | + i ; p 2( | 000 i + | 111 i ) q1 := | 0 i ; q2 := | 0 i ; CX q0, q1; q0 q1 q2 CX q1, q2; meas q0; X X X Z Z I I Z Z
J · K C Abstract Semantics 1 q0 := | + i ; 2( | 000 i h 000 | + | 111 i h 111 | ) q1 := | 0 i ; q2 := | 0 i ; CX q0, q1; q0 q1 q2 CX q1, q2; meas q0; Z I I Z Z I I Z Z
J · K C Abstract Semantics 1 q0 := | + i ; 2( | 000 i h 000 | + | 111 i h 111 | ) q1 := | 0 i ; q2 := | 0 i ; CX q0, q1; q0 q1 q2 CX q1, q2; meas q0; Z I I I Z I I I Z
J · K C Abstract Semantics 1 q0 := | + i ; 2( | 000 i h 000 | + | 111 i h 111 | ) q1 := | 0 i ; q2 := | 0 i ; CX q0, q1; q0 q1 q2 CX q1, q2; meas q0; [Z] [Z] [Z]
Soundness ∀ ρ : quantum state ∀ α ∈ C Q ∀ C : program α ✏ ρ ⇒ J C K C ( α ) ✏ J C K ( ρ )
For better approximation
Abstract Semantics J · K C 1 q0 := | + i ; p 2( | 000 i + | 111 i ) q1 := | 0 i ; q2 := | 0 i ; CX q0, q1; CX q1, q2; q0 q1 q2 T q1; meas q0; X X X Z Z I I Z Z
Abstract Semantics J · K C 1 q0 := | + i ; 2( | 000 i + e i π 4 | 111 i ) p q1 := | 0 i ; q2 := | 0 i ; CX q0, q1; CX q1, q2; q0 q1 q2 T q1; meas q0; ⌅
Abstract Semantics J · K C 1 q0 := | + i ; 2( | 000 i h 000 | + | 111 i h 111 | ) q1 := | 0 i ; q2 := | 0 i ; CX q0, q1; CX q1, q2; q0 q1 q2 T q1; meas q0; ⌅ [Z]
0 J · K Abstract Semantics C 1 q0 := | + i ; p 2( | 000 i + | 111 i ) q1 := | 0 i ; q2 := | 0 i ; CX q0, q1; CX q1, q2; q0 q1 q2 T q1; meas q0; X X X Z Z I I Z Z
Recommend
More recommend