Releases: vprusso/toqito
toqito-v1.1.0
Many thanks to first-time contributors @Shivansh20128 and @FabienGhd, as well as returning contributor @tnemoz, for participating in this milestone.
Highlights
- List of new features: generate random orthonormal basis, compute matrix spark, checks to verify a matrix is anti-hermitian, doubly stochastic, stochastic
- Tensor products now utilize fast exponentiation
- Randomness related functions employ
seed
- Documentation employs a different theme
- toqito is compatible with Numpy 2.0, dependencies for
scikit-image
andqiskit
were removed cyclic_permutation
andrandom_circulant_gram
functions were renamedpure_to_mixed
was removed in favor ofvector_to_density_matrix
vector_to_density_matrix
was renamedinner_product
andoute_product
functions were removed
New Features
is_anti_hermitian
to check if a matrix is anti-hermitian was added inmatrix_props
, @tnemoz in #798- Functions that generate randomized matrices now allow a
seed
as input, @tnemoz in #842 random_orthonormal_basis
was added inrand
to generate a random orthonormal basis from the columns of a random unitary matrix, @purva-thakre in #821spark
added inmatrix_props
helps compute the spark of a matrix, @vprusso in #780- Checks to verify if a matrix is stochastic or doubly stochastic were added in
matrix_props
, @purva-thakre in #723 and #723
Other Changes
cyclic_permutation
inmatrices
was renamed tocyclic_permutation_matrix
, @FabienGhd in #682random_circulant_gram
inrand
was renamed torandom_circulant_gram
, @FabienGhd in #682pure_to_mixed
was removed in favor ofvector_to_density_matrix
,vector_to_density_matrix
renamed toto_density_matrix
, @Shivansh20128 in #853- Tensor products now utilize fast exponentiation, @tnemoz in #809
- Documentation employs a different theme, search inside documentation is also fixed, @vprusso and @purva-thakre in #836
- toqito is compatible with Numpy 2.0, @purva-thakre in #754
- Infix operator replaces instances of
*
for matrix multiplication, @vprusso in #797 scikit-image
was removed fromsetup.py
, @vprusso in #819- Deprecated usage of
csr_matrix
anddia_matrix
inperms/permute_systems
was removed, @purva-thakre in #816 - BCS conversion error for upper and lower bounds on the quantum value was corrected, @vprusso in #811
- Unused
cvx_kron
function was removed, @vprusso in #795 inner_product
andoute_product
functions were removed in favor ofnp.vdot
andnp.outer
, @vprusso in #833
What's Changed
- Bump certifi from 2024.2.2 to 2024.7.4 by @dependabot in #660
- Bump urllib3 from 2.2.1 to 2.2.2 by @dependabot in #661
- Bump rustworkx from 0.15.0 to 0.15.1 by @dependabot in #662
- Bump setuptools from 70.0.0 to 70.3.0 by @dependabot in #663
- Bump qdldl from 0.1.7.post2 to 0.1.7.post4 by @dependabot in #664
- Bump ecos from 2.0.13 to 2.0.14 by @dependabot in #665
- Bump osqp from 0.6.4 to 0.6.7.post0 by @dependabot in #666
- Bump typing-extensions from 4.11.0 to 4.12.2 by @dependabot in #668
- Bump prompt-toolkit from 3.0.43 to 3.0.47 by @dependabot in #669
- Bump requests from 2.32.1 to 2.32.3 by @dependabot in #667
- Bump clarabel from 0.7.1 to 0.9.0 by @dependabot in #670
- Bump packaging from 24.0 to 24.1 by @dependabot in #672
- Bump coverage from 7.5.4 to 7.6.0 by @dependabot in #673
- Bump astroid from 3.1.0 to 3.2.3 by @dependabot in #674
- Adding additional test cases for more coverage. by @vprusso in #671
- Bump sphinx from 7.3.7 to 7.4.0 by @dependabot in #687
- Bump exceptiongroup from 1.2.1 to 1.2.2 by @dependabot in #686
- Rename Random Circulant Gram to Random Circulant Gram Matrix by @FabienGhd in #681
- Rename Cyclic Permutation to Cyclic Permutation Matrix by @FabienGhd in #682
- Bump ruff from 0.5.1 to 0.5.2 by @dependabot in #685
- Adding reference section to fix broken references. by @vprusso in #688
- Bump sphinx from 7.4.0 to 7.4.4 by @dependabot in #690
- Bump sphinx from 7.4.4 to 7.4.5 by @dependabot in #691
- Bump setuptools from 70.3.0 to 71.0.1 by @dependabot in #692
- Bump ruff from 0.5.2 to 0.5.3 by @dependabot in #695
- Bump setuptools from 71.0.1 to 71.0.3 by @dependabot in #694
- Bump sphinx from 7.4.5 to 7.4.6 by @dependabot in #693
- Bump sphinx-autoapi from 3.1.2 to 3.2.0 by @dependabot in #698
- Bump pure-eval from 0.2.2 to 0.2.3 by @dependabot in #699
- Bump setuptools from 71.0.3 to 71.1.0 by @dependabot in #700
- Bump mypy from 1.10.1 to 1.11.0 by @dependabot in #697
- Bump sphinxcontrib-htmlhelp from 2.0.5 to 2.0.6 by @dependabot in #705
- Bump astroid from 3.2.3 to 3.2.4 by @dependabot in #704
- Bump sphinx from 7.4.6 to 7.4.7 by @dependabot in #703
- Bump pytest from 8.2.2 to 8.3.1 by @dependabot in #702
- Bump ruff from 0.5.3 to 0.5.4 by @dependabot in #701
- Bump sphinxcontrib-qthelp from 1.0.7 to 1.0.8 by @dependabot in #706
- Bump sphinx-autoapi from 3.1.2 to 3.2.0 by @dependabot in #707
- Bump sympy from 1.13.0 to 1.13.1 by @dependabot in #708
- Bump sympy from 1.13.0 to 1.13.1 by @dependabot in #711
- Bump osqp from 0.6.7.post0 to 0.6.7.post1 by @dependabot in #710
- Bump sphinx-autoapi from 3.2.0 to 3.2.1 by @dependabot in #709
- Bump sphinx-autoapi from 3.2.0 to 3.2.1 by @dependabot in #712
- Bump ruff from 0.5.4 to 0.5.5 by @dependabot in #713
- Bump pytest from 8.3.1 to 8.3.2 by @dependabot in #714
- Bump sphinxcontrib-qthelp from 1.0.8 to 2.0.0 by @dependabot in #720
- Bump sphinxcontrib-applehelp from 1.0.8 to 2.0.0 by @dependabot in #715
- Bump sphinxcontrib-devhelp from 1.0.6 to 2.0.0 by @dependabot in #716
- Bump setuptools from 71.1.0 to 72.0.0 by @dependabot in #717
- Bump sphinxcontrib-htmlhelp from 2.0.6 to 2.1.0 by @dependabot in #718
- Bump sphinxcontrib-serializinghtml from 1.1.10 to 2.0.0 by @dependabot in #719
- Bump setuptools from 72.0.0 to 72.1.0 by @dependabot in #721
- Bump mypy from 1.11.0 to 1.11.1 by @dependabot in #722
- Bump ruff from 0.5.5 to 0.5.6 by @dependabot in #729
- Bump astroid from 3.2.4 to 3.3.0 by @dependabot in #728
- Bump pycodestyle from 2.12.0 to 2.12.1 by @dependabot in #727
- Bump coverage from 7.6.0 to 7.6.1 by @dependabot in #724
- Bump flake8 from 7.1.0 to 7.1.1 by @dependabot in #725
- Bump black from 24.4.2 to 24.8.0 by @dependabot in #726
- Bump myst-parser from 3.0.1 to 4.0.0 by @dependabot in #730
- Bump sphinx from 7.4.7 to 8.0.2 by @dependabot in #732
- Bump astroid from 3.3.0 to 3.3.1 by @dependabot in #734
- Bump pyyaml from 6.0.1 to 6.0.2 by @dependabot in #733
- Condense two nonnegative functions by @purva-thakre in #731
matrix_props
: Check if stochastic or doubly stochastic by @purva-thakre in #723- Bump alabaster from 0.7.16 to 1.0.0 by @dependabot in https://github.com/vprusso/...
toqito-v1.0.9
What's Changed
- Update pytest requirement from 8.0.0 to 8.0.1 by @dependabot in #475
- Update ruff requirement from 0.2.1 to 0.2.2 by @dependabot in #476
- Update coverage requirement from 7.4.1 to 7.4.2 by @dependabot in #477
- Update qiskit requirement from 1.0.0 to 1.0.1 by @dependabot in #480
- Update ipython requirement from 8.21.0 to 8.22.1 by @dependabot in #481
- Update PR template by @purva-thakre in #483
- Update issue templates by @vprusso in #484
- Fix #478 : Rename shift and clock matrices to gen_pauli_x and gen_pauli_z by @MohitKambli in #479
- Update coverage requirement from 7.4.2 to 7.4.3 by @dependabot in #491
- Update pytest requirement from 8.0.1 to 8.0.2 by @dependabot in #489
- Update pylint requirement from 3.0.3 to 3.1.0 by @dependabot in #490
- test expected output by @Bchass in #486
- Parameterizing swap tests. by @vprusso in #493
- Update ruff requirement from 0.2.2 to 0.3.0 by @dependabot in #496
- Convert reduction to array by @Bchass in #495
- Update pytest requirement from 8.0.2 to 8.1.0 by @dependabot in #500
- Bump sphinx-wagtail-theme from 6.2.0 to 6.3.0 by @dependabot in #499
- Update ipython requirement from 8.22.1 to 8.22.2 by @dependabot in #502
- Bump sphinx-wagtail-theme from 6.2.0 to 6.3.0 by @dependabot in #501
- Update ruff requirement from 0.3.0 to 0.3.1 by @dependabot in #503
- Update qiskit requirement from 1.0.1 to 1.0.2 by @dependabot in #504
- Update mypy requirement from 1.8.0 to 1.9.0 by @dependabot in #506
- Update ruff requirement from 0.3.1 to 0.3.2 by @dependabot in #507
- Moving is distinguishable test to proper location. by @vprusso in #505
- Update pytest requirement from 8.1.0 to 8.1.1 by @dependabot in #508
- Ruff format by @purva-thakre in #510
- Update coverage requirement from 7.4.3 to 7.4.4 by @dependabot in #513
- Update ruff requirement from 0.3.2 to 0.3.3 by @dependabot in #515
- Update ruff requirement from 0.3.3 to 0.3.4 by @dependabot in #516
- Update pytest-cov requirement from 4.1.0 to 5.0.0 by @dependabot in #520
- Minor changes to punctuation and code rendering for documentation. by @vprusso in #517
- Updating and improving README. by @vprusso in #524
- Update ipython requirement from 8.22.2 to 8.23.0 by @dependabot in #525
- Update ruff requirement from 0.3.4 to 0.3.5 by @dependabot in #526
- Update scipy requirement from 1.12.0 to 1.13.0 by @dependabot in #527
- gen_gell_mann refactor by @Bchass in #521
- Refactor antisymmetric_projection by @Bchass in #523
- Pretty good pretty bad measurements by @vprusso in #522
- Make sure doctest job tests examples in tutorials by @purva-thakre in #542
- Doctest examples - output types by @purva-thakre in #540
- pauli refactor by @Bchass in #539
- Update ruff requirement from 0.3.5 to 0.3.7 by @dependabot in #548
- Update cvxpy requirement from 1.4.2 to 1.4.3 by @dependabot in #549
- Update sphinx requirement from 7.2.6 to 7.3.5 by @dependabot in #550
- Update sphinx requirement from 7.3.5 to 7.3.6 by @dependabot in #551
- Update sphinx requirement from 7.3.6 to 7.3.7 by @dependabot in #553
- Update ruff requirement from 0.3.7 to 0.4.0 by @dependabot in #552
- Update ruff requirement from 0.4.0 to 0.4.1 by @dependabot in #564
- Simplifying gitignore file. by @vprusso in #555
- Update coverage requirement from 7.4.4 to 7.5.0 by @dependabot in #568
- Update myst-parser requirement from 2.0.0 to 3.0.0 by @dependabot in #569
- Update documentation instructions by @purva-thakre in #566
- matrices: simplify gen_pauli_x construction by @atomgardner in #545
- Disable
black
by @purva-thakre in #567 - Update mypy requirement from 1.9.0 to 1.10.0 by @dependabot in #570
- Update ipython requirement from 8.23.0 to 8.24.0 by @dependabot in #571
- Update ruff requirement from 0.4.1 to 0.4.2 by @dependabot in #572
- Update pytest requirement from 8.1.1 to 8.2.0 by @dependabot in #574
- Update myst-parser requirement from 3.0.0 to 3.0.1 by @dependabot in #573
- Random doctest failures by @purva-thakre in #575
- Test generalized Pauli matrices by @atomgardner in #544
- Update ruff requirement from 0.4.2 to 0.4.3 by @dependabot in #578
- Update coverage requirement from 7.5.0 to 7.5.1 by @dependabot in #579
- Remove sparse matrix classes by @Bchass in #543
- Update cvxpy requirement from 1.4.3 to 1.5.0 by @dependabot in #580
- Update ruff requirement from 0.4.3 to 0.4.4 by @dependabot in #581
- Update cvxpy requirement from 1.5.0 to 1.5.1 by @dependabot in #582
- Update pylint requirement from 3.1.0 to 3.1.1 by @dependabot in #583
- Update pylint requirement from 3.1.1 to 3.2.0 by @dependabot in #584
- Add
toml
dependency groups by @purva-thakre in #585 - Update qiskit requirement from 1.0.2 to 1.1.0 by @dependabot in #589
- Remove pylint by @purva-thakre in #588
- Update pytest requirement from 8.2.0 to 8.2.1 by @dependabot in #590
- Bump sphinx-autoapi from 3.0.0 to 3.1.0 by @dependabot in #591
- Bump sphinx-autoapi from 3.0.0 to 3.1.0 by @dependabot in #592
- Update scipy requirement from 1.13.0 to 1.13.1 by @dependabot in #593
- Bump sphinx-autoapi from 3.1.0 to 3.1.1 by @dependabot in #594
- Update ruff requirement from 0.4.4 to 0.4.5 by @dependabot in #595
- Bump sphinx-autoapi from 3.1.0 to 3.1.1 by @dependabot in #596
- Update coverage requirement from 7.5.1 to 7.5.2 by @dependabot in #597
- Update ruff requirement from 0.4.5 to 0.4.6 by @dependabot in #599
- Update coverage requirement from 7.5.2 to 7.5.3 by @dependabot in #598
- Update scs requirement from 3.2.4.post1 to 3.2.4.post2 by @dependabot in #603
- Bump sympy from 1.12 to 1.12.1 by @dependabot in #604
- Update README.md by @anushkrishnav in #605
- Fixing misplaced & issue. by @vprusso in #608
- Ensure PSD operators are being optimized over proper space by @golanor in #600
- Bump sympy from 1.12 to 1.12.1 by @dependabot in #609
- Fix for Issue #401 by @Roshan-Thomas in #606
- Regenerated and updated codecov token. by @vprusso in #610
- Code block in
is_separable
by @purva-thakre in #611 - Update ipython requirement from 8.24.0 to 8.25.0 by @dependabot in #615
- Update ruff requirement from 0.4.6 to 0.4.7 by @dependabot in #616
- Upated Indexing from 1 -> 0 by @anushkrishnav in #602
- Update pytest requirement from 8.2.1 to 8.2.2 by @dependabot in #619
- Update ruff requirement from 0.4.7 to 0.4.8 by @d...
toqito-v1.0.8
Patched release to fix 1.0.7
What's Changed
- Add white background to logo by @purva-thakre in #466
- Add a workflow to check for examples in docs by @purva-thakre in #459
- Fixing PPT and other misc. by @vprusso in #469
- Adding package lines for sdist. by @vprusso in #472
- Update qiskit requirement from 0.46.0 to 1.0.0 by @dependabot in #474
- Theme change / dark mode by @Bchass in #416
Full Changelog: v1.0.7...v1.0.8
toqito-v1.0.7
1.0.7
Improvements
-
Numerous improvements to linting and overall improvement in project structure (PR-190, PR-192, PR-193, PR-195, PR-200, PR-205, PR-206 PR-212, PR-223, and others). Thanks to @purva-thakre for a bunch of work here!
-
Improved test coverage in channel fidelity(PR-232), CB norm (PR-234), and KP-norm (PR-246), and many more. Thanks to @purva-thakre!
-
Fixed RTD failing builds. PR-253.
-
Fix: Bug in state exclusion code PR-292
-
Optimizations to check if a set of vectors are mutually orthogonal. Improvement from O(n^2) to O(n). PR-250.
New Features
-
Generate a set of mutually unbiased bases for a given prime dimension. PR-272.
-
Check whether a given collection of quantum states described as vectors are antidistinguishable. PR-271.
-
Check whether a set of quantum states constitute an unextendible product basis or not. (thanks to @Newtech66 and @smtsjhr).
-
Check if a matrix is totally positive PR-274
-
Check if matrix is diagonally dominant (thanks to @elads888) PR-176
-
Determine whether a collection of vectors are linearly independent or not PR-324
-
Adding the BB84 states PR-327
-
Integrating the functionality to determine whether a collection of states comprise an unextendible product basis PR-328
-
Adding the PBR states PR-382
-
Generate random circulant gram matrix (thanks to @ankit-pn) PR-389
-
Generate random set of states with specified dimensions (thanks to @ankit-pn) PR-383
-
Compute CB norm of a quantum channel (thanks to @AmanieOxana) PR-157
-
Adding support for density matrix and vector input for state distinguishability and exclusion PR-462
unitaryHACK 2023
This release also contains contributions from unitaryHACK 2023 bounties! https://unitaryhack.dev/projects/toqito/
Many thanks to @georgios-ts, @ErikQQY, @purva-thakre, @Newtech66, @smtsjhr, @ryanprior, @AmanieOxana and @vprusso !
toqito-v1.0.5
-
Version bump to fix Python package versioning issue.
-
Adding
outer_product
andinner_product
functions inmatrix_ops
(thanks
to @juliusw352) -
Fixing random number generation in
random_density_matrix
function to be
obtained from Haar measure (thanks to @BCasale) -
Adding
to_nonlocal_game
function inXORGame
that converts an XOR game
definition to aNonlocalGame
object (thanks to @juliusw352) -
Adding
nonsignaling
function inXORGame
that calculates the nonsignaling
value of anXORGame
object (thanks to @juliusw352)
toqito-v1.0.4
v1.04 Updating version and including more tutorials.
toqito-v1.0.3
Updating to version 1.0.2
toqito-v1.0.2
Updating to version 1.0.2
toqito-v1.0
First official release for toqtio.
First release of toqito
This is the first release of the toqito software package.