tqsd / QuNetSim

A quantum network simulation framework.
https://tqsd.github.io/QuNetSim/
MIT License
114 stars 51 forks source link

Implement an example of a second generation quantum repeater #91

Open stephendiadamo opened 3 years ago

stephendiadamo commented 3 years ago

A first generation quantum repeater uses entanglement swapping to establish quantum entanglement between two parties not directly connected.

A second generation quantum repeater uses heralded quantum entanglement and error correction. One can read more about them here: https://arxiv.org/abs/1509.08435

In this example, we should implement a second generation quantum repeater.

SakibulIslamSazzad commented 3 years ago

I would love to work on this project, it looks interesting.

SakibulIslamSazzad commented 3 years ago

Hi @ stephendiadamo I did some ground study for the project, I have some asks that I would like to proceed:

  1. I found that entanglement distillation is necessary for 2G quantum repeaters to reduce the loss errors, what should be my approach to make a circuit block of entanglement distillation- will be for two qubit states/ general n qubit states?
  2. I think there is difference between entanglement distillation and entanglement purification, my understanding says that for 2G entanglement distillation is discussed everywhere, so would distillation be enough for 2G?
SakibulIslamSazzad commented 3 years ago

One another thing, should I do the entanglement distillation for pure states or mixed states?

stephendiadamo commented 3 years ago

In general this issue is pretty open-ended. I'm not an expert in quantum repeaters but just thought a very high-level example of doing perhaps one round of distillation to establish entanglement between nodes could be nice to see. A lot of the implementation choices are left to you since I wouldn't know how to complete this issue without more research myself.

In QuNetSim, we are dealing just with pure states but one can apply errors on qubits like an X error or a Z error which can be corrected in the protocol.

Maybe the first thing to start with is better understanding distillation and writing a protocol that only does that part.

In QuNetSim, one has to apply the logic gates directly on the qubits one at a time, so you'll have to write some sort of algorithm that takes qubits and applies the correct gates on them to perform circuits.

I'll try to read up a bit more and hopefully can be more helpful.

SakibulIslamSazzad commented 3 years ago

Great, I am studying entanglement distillation from Nielsen and Chuang Book

pritamsinha2304 commented 3 years ago

@stephendiadamo Anyone working on this project ?

stephendiadamo commented 3 years ago

@SakibulIslamSazzad How's your status with this? Are you still planning to work on it?

SakibulIslamSazzad commented 3 years ago

@stephendiadamo hey yeah I am working on it. But my progress is slow, may be I wont do it for unitary hack. It seems like quite a good project and I was busy with IBM Challenge 2021. @pritamsinha2304 if you are interested can go ahead. I can share my resources and understanding with you.

pritamsinha2304 commented 3 years ago

I was also participating in IBM challenge that's why I couldn't focus on unitary hack. So I am thinking is this doable in 3 days. I mean I am learning this concept right now, but @SakibulIslamSazzad you were on this project from the beginning. Why don't you start ? And I will contribute to it. If you started already, how far are you ?

SakibulIslamSazzad commented 3 years ago

I am not sure if this doable within 3 days. I can give a bit summary what the project is about. Basically you have to generate 2nd generation quantum repeaters (QR). But the key thing is that the 2nd generation QR has 2 specific properties: Heralded Entanglement Generation (HER) this is Loss error and other one is Quantum Error Correction (QEC) for operational loss. I have some ground study and understanding about QEC (even IBM challenge has a problem statement on it). So I am quite struggling how can I merge QEC with HER. I think if you are interested we can team up. Here is my linkedin profile: []

Lets talk there more.

pritamsinha2304 commented 3 years ago

@SakibulIslamSazzad I can't message you

SakibulIslamSazzad commented 3 years ago

well, you can send me an invitation. or email me at: sakibulislamsazzad@gmail.com

pritamsinha2304 commented 3 years ago

@stephendiadamo I have 2 questions/confusions:

  1. I see the 1st generation repeater create entanglement between 2 parties. Does send_epr() is based on this or I am wrong ?
  2. In this repeater, there are intermediate stations. Can we and should we consider intermediate nodes as the station like eve.
SakibulIslamSazzad commented 3 years ago

I think I can answer the second question: Intermediate nodes aren't eavesdropper, the nodes are two point that split the whole network length, In the QR these nodes are for generating high fidelity entanglement states.

pritamsinha2304 commented 3 years ago

I think I can answer the second question: Intermediate nodes aren't eavesdropper, the nodes are two point that split the whole network length, In the QR these nodes are for generating high fidelity entanglement states.

I know, in qunetsim everything is represented as nodes. So thats why I am asking can we use these nodes as stations ?

stephendiadamo commented 3 years ago

@stephendiadamo I have 2 questions/confusions:

  1. I see the 1st generation repeater create entanglement between 2 parties. Does send_epr() is based on this or I am wrong ?
  2. In this repeater, there are intermediate stations. Can we and should we consider intermediate nodes as the station like eve.

QuNetSim is based on the first generation network, so yes send_epr is based on entanglement swapping. Actually it's a setting in the network to explicitly perform the swapping.

For the second point, the relaying nodes do have to intercept in order to correct the qubits. I think an eavesdropping approach would be nice here, the only thing is if multiple qubits need to arrive before an error correction round is made. I guess then having a 3 node network to have more flexibility with that logic would be better, since eavesdroppers can see one qubit at a time only.

SakibulIslamSazzad commented 3 years ago

Hi, @stephendiadamo, me and @pritamsinha2304 did some work on 2nd generation quantum repeater and we would like to share our work. Btw the work is based on mostly qiskit. We did something, like sending qubits from Alice to Bob, but we are struggling if QEC and HEP been applied to our circuit. Can we schedule a meeting with you where we can share the work? Thank you

SakibulIslamSazzad commented 2 years ago

Hi @stephendiadamo , hope you are doing well. Last year I gave a try on it and made some progress for a second-generation quantum repeater. I have to re-read the notes of the last year. We were stucked at applying QEC part in the repeater. I will give a try once again on this issue.

stephendiadamo commented 2 years ago

@SakibulIslamSazzad Sounds good.

I think a minimum example of this would be to implement 3 nodes in a line topology and perform the steps for entanglement distillation after distributing a few pairs of entanglement between the nodes using entanglement swapping. It will require some coordination between all the parties which will be the tricky part, but should be do-able.

Let me know how it goes.