Path Detection: a Quantum Algorithmic Primitive

Path Detection: a Quantum Algorithmic Primitive

Path Detection: A Quantum Algorithmic Primitive Shelby Kimmel Middlebury College Based on work with Stacey Jeffery: arXiv: 1704.00765 (Quantum vol 1 p 26) Michael Jarret, Stacey Jeffery, Alvaro Piedrafita, arXiv:1804.10591 (ESA 2018) Kai DeLorenzo, Teal Witter, arXiv:1904.05995 (TQC 2019) Primitives! • Quantum algorithmic primitives 1. Widely applicable 2. Can be used in a black box manner (with easily analyzable behavior) Primitives! • Quantum algorithmic primitives 1. Widely applicable 2. Can be used in a black box manner (with easily analyzable behavior) – Ex: Searching unordered list of � items – Classically, takes Ω(�) time – Quantumly, takes �( �) time Primitives! • Quantum algorithmic primitives 1. Widely applicable 2. Can be used in a black box manner (with easily analyzable behavior) – Ex: Searching unordered list of � items – Classically, takes Ω(�) time – Quantumly, takes �( �) time Good primitive: ��-connectivity Outline: A. Introduction to st-connectivity B. st-connectivity makes a good algorithmic primitive 1. Widely applicable 2. Easy to analyze Outline: A. Introduction to st-connectivity B. st-connectivity makes a good algorithmic primitive 1. Widely applicable 2. Easy to analyze Applications: • Read-once Boolean formulas (query optimal) [JK] • Total connectivity (query optimal) [JJKP] • Cycle detection (query optimal) [DKW] • Even length cycle detection [DKW] • Bipartiteness (query optimal) [DKW] • Directed st-connectivity (query optimal) (Beigi et al ‘19) • Directed smallest cycle (query optimal) (Beigi et al ‘19) Outline: Applications: • Topological sort (Beigi et al ‘19) • Connected components (Beigi et al ‘19) • Strongly connected components (Beigi et al ‘19) • k-cycle at vertex v (Beigi et al ‘19) • st-connectivity (Reichardt, Belovs ‘12) ��-connectivity � �� − ������������: is there a path from � to �? � ��-connectivity � �� − ������������: is there a path from � to �? � Input to Algorithm Bit String: �! �" … �# Input to Algorithm Bit String: �! �" … �# 1 0 1 Input to Algorithm Skeleton � Bit String: 1 2 Graph 3 �! �" �$ 38 1 2 3 � Input to Algorithm Skeleton � Bit String: 1 2 Graph 3 �! �" �$ 38 1 1 0 1 2 3 � Input to Algorithm Skeleton � Bit String: 1 2 Graph 3 �! �" �$ 38 1 0 0 1 2 3 � Input to Algorithm Skeleton � Bit String: 1 2 Graph 3 �! �" �$ 38 1 1 2 • Bit string initially hidden, can query 3 value of string at each bit. � Input to Algorithm �! � � = � � + �" Skeleton � Bit String: 1 2 Graph 3 �! �" �$ 38 1 1 2 • Bit string initially hidden, can query 3 value of string at each bit. � Algorithm Skeleton � 1 2 Graph 3 38 1 2 Q. Algorithm to Ye s / N o 3 Solve connectivity � �%for Bit String: �! �" �$ Outline: A. Introduction to st-connectivity B. st-connectivity makes a good algorithmic primitive 1. Widely applicable 2. Easy to analyze Cycle Detection Is there a cycle? Ye s Cycle Detection Is there a cycle? No Cycle Detection Is there a cycle? 1 Input to Cycle Detection: 2 5 3 • Skeleton graph • Hidden bit string 4 �!�"�$�+�, �- = 1 ↔edge � is present Cycle Detection Is there a cycle through edge 1? 1 2 5 3 4 Cycle Detection Is there a cycle through edge 1? 1 2 5 3 4 There is a cycle through Edge 1 iff • Edge 1 is present • Path between the endpoints of Edge 1 not using Edge 1 Cycle Detection Is there a cycle through edge 1? � 1 1 Edge 1 is present 2 5 3 4 2 5 There is a cycle through 4 Path between Edge 1 iff the endpoints • Edge 1 is present 3 of Edge 1 not • Path between the � using Edge 1 endpoints of Edge 1 not using Edge 1 Cycle Detection Is there a cycle? 1 2 5 3 4 There is a cycle if there is a cycle through some edge Cycle Detection � Is there a cycle? 1 4 5 1 2 3 1 2 5 3 2 5 1 5 1 5 3 3 2 2 4 4 1 4 4 4 There is a cycle if 5 3 2 3 there is a cycle through some edge � Boolean Formulas � �(�) �1 �! �$ �, ⋀ ⋁ �+ �#$ �2 1 �3 ⋀ ⋀ ⋀ �" �4 ⋁ ⋁ �!0 �# �% �& �' � 0 0 1 0 �( �) �* �+ �, 0 1 0 1 1 Outline: A. Introduction to st-connectivity B. st-connectivity makes a good algorithmic primitive 1. Widely applicable 2. Easy to analyze Algorithm Analysis: Space Complexity: � log(# ����� �� �������� ����ℎ) Algorithm Analysis: Query Complexity: • Bit string initially unknown • Minimum # of oracle uses to determine w.h.p. on worst input Algorithm Analysis: Query Complexity: • Bit string initially unknown • Minimum # of oracle uses to determine w.h.p. on worst input ≈ Time Complexity Algorithm Analysis: Query Complexity: � max �(,% � max �(,% � !"##$!%$& ' #"% !"##$!%$& ' Effective resistance Effective capacitance Algorithm Analysis: Query Complexity: � max �(,% � max �(,% � !"##$!%$& ' #"% !"##$!%$& ' Effective resistance Effective capacitance [Belovs, [Jarret, Jeffery, Kimmel, Reichardt, ’12] Piedrafita, ’18] Effective Resistance 1 unit of flow � � 1 unit of flow Effective Resistance 1 unit of flow � Valid flow: 1 0 • 1 unit in at � • 1 unit out at � � 1 − � • At all other nodes, zero net flow 1 � 1 unit of flow Effective Resistance 1 unit of flow � Flow energy: 1 0 N ���� �� ���� " � 56758 1 − � 1 � 1 unit of flow Effective Resistance 1 unit of flow � Flow energy: 1 0 N ���� �� ���� " � 56758 1 − � Effective Resistance: �8,:(�) • Smallest energy of any valid 1 flow from � to � on �. � 1 unit of flow Effective Resistance 1 unit of flow � Flow energy: 1 0 N ���� �� ���� " 1/2 56758 1/2 Effective Resistance: �8,:(�) • Smallest energy of any valid 1 flow from � to � on �. � 1 unit of flow Algorithm Analysis: Query Complexity: � max �(,% � max �(,% � !"##$!%$& ' #"% !"##$!%$& ' Effective resistance Effective capacitance Effective Capacitance � Generalized cut: 1 • 1 at � 1 • 0 at � 1 • Difference is 0 across edge � 0 � Effective Capacitance Potential energy: � 1 N ��� ���������� " 1 1 56758 -# 8;5<5:=# 7>?@A � 0 � Effective Capacitance Potential energy: � 1 N ��� ���������� " 1 1 56758 -# 8;5<5:=# 7>?@A Effective Capacitance: � (�) 8,: 2/3 • Smallest potential energy of any valid generalized cut 0 � between � and � on �. Algorithm Analysis: Query Complexity: � max �(,% � max �(,% � !"##$!%$& ' #"% !"##$!%$& ' Effective resistance Effective capacitance Example Cycle Detection � max �8,: � max �8,: � B=##5B:56 C #=: B=##5B:56 C � 1 5 2 3 4 1 2 5 5 1 3 1 3 2 5 2 4 1 4 4 5 4 3 2 3 � Example Cycle Detection � max �8,: � max �8,: � B=##5B:56 C #=: B=##5B:56 C � 1 5 2 3 4 1 2 5 5 1 3 1 3 2 5 2 4 1 4 4 5 4 3 2 3 � Example Cycle Detection � max �8,: � max �8,: � B=##5B:56 C #=: B=##5B:56 C � 1 5 2 3 4 1 2 5 5 1 3 1 3 2 5 2 4 1 4 4 5 4 3 2 3 � • k parallel paths of length k Length k cycle • 1/� flow on each path • Effective resistance is 1 Example Cycle Detection � max �8,: � max �8,: � B=##5B:56 C #=: B=##5B:56 C � 1 5 2 3 4 1 2 5 5 1 3 1 3 2 5 2 4 1 4 4 5 4 3 2 3 � Multiple cycles Effective resistance is < 1 Example Cycle Detection � max �8,: � max �8,: � B=##5B:56 C #=: B=##5B:56 C � 1 5 2 3 4 1 2 5 5 1 3 1 3 2 5 2 4 1 4 4 5 4 3 2 3 � Example Cycle Detection � max �8,: � max �8,: � B=##5B:56 C #=: B=##5B:56 C � % • � � subgraphs 1 5 2 3 4 corresponding to non- 1 2 5 5 1 3 1 present edges: cut at top 3 2 5 2 • � � 4 1 subgraphs 4 4 5 4 corresponding to present 3 2 3 edges, cut could have � �(�%) edges in cut Example Cycle Detection � max �8,: � max �8,: � B=##5B:56 C #=: B=##5B:56 C $ �8,: � = �(1) �8,: � = �(� ) Query complexity: � �$/" (optimal – logarithmic improvement over previous algorithm) Example Cycle Detection � max �8,: � max �8,: � B=##5B:56 C #=: B=##5B:56 C E! �8,: � = ������� ���� Circuit rank = min # of edges to cut to create a cycle free graph • Quantum algorithm picks out critical topological parameter • If promised either large circuit rank or no cycle, then cycle detection algorithm runs faster • Proved by 2nd year undergrads Estimation Algorithm: Quantum query algorithm to estimate effective resistance or effective capacitance of �. (Jeffery, Ito ’15) Estimation Algorithm: Quantum query algorithm to estimate effective resistance or effective capacitance of �. (Jeffery, Ito ’15) Because effective resistance depends directly on circuit rank, we now have a quantum algorithm to estimate circuit rank. Umm…Algorithm? N Theorem 14. Let U(P, x)=(2Πker A I)(2ΠH(x) I).FixX 0, 1 and f : X 0, 1 ,andletPbeaspan N − − ⊆ { } → { } program on 0, 1 that decides f . Let W+( f , P)=maxx f 1(1) w+(x, P) and W ( f , P)=maxx f 1(0) w (x, P). { } ∈ − − ∈ − − Then there is a bounded error quantum algorithm that decides fbymakingO( W+( f , P)W ( f , P)) calls to U(P, x), − and elementary gates. In particular, this algorithm has quantum query complexity O( W+( f , P)W ( f , P)). ! − Ref. [IJ16]definestheapproximate positive and negative witness sizes, w˜ +(x, !P) and w˜ (x, P).Theseare − similar to the positive and negative witness sizes, but with the conditions w H(x) and ωAΠH(x) = 0 relaxed. | ⟩∈ Definition 15 (Approximate Positive Witness). For any span program P on 0, 1 N and x 0, 1 N,wedefine the positive error of x in Pas: { } ∈ { } 2 e+(x)=e+(x, P) := min Π w : A w = τ .(14) H(x)⊥| ⟩ | ⟩ "# # $ # # # # 2 We say w is an approximate positive witness for x in P if Π w = e+(x) and A w = τ. We define | ⟩ H(x)⊥ | ⟩ | ⟩ the approximate positive witness size as # # # # # # 2 2 w˜ +(x)=w˜ +(x, P) := min w : A w = τ, Π w = e+(x) .(15) ∥| ⟩∥ | ⟩ H(x)⊥ | ⟩ " # # $ # # If x P ,thene+(x)=0.

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    57 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us