Add OpenQASM 3 import support#752
Conversation
Change-Id: I8839f44f74e97b89e9d048365755b86efeef66f6
Benchmark Results (Julia v1)Time benchmarks
Memory benchmarks
|
|
CI status note: GitHub Actions are green on the latest head, and all published Buildkite child contexts for build #3519 are passing. The aggregate I do not have permission to rerun/cancel that Buildkite build from the fork side, so if the aggregate context remains stuck a maintainer-side rerun may be needed. |
Change-Id: I050fdaaf35fb980405e04f617e29cac488065471
b54b325 to
55a39b6
Compare
|
Fresh CI status on head Buildkite #3520 also has all published child contexts passing from the PR status list, including the QuantumClifford/QECCore/downstream jobs. The only remaining non-green item I can see is the aggregate |
Closes #727.
Summary
parse_qasm3andread_qasm3.DataStructureslower bound to match Quasar's compat.Supported operations
id,x,y,z,h,s,sdg,cx,cz,swap,measure, andreset.Validation
julia --project=test -e 'using Pkg; Pkg.develop(PackageSpec(path=pwd())); Pkg.instantiate(); using TestItemRunner, QuantumClifford; @run_package_tests filter=ti -> ti.name == "OpenQASM 3 import"'julia --project=. -e 'using QuantumClifford; parse_qasm3("OPENQASM 3.0; qubit q; h q;")'verifies the weakdep hint before importing Quasar.julia --project=test -e 'using QuantumClifford; import Quasar; c=parse_qasm3("OPENQASM 3.0; qubit q; h q;"); @assert c == QuantumClifford.AbstractOperation[sHadamard(1)]'git diff --check