Editing
Quantum Leader Election
Jump to navigation
Jump to search
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
This [https://arxiv.org/abs/0910.4952 example protocol] allows multiple remote participants to select a leader among them randomly. The parties do not trust each other and can use both classical and quantum channels to communicate. It is an extension of the coin tossing problem to multiple players. '''Tags:''' [[:Category:Multi Party Protocols|Multi Party Protocols]], [[:Category:Quantum Enhanced Classical Functionality|Quantum Enhanced Classical Functionality]], [[:Category:Specific Task|Specific Task]] [[Category:Multi Party Protocols]] [[Category:Quantum Enhanced Classical Functionality]][[Category:Specific Task]] ==Outline== ===When the number of players is an integral power of 2:=== The leader election protocol, in this case, is similar to a knockout tournament. In the first round, every team pairs up with the other team and they perform a balanced coin flip to determine the winner. In subsequent rounds, winners from the previous round team up with another winner and perform balanced coin flip to determine the winners of this round. The winner of the final round is declared the leader. ===When the number of players is not an integral power of 2:=== In this case, the leader election protocol uses the 'power of 2' scenario and also recursively calls itself to select the leader. Players continue till the index of the power of 2 which is just less than the total number of players perform leader election in an aforementioned manner to decide a winner. Leader election protocol is then used recursively for the remaining participants to decide another winner. Both the winners now perform an unbalanced quantum coin flipping to decide the final winner which is the leader. ==Notation== * <math>P_\epsilon</math>: A weak balanced coin flipping protocol with an arbitrarily small bias of at most <math>\epsilon</math>. * <math>P_{q,\epsilon}</math>: A weak unbalanced coin flipping protocol with an arbitrarily small bias of at most <math>\epsilon</math> and one of the players having the probability of winning equal to <math>q</math>. * <math>\{A_1,...,A_n\}</math>: Set of players participating in Leader election * <math>w^i_j</math>: Winner of the <math>j^{th}</math> pair in the <math>i^{th}</math> round. * <math>N_\epsilon</math>: number of rounds in a weak balanced coin flipping protocol <math>P_\epsilon</math>. ==Requirements== *'''Network Stage:''' [[:Category:Fully Quantum Computing Network Stage|Fully Quantum Computing Network Stage]][[Category:Fully Quantum Computing Network Stage]] * Resources to perform weak (balanced and unbalanced) quantum coin tossing. ** Authenticated Quantum channel capable of sending a pair of qubits ** Authenticated Classical channel to send multiple bits ** Quantum memory for both parties to store qubits ** Measurement Devices for each party ** Random bit generator for each party ==Knowledge Graph== {{graph}} ==Properties== * The protocol uses as a black box the quantum solution to the coin tossing protocol (both balanced and unbalanced). * The protocol has a running time of <math>O(N_{\epsilon/4}\log{n}\log{1/\epsilon})</math>, and <math>O(\log{n})</math> rounds of coin flipping. * It assumes the setting is sequential so the next coin flipping protocol starts after the previous one ends. ==Protocol Description== [https://github.com/SoftwareQuTech/CQC-Python/blob/master/examples/pythonLib/coinflipLeader/nPartyCoinFlip.py <u>Click here for SimulaQron code</u>] [https://github.com/quantumprotocolzoo/protocols/tree/master/QuantumLeaderElection <u>Click here for Python code</u>] ===When <math>n</math> is an integral power of 2=== For <math>n = 2^k</math>, <math>k</math> rounds are performed. # The following pairs perform <math>P_\epsilon</math> (balanced coin flipping):<br/> <math>(A_1,A_2), (A_3,A_4), ..., (A_{n-1},A_n)</math> with <math>w^1_1, w^1_2, ..., w^1_{n/2}</math> as the corresponding winners. # The pairs: <math>(w^1_1,w^1_2), (w^1_3,w^1_4), ..., (w^1_{n/2-1},w^1_{n/2})</math> again perform <math>P_\epsilon</math> (balanced coin flipping) to get the corresponding winners <math>w^2_1, w^2_2, ..., w^2_{n/4}</math>. # This goes on for a total of <math>k</math> rounds and the winner of the <math>k^{th}</math> round <math>w^k_1</math> is declared the leader. ===When <math>n</math> is not an integral power of 2=== For <math>2^k < n < 2^{k+1}</math>, # The following steps are performed simultaneously: #* Players <math>A_1, A_2, ..., A_{2^k}</math> perform leader election for integral power of 2 number of players among themselves with <math>P_{\frac{\epsilon}{2}}</math> to get the winner <math>w_1</math>. #* Players <math>A_{2^k+1}, ..., A_n</math> recursively perform leader election for not an integral power of 2 number of players to get the winner <math>w_2</math>. # <math>w_1</math> and <math>w_2</math> perform <math>P_{\frac{2^k}{n},\frac{\epsilon}{2}}</math>. The winner of this is the leader. ==Further Information== <div style='text-align: right;'>''*contributed by Natansh Mathur''</div>
Summary:
Please note that all contributions to Quantum Protocol Zoo may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see
Quantum Protocol Zoo:Copyrights
for details).
Do not submit copyrighted work without permission!
To protect the wiki against automated edit spam, we kindly ask you to solve the following CAPTCHA:
Cancel
Editing help
(opens in new window)
Template:Graph
(
edit
)
Navigation menu
Personal tools
Not logged in
Talk
Contributions
Log in
Namespaces
Page
Discussion
English
Views
Read
Edit
View history
More
Search
Navigation
Main page
News
Protocol Library
Certification Library
Nodal Subroutines
Codes Repository
Knowledge Graphs
Submissions
Categories
Supplementary Information
Recent Changes
Contact us
Help
Tools
What links here
Related changes
Special pages
Page information