QuantumBFS / ZXCalculus.jl

An implementation of ZX-calculus in Julia
http://yaoquantum.org/ZXCalculus.jl/dev/
MIT License
48 stars 7 forks source link

Improve performance #45

Closed ChenZhao44 closed 4 years ago

ChenZhao44 commented 4 years ago

I changed the data structure of the ZXLayout and fixed many issues that cause bad performance. Also, a benchmark test is provided.

codecov[bot] commented 4 years ago

Codecov Report

Merging #45 into master will decrease coverage by 0.92%. The diff coverage is 91.99%.

Impacted file tree graph

@@            Coverage Diff             @@
##           master      #45      +/-   ##
==========================================
- Coverage   91.52%   90.59%   -0.93%     
==========================================
  Files          13       13              
  Lines        1085     1212     +127     
==========================================
+ Hits          993     1098     +105     
- Misses         92      114      +22     
Impacted Files Coverage Δ
src/zx_graph.jl 83.23% <78.12%> (-15.87%) :arrow_down:
src/circuit_extraction.jl 75.65% <82.00%> (+5.33%) :arrow_up:
src/zx_layout.jl 93.75% <93.75%> (+8.03%) :arrow_up:
src/zx_diagram.jl 97.14% <96.84%> (-1.57%) :arrow_down:
src/rules.jl 97.28% <99.31%> (-0.20%) :arrow_down:
src/Multigraphs/abstract_multigraph.jl 63.33% <100.00%> (-3.34%) :arrow_down:
src/Multigraphs/multigraph_adjlist.jl 98.87% <100.00%> (+1.25%) :arrow_up:
src/phase_teleportation.jl 100.00% <100.00%> (ø)
... and 1 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 25f1b3c...2a007a8. Read the comment docs.