GTorlai / PastaQ.jl

Package for Simulation, Tomography and Analysis of Quantum Computers
Apache License 2.0
142 stars 23 forks source link

Full tomography, Flux Optimizers, Observers.jl #231

Closed GTorlai closed 2 years ago

GTorlai commented 2 years ago

This PR applies the following changes:

codecov-commenter commented 2 years ago

Codecov Report

Merging #231 (51acb6d) into master (11c250b) will increase coverage by 5.40%. The diff coverage is 85.50%.

Impacted file tree graph

@@            Coverage Diff             @@
##           master     #231      +/-   ##
==========================================
+ Coverage   80.30%   85.71%   +5.40%     
==========================================
  Files          21       22       +1     
  Lines        2326     2401      +75     
==========================================
+ Hits         1868     2058     +190     
+ Misses        458      343     -115     
Impacted Files Coverage Δ
src/PastaQ.jl 100.00% <ø> (ø)
src/deprecated.jl 75.00% <ø> (+75.00%) :arrow_up:
src/circuits/getsamples.jl 64.04% <67.93%> (-24.49%) :arrow_down:
src/circuits/productstates.jl 86.66% <73.33%> (+30.41%) :arrow_up:
src/io.jl 71.95% <74.28%> (ø)
src/tomography/quantumtomography.jl 85.71% <85.71%> (ø)
src/utils.jl 74.77% <96.55%> (+6.17%) :arrow_up:
src/distances.jl 95.00% <96.72%> (+1.66%) :arrow_up:
src/optimizers.jl 96.96% <96.96%> (+47.60%) :arrow_up:
src/tomography/fulltomography.jl 97.43% <97.43%> (ø)
... and 19 more

Continue to review full report at Codecov.

Legend - Click here to learn more Δ = absolute <relative> (impact), ø = not affected, ? = missing data Powered by Codecov. Last update 11c250b...51acb6d. Read the comment docs.

GTorlai commented 2 years ago

Ready to merge once Observers.jl is registered (late Tuesday evening)

mtfishman commented 2 years ago

It looks like there has been some work splitting off the Flux Optimisers to a separate package (https://github.com/FluxML/Optimisers.jl), should we try using that so we don't have the full Flux dependency?

GTorlai commented 2 years ago

Right now we only use the optimizer, but once we merge the variationalcircuit branch we will also use AD. Maybe there is a way to also only import chunks of it.

mtfishman commented 2 years ago

You don't need all of Flux for AD, just Zygote. Flux basically just adds a neural network framework on top of Zygote.