tensorcircuit icon indicating copy to clipboard operation
tensorcircuit copied to clipboard

Stabilizer simulation example utilizing stim backend

Open refraction-ray opened this issue 1 year ago • 0 comments

Task description

Add an example python script stabilizer_stim_sim.py in /examples which showcases stabilizer circuit simulation using tc interface with stim backend.

Implementation

The script includes:

  1. Clifford circuit with mid-circuit measurement defined in tc
  2. Transform the circuit object into Stim circuit object with the helper function defined in the same script (input: tc circuit, output: stim circuit)(can utilize c._qir and c._extra_qir, using c.measure_instruction to get the mid circuit measurement recorded in extra_qir and using c.mid_measurement for the real functionality)
  3. Simulate the circuit in stim and extract the stabilizer tableau
  4. Compute the entanglement entropy of the output state with the helper function defined in the same script (input: stabilizer tableau representation, output: entanglement entropy value) (see Ref 3, it would be better to try hard to accelerate this function)
  5. Validate the correctness by directly computing entanglement from tc (mid-circuit measurement results might require to be averaged)

References:

  1. https://github.com/tencent-quantum-lab/tensorcircuit/issues/159
  2. https://github.com/quantumlib/Stim
  3. https://quantumcomputing.stackexchange.com/questions/16718/measuring-entanglement-entropy-using-a-stabilizer-circuit-simulator
  4. https://arxiv.org/abs/quant-ph/0406196

refraction-ray avatar May 08 '24 13:05 refraction-ray