Skip to content

Commit bf53bef

Browse files
authored
Add seeded processor to engine_utils (#70)
- Adds a QuantumProcessor with a constant seed. - This allows tests to be consistent and removes flakiness due to randomness.
1 parent 060957e commit bf53bef

File tree

2 files changed

+13
-2
lines changed

2 files changed

+13
-2
lines changed

recirq/engine_utils.py

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -287,6 +287,17 @@ def device_obj(self):
287287
qubit_noise_gate=cirq.DepolarizingChannel(0.005)
288288
))
289289
),
290+
'Syc23-simulator-tester': QuantumProcessor(
291+
# This simulator has a constant seed for consistent testing
292+
name='Syc23-simulator-tester',
293+
device_obj=cg_devices.Sycamore23,
294+
processor_id=None,
295+
is_simulator=True,
296+
_get_sampler_func=lambda x, gs: cirq.DensityMatrixSimulator(
297+
noise=cirq.ConstantQubitNoiseModel(
298+
qubit_noise_gate=cirq.DepolarizingChannel(0.005)
299+
), seed=1234)
300+
),
290301
'Syc23-zeros': QuantumProcessor(
291302
name='Syc23-zeros',
292303
device_obj=cg_devices.Sycamore23,

recirq/quantum_chess/quantum_board_test.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -40,8 +40,8 @@
4040
device=utils.get_device_obj_by_name('Syc23-noiseless'),
4141
error_mitigation=enums.ErrorMitigation.Error),
4242
qb.CirqBoard(0,
43-
sampler=utils.get_sampler_by_name('Syc23-simulator'),
44-
device=utils.get_device_obj_by_name('Syc23-simulator'),
43+
sampler=utils.get_sampler_by_name('Syc23-simulator-tester'),
44+
device=utils.get_device_obj_by_name('Syc23-simulator-tester'),
4545
error_mitigation=enums.ErrorMitigation.Correct,
4646
noise_mitigation=0.10),
4747
)

0 commit comments

Comments
 (0)