Adds an alternative DP Schedule::compute_kernel_schedule_simple running in O(n^2) where n is the number of gates; get_schedules() now calls this DP by default
kernel.h now does #include "quartz/simulator/kernel_cost.h"; adds helper functionsKernel::add_gate()andKernel::cost()` to update a kernel and get its cost conveniently
Changes the directory for running test_simulation from quartz/ to quartz/build
Fix some comments and some warnings about signed-to-unsigned comparisons
Changes to the simulator:
Schedule::compute_kernel_schedule_simple
running in O(n^2) where n is the number of gates;get_schedules()
now calls this DP by defaultkernel.h
now does#include "quartz/simulator/kernel_cost.h"; adds helper functions
Kernel::add_gate()and
Kernel::cost()` to update a kernel and get its cost convenientlytest_simulation
fromquartz/
toquartz/build
Before (complicated DP):
After https://github.com/quantum-compiler/quartz/commit/22a6d42ddb09b4a0b19d2eee7719286f8f28def6 (simple DP without considering the fact that shared-memory kernels only need the non-insular qubits to be active):
After this PR:
Global changes:
\r
correctly in Windows environments