QuTech-Delft / OpenQL

OpenQL: A Portable Quantum Programming Framework for Quantum Accelerators. https://dl.acm.org/doi/10.1145/3474222
https://openql.readthedocs.io
Other
99 stars 44 forks source link

Scheduler can exit with "The dependence graph is not a DAG." #362

Closed wvlothuizen closed 2 years ago

wvlothuizen commented 3 years ago

this error was actually observed using PycQED test case Test_multi_qubit_oql_CC.test_two_qubit_parity_check (https://github.com/DiCarloLab-Delft/PycQED_py3/blob/develop/pycqed/tests/openql/test_multi_qubit_oql.py#L139)

details to reproduce:

wvlothuizen commented 3 years ago

This error still occurs after the recent refactor, i.e. in PR #360. Attached is the output of:

Zaphod-2:PycQED_py3 wouter$ pytest -v pycqed/tests/openql/ -k test_two_qubit_parity_check > test_two_qubit_parity_check.txt

The source of the test is at: https://github.com/DiCarloLab-Delft/PycQED_py3/blob/feature/DIOCal/pycqed/tests/openql/test_multi_qubit_oql.py#L139

the actual OpenQL calls at: https://github.com/DiCarloLab-Delft/PycQED_py3/blob/feature/DIOCal/pycqed/measurement/openql_experiments/multi_qubit_oql.py#L1358

test_two_qubit_parity_check.txt.zip

wvlothuizen commented 2 years ago

No longer observed in 0.10.x (using sch.ListSchedule)