0
$\begingroup$

So far, I have used surface codes on Stim simulations only. The simulation is for a surface code and I want to understand how surface codes work when I comes to quantum circuit. How is this done for a full quantum circuit with multiple qubits and gates? How are the qubits encoded? Where is the QECC circuit placed? When are the errors corrected? How are the rounds increased? Do all qubits need to have the same distance surface code? Can someone refer me to some papers or articles related to this?

Lastly, is there anyway of simulating this? For example: can I use STIM to simulate surface codes on an entire circuit? If yes, how? If not, can someone suggest a doable idea?

$\endgroup$
2
  • $\begingroup$ Please edit the question to limit it to a specific problem with enough detail to identify an adequate answer. $\endgroup$
    – Community Bot
    Sep 7, 2023 at 5:41
  • $\begingroup$ Welcome to QCSE! Your question seems a bit unclear, is it possible to refine your question to a specific problem or confusion surrounding the surface code & can you explain how you’ve applied a surface code to one qubit? $\endgroup$
    – banercat
    Sep 7, 2023 at 10:38

1 Answer 1

0
$\begingroup$

Can someone refer me to some papers or articles related to this?

Reading A Game of Surface Codes is a good place to start if you want to know how to perform a computation with qubits encoded in the surface code.

For example: can I use STIM to simulate surface codes on an entire circuit? If yes, how?

Yes, generate a circuit with detectors and observables just as you would do for simulating an idling logical qubit.

$\endgroup$
4
  • $\begingroup$ Thank you for the paper suggestion. Can you give me an example of the STIM code? So far whatever I have used are the stim's inbluit surface code. How can I use this on multiple qubits that occupy a single circuit. surface_code_tasks = [ sinter.Task( circuit = stim.Circuit.generated( "surface_code:rotated_memory_z", rounds=r, distance=d, before_round_data_depolarization=p_dep, after_clifford_depolarization=p_gate, $\endgroup$ Sep 8, 2023 at 0:17
  • $\begingroup$ Stim has no built-in circuits for performing logical operations. You have to write the circuit your self $\endgroup$
    – Peter-Jan
    Sep 8, 2023 at 12:11
  • $\begingroup$ Stim does have built-in-circuits for repetition and surface codes. One can use stim.Circuit.generated( "surface_code:rotated_memory_z". I just do not understand how to use this on a quantum circuit with multiple qubits and gates? $\endgroup$ Sep 8, 2023 at 15:17
  • 1
    $\begingroup$ @AvimitaChatterjee The built-in stim circuit generation is very basic; only for memory experiments. You won't be able to use it to do lattice surgery stuff. You have to write your own circuits for that. $\endgroup$ Feb 5 at 19:50

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.