TreeScanningGateRemovalPass.get_tree_circs

static TreeScanningGateRemovalPass.get_tree_circs(orig_num_cycles, circuit_copy, cycle_and_ops)[source]

Generate all circuits to be instantiated in the tree scan.

Parameters:
  • orig_num_cycles (int) – The original number of cycles

  • shift (in the circuit. This allows us to keep track of the)

  • deletions. (caused by previous)

  • circuit_copy (Circuit) – Current state of the circuit.

  • cycle_and_ops – list[(int, Operation)]: The next chunk

  • deletion. (of operations to be considered for)

Returns:

A list of 2^(tree_depth) - 1 circuits that remove up to tree_depth operations. The circuits are sorted by the number of operations removed.

Return type:

list[Circuit]