Recent Releases of openfermion
openfermion - v1.7.1
OpenFermion version 1.7.1 has been released. The main change in this release is compatibility with NumPy 2. In addition to this, the release contains some minor bug fixes, dependency library updates, and overall repository upkeep. It's available from GitHub (https://github.com/quantumlib/OpenFermion) and PyPI (https://pypi.org/project/openfermion).
What's Changed
- Add checks for GitHub Actions workflows, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/969
- Add CodeQL workflow, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/970
- Add Scorecard workflow, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/971
- Only run Scorecard 1/day, not on every push, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/972
- Remove extra comma at end of .zenodo.json file, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/974
- Add JSON lint check to ci.yml, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/975
- Add Dockerfile linting to CI checks, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/981
- Make Dependabot not look at requirements/env, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/982
- Add .editorconfig file, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/990
- Add shellcheck for shell script linting, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/991
- Add OSV code scanner and make minor adjustments to CI, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/992
- Edit CONTRIBUTING.md, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/993
- Add markdownlint config file, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/995
- Fix warnings reported by shellcheck, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/997
- CI checks need to be run if ci.yml changes, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/998
- Add problem matchers for Mypy, Pytest, and Black, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/1000
- Update README badge for CI workflow status, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/1001
- Fix values of changed files variables, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/1002
- Update tutorial-requirements.txt to match regular deps, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/1003
- Run OSV scan on PRs if requirements files are changed, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/1004
- Ignore false positives from osv-scanner, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/1005
- Tiny edits to README, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/1009
- Add more comments & reformat slightly, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/1011
- Add comments, fix URLs, and reformat CITATION.cff, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/1012
- Fix typo in first paragraph, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/1013
- Revise nightly test & scan workflows, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/1015
- Add missing license headers, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/1016
- Fix a broken sentence, a misspelling, and update some text, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/1017
- Don't use --include-git-root option with osv-scanner, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/1018
- Update dot files, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/1019
- Silence asynciodefaultfixtureloopscope warnings, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/1025
- Add small icon image for use in Google Groups, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/1030
- Add workflow to trim Dependabot PR message bodies, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/1031
- Need to pass GH_TOKEN to "gh" command, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/1032
- Specify repo directly so checkout is not needed, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/1033
- Dependabot trimmer only needs to run on merge queues, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/1034
- Trigger on automergeenabled, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/1037
- Remove original dependabot-pr-trimmer.yaml, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/1043
- Fix broken math and other constructs in API documentation, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/1044
- Remove .zenodo.json file, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/1047
- Partly fix #1008 and #1024: update dependencies and environment files for NumPy 2, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/1055
- Set a fixed random seed during testing, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/1056
- Partly fix #1008 and #1024: adjust files to support NumPy 2, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/1057
- Fix #926: remove self-assignment, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/1058
- Fix #924: remove self-assignments, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/1059
- Add issue templates using GitHub forms, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/1061
- Fix #1062: ignore warning from a Cirq function about Qiskit, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/1063
- Ignore expected warnings during testing, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/1065
- Fix #1064: replace calls to deprecated method
orbital_energies, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/1066 - Add missing copyright headers, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/1067
- Remove CI badge, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/1069
- Fix Python 3.12 deprecation warning about os.fork(), by @mhucka in https://github.com/quantumlib/OpenFermion/pull/1070
- Fix warning about asyncio.geteventloop() in Python 3.12, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/1071
- Avoid division by zero in
adagrad, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/1072 - Version bump to 1.7.1, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/1073
- Fix a number of CodeQL code-scanning alerts, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/1074
- Update labels used by Dependabot, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/1075
Full Changelog: https://github.com/quantumlib/OpenFermion/compare/v1.7.0...v1.7.1
- Python
Published by mhucka 12 months ago
openfermion - v1.7.0
OpenFermion version 1.7.0 has been released. This new version contains new features, bug fixes, many dependency library updates, and overall repository upkeep. It's available from GitHub (https://github.com/quantumlib/OpenFermion) and PyPI (https://pypi.org/project/openfermion).
Compatibility notice
This release specifies updated versions of most Python packages and tools that OpenFermion depends upon, such as Cirq, and also raises the minimum version of Python needed to 3.10. These updates allow OpenFermion to keep pace with advancements in the Python ecosystem as well as get the latest bug fixes and improvements in its package dependencies.
If you encounter significant version conflicts with your environment or other Python packages that you need to use in conjunction with OpenFermion, please open an issue on GitHub and let us know.
What's Changed
New feature additions
- Make JAX config updates and expose
penalty_paramby @cvsik in https://github.com/quantumlib/OpenFermion/pull/894 - Add
MajoranaOperatorsupports operation with numbers, by @snow0369 in https://github.com/quantumlib/OpenFermion/pull/868 - Include
.h5data files inresource_estimates/integralsas part of the installation, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/968
Other changes
- Fix doc generation, by @dstrain115 in https://github.com/quantumlib/OpenFermion/pull/869
- Remove
cirq_google, by @dstrain115 in https://github.com/quantumlib/OpenFermion/pull/871 - Fix comparison in
freeze_orbitals, by @aleksey-uvarov in https://github.com/quantumlib/OpenFermion/pull/898 - Minor typo in
projects.md, by @vtomole in https://github.com/quantumlib/OpenFermion/pull/902 - Update the link to Nielsen's notes., by @vtomole in https://github.com/quantumlib/OpenFermion/pull/903
- Update CI worfklow actions & fix minor bug, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/909
- Add security policy statement, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/913
- Enhance CI workflows, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/914
- Fix nightly CI workflow failures, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/915
- Add Code of Conduct and
SUPPORT.mdfiles, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/916 - Modularize workflow & find working os/arch/python combos, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/917
- Use local reference to workflow path, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/919
- Add
.zenodo.jsonfile, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/921 - Split Pytest jobs into separate matrix & results steps, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/922
- Update
setup.pyinfo & add classifiers, keywords, maintainers, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/920 - Update versions of dependencies & regenerate envs/*.txt files, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/923
- Fix misc minor issues, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/933
- Minor enhancements to README file & fix to
setup.py, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/934 - Replace no-longer-available SciPy constructs, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/935
- Correct Nick Rubin's affiliation, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/937
- Raise SciPy version to 1.15 and update requirements accordingly, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/936
- Add testing on Python 3.13 to nightly tests, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/938
- Update version of Python used in CI max compat tests, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/940
- Add CONTRIBUTING.md file, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/941
- Update & enhance packaging scripts, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/943
- Remove doc source files from installation, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/945
- Add timeouts to jobs, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/946
- Improve efficiency by testing if any files changed, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/948
- Add YAML file linter, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/951
- Add GHA problem-matcher for pylint, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/957
- Pin action versions to commit hashes, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/959
- Use specific versions of GitHub runners, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/960
- Add CITATION.cff file, by @mhucka in https://github.com/quantumlib/OpenFermion/pull/966
New Contributors
- @snow0369 made their first contribution in https://github.com/quantumlib/OpenFermion/pull/868
- @cvsik made their first contribution in https://github.com/quantumlib/OpenFermion/pull/894
- @aleksey-uvarov made their first contribution in https://github.com/quantumlib/OpenFermion/pull/898
- @mhucka made their first contribution in https://github.com/quantumlib/OpenFermion/pull/909
Full Changelog: https://github.com/quantumlib/OpenFermion/compare/v1.6.1...v1.7.0
- Python
Published by mhucka over 1 year ago
openfermion - v1.6.1
What's Changed
- Bump requirements by @mpharrigan in https://github.com/quantumlib/OpenFermion/pull/854
- Reformat src/openfermion using black formatter. by @fdmalone in https://github.com/quantumlib/OpenFermion/pull/846
- Fix pytest deprecation warnings. by @fdmalone in https://github.com/quantumlib/OpenFermion/pull/852
- Fix scipy sqrtm precision issue by @fdmalone in https://github.com/quantumlib/OpenFermion/pull/864
- Remove limit on cirq by @fdmalone in https://github.com/quantumlib/OpenFermion/pull/867
Full Changelog: https://github.com/quantumlib/OpenFermion/compare/v1.6.0...v1.6.1
- Python
Published by fdmalone over 2 years ago
openfermion - v1.6.0
What's Changed
- Fix two openfermion docs by @dstrain115 in https://github.com/quantumlib/OpenFermion/pull/795
- Update DropNegligible to cirq.dropnegligibleoperations by @dstrain115 in https://github.com/quantumlib/OpenFermion/pull/799
- Matrix exponential of sparse matrix is not allowed by @dstrain115 in https://github.com/quantumlib/OpenFermion/pull/800
- Fix another expm doc error by @dstrain115 in https://github.com/quantumlib/OpenFermion/pull/801
- Change a few more sparse matrices to dense to get docs working by @dstrain115 in https://github.com/quantumlib/OpenFermion/pull/802
- Revert dense matrix by @dstrain115 in https://github.com/quantumlib/OpenFermion/pull/804
- Fix CI. by @fdmalone in https://github.com/quantumlib/OpenFermion/pull/816
- Rename
openfermion/third_party/toopenfermion/contrib/by @tanujkhattar in https://github.com/quantumlib/OpenFermion/pull/806 - Fixed deprecated import of OptimizeResult by @ica574 in https://github.com/quantumlib/OpenFermion/pull/811
- Apply suggestions from CommonTypos checker by @pavoljuhas in https://github.com/quantumlib/OpenFermion/pull/817
- Use pip-compile for CI dependencies by @mpharrigan in https://github.com/quantumlib/OpenFermion/pull/818
- Enable testing for resource estimates by @fdmalone in https://github.com/quantumlib/OpenFermion/pull/828
- Improve runtime type checking in symmetryconservingbravyi_kitaev by @kwkbtr in https://github.com/quantumlib/OpenFermion/pull/785
- [PBC Resources Estimates 1/4] Add k-point THC factorization by @fdmalone in https://github.com/quantumlib/OpenFermion/pull/821
freeze_orbitalsreflects thepruneflag by @mafaldaramoa in https://github.com/quantumlib/OpenFermion/pull/803- [PBC Resources Estimates 2/4] Add Integral Factorization Helpers by @fdmalone in https://github.com/quantumlib/OpenFermion/pull/822
- [PBC Resources Estimates 3/4] Add computation of lambda by @fdmalone in https://github.com/quantumlib/OpenFermion/pull/823
- [PBC Resources Estimates 4/4] Add costing functions by @fdmalone in https://github.com/quantumlib/OpenFermion/pull/824
- Switch to using the black formatter by @mpharrigan in https://github.com/quantumlib/OpenFermion/pull/835
- Use docker to pin dependencies by @mpharrigan in https://github.com/quantumlib/OpenFermion/pull/829
- Add black pyproject by @fdmalone in https://github.com/quantumlib/OpenFermion/pull/847
- Add resource estimates requirements as extras_require. by @fdmalone in https://github.com/quantumlib/OpenFermion/pull/841
- Bump version for release. by @fdmalone in https://github.com/quantumlib/OpenFermion/pull/848
- Fix setup resource path by @fdmalone in https://github.com/quantumlib/OpenFermion/pull/849
New Contributors
- @fdmalone made their first contribution in https://github.com/quantumlib/OpenFermion/pull/816
- @ica574 made their first contribution in https://github.com/quantumlib/OpenFermion/pull/811
- @pavoljuhas made their first contribution in https://github.com/quantumlib/OpenFermion/pull/817
- @kwkbtr made their first contribution in https://github.com/quantumlib/OpenFermion/pull/785
- @mafaldaramoa made their first contribution in https://github.com/quantumlib/OpenFermion/pull/803
Full Changelog: https://github.com/quantumlib/OpenFermion/compare/v1.5.1...v1.6.0
- Python
Published by fdmalone over 2 years ago
openfermion - v1.5.1
What's Changed
- Resolves failing cirq pre-release by @ncrubin in https://github.com/quantumlib/OpenFermion/pull/794
Full Changelog: https://github.com/quantumlib/OpenFermion/compare/v1.5.0...v1.5.1
Mainly fixes a issue with using linalg.expm instead of scipy.sparse.linalg.expm such that the right data types are being passed around.
- Python
Published by ncrubin almost 4 years ago
openfermion - v1.5.0
What's Changed
- Fix reference to deprecated SingleQubitGate by @dstrain115 in https://github.com/quantumlib/OpenFermion/pull/788
- Making OF compatible with cirq>0.15 by @ncrubin in https://github.com/quantumlib/OpenFermion/pull/793
Full Changelog: https://github.com/quantumlib/OpenFermion/compare/v1.4.0...v1.5.0
- Python
Published by ncrubin almost 4 years ago
openfermion - v1.4.0
What's Changed
- Reset version to "dev" by @mpharrigan in https://github.com/quantumlib/OpenFermion/pull/759
- fault-tolerant resource estimates for chemical hamiltonians by @jjgoings in https://github.com/quantumlib/OpenFermion/pull/763
- Fix QuadraticHamiltonian diagonalization by @kevinsung in https://github.com/quantumlib/OpenFermion/pull/772
- Reduced BCS type Hamiltonians by @cvmxn1 in https://github.com/quantumlib/OpenFermion/pull/770
- Fix cirq coverage test by @dstrain115 in https://github.com/quantumlib/OpenFermion/pull/779
- Fix cirq.google reference in docs. by @dstrain115 in https://github.com/quantumlib/OpenFermion/pull/778
- Move tutorial from cirq by @augustehirth in https://github.com/quantumlib/OpenFermion/pull/783
- DropNegligible was used but is deprecated. by @WhiteSymmetry in https://github.com/quantumlib/OpenFermion/pull/781
- Adds a link to the Q-Chem plugin in README by @epifanovsky in https://github.com/quantumlib/OpenFermion/pull/784
- Lookup dictionary for JW transformation of a FermionOperator by @alexfleury in https://github.com/quantumlib/OpenFermion/pull/777
- Pin Requirements to working cirq versions by @ncrubin in https://github.com/quantumlib/OpenFermion/pull/786
New Contributors
- @jjgoings made their first contribution in https://github.com/quantumlib/OpenFermion/pull/763
- @cvmxn1 made their first contribution in https://github.com/quantumlib/OpenFermion/pull/770
- @dstrain115 made their first contribution in https://github.com/quantumlib/OpenFermion/pull/779
- @augustehirth made their first contribution in https://github.com/quantumlib/OpenFermion/pull/783
- @WhiteSymmetry made their first contribution in https://github.com/quantumlib/OpenFermion/pull/781
- @epifanovsky made their first contribution in https://github.com/quantumlib/OpenFermion/pull/784
- @alexfleury made their first contribution in https://github.com/quantumlib/OpenFermion/pull/777
Full Changelog: https://github.com/quantumlib/OpenFermion/compare/v1.3.0...v1.4.0
- Python
Published by ncrubin almost 4 years ago
openfermion - v1.3.0
OpenFermion 1.3 is an incremental update with some fixes and improvements (see below). Crucially, we have moved from pinning to a specific version of Cirq to having a minimum supported version of Cirq (0.12 for this release).
Changes
- Implement Bravyi-Kitaev for InteractionOperator (#753)
- Fix unexpected behavior of symmetryconservingbravyi_kitaev (#734)
- Revamp CI: matrix, multi-Cirq (#755)
- Python
Published by mpharrigan over 4 years ago
openfermion - v1.2.0
Upgrade cirq compatibility.
What's Changed
- [Docs] Format math expressions by @rmlarose in https://github.com/quantumlib/OpenFermion/pull/738
- Adding mention of OpenFermion-FQE to the frontpage by @babbush in https://github.com/quantumlib/OpenFermion/pull/740
- Added functionality to compute one-norm of qubit/majorana Hamiltonian from molecular integrals by @Emieeel in https://github.com/quantumlib/OpenFermion/pull/725
- Updates linux CI to use 18.04 by @MichaelBroughton in https://github.com/quantumlib/OpenFermion/pull/747
- Updates fqe include path for site rendering by @MichaelBroughton in https://github.com/quantumlib/OpenFermion/pull/746
- Upgrade to cirq 0.12 by @tanujkhattar in https://github.com/quantumlib/OpenFermion/pull/748
- Version bump by @ncrubin in https://github.com/quantumlib/OpenFermion/pull/749
New Contributors
- @tanujkhattar made their first contribution in https://github.com/quantumlib/OpenFermion/pull/748
Full Changelog: https://github.com/quantumlib/OpenFermion/compare/v1.1.0...v1.2.0
- Python
Published by ncrubin over 4 years ago
openfermion - v1.0.1
Creating official release from March 6th v1.0.1 release of OpenFermion associated with commit ( c22551fbb8f7965c0d3fd0fc119ff2f8b569917a).
- Python
Published by ncrubin almost 5 years ago
openfermion - OpenFermion v1.0
This release is for the stable 1.0 version of OpenFermion. Significant changes from the 0.11 release have been made. The most notable changes are listed below.
Features:
MajoranaOperator <-> FermionOperator with Jordan-Wigner + Bravyi-Kitaev options, getmajorana acts like getfermion operator. Is_contextual for confirming if a Hamiltonian is contextual SymbolicOperator coefficients are sympy.Expr objects Partitioning schemes for measuring fermionic 1- and 2-RDMs Functionality for the Hartree-Fock project Spatial -> spin-orbital integrals Extended RPA Constructing a pure 2-body (reduced Hamiltonian) from 1-body and 2-body InteractionOperator. Construct antisymmeterized 2-electron integrals + coulomb + exchange matrices Verified phase estimation utilities
Organization:
Merging of OpenFermion-Cirq into OpenFermion Reorganize package (#620) (new submodules: chem, linalg, circuits, functionals, transforms) Sample data is integrated with package for testing. Reorganize utils Deprecation of Readthedocs as the documentation host. Docs are now generator by tensorflow-docs and hosted at https://quantumai.google/openfermion
- Python
Published by ncrubin over 5 years ago
openfermion - OpenFermion v0.11.0
Starting with this version, Python 2 is no longer supported. Other notable changes and additions:
- Functions to partition qubits into subsets for efficient measurement of Pauli strings: openfermion.binary_partition_iterator, openfermion.partition_iterator, openfermion.pauli_string_iterator.
- Added structure argument to openfermion.geometry_from_pubchem. It is recommended to set this to '3d' to ensure correct structures are returned (see https://github.com/quantumlib/OpenFermion/pull/544).
- openfermion.get_number_preserving_sparse_operator.
- openfermion.prony.
- Python
Published by kevinsung about 6 years ago
openfermion - OpenFermion v0.10.0
Notable changes and additions:
- Adds a new class, MajoranaOperator, to represent operators in the Majorana basis. Support for this operator added to openfermion.jordan_wigner and openfermion.bravyi_kitaev.
- Speeds up construction of jellium Hamiltonians by utilizing translation invariance
- openfermion.wedge
- Adds some utility methods to InteractionOperator
- Utilities for tapering off qubits using stabilizer conditions: openfermion.utils.taper_off_qubits, openfermion.utils.reduce_number_of_terms
- Fixes a bug that caused incompatibility with scipy 1.3.0
- Python
Published by kevinsung almost 7 years ago
openfermion - OpenFermion v0.9.0
Notable changes and additions:
- The diagonalizing_bogoliubov_transform method of openfermion.QuadraticHamiltonian now returns a tuple of three objects: the orbital energies, the transformation matrix, and a constant energy offset
- openfermion.FermiHubbardModel
- openfermion.IsingOperator
- openfermion.group_into_tensor_product_basis_sets
- Improves low-rank decomposition to work in spatial orbital basis rather than spin-orbital basis
- SymbolicOperator is now an abstract base class
- Specialized routines to compute commutators of Diagonal coulomb operators faster
- Updated Docker image to include OpenFermion-Cirq
- Default absolute precision for floating point operations changed from 1e-12 to 1e-8
- Python
Published by kevinsung over 7 years ago
openfermion - OpenFermion v0.8
Eighth production release. Minor release necessitated by depending libraries. * Most importantly, new logo. * Functionality for performing low rank decompositions of two-body operators. * Small additions of helper functions for more flexible testing.
- Python
Published by babbush almost 8 years ago
openfermion - OpenFermion v0.7
Seventh production release. Many new features introduced including:
- Method to obtain circuit that diagonalizes a QuadraticHamiltonian.
- Generalized equality and arithmetic operations for PolynomialTensor.
- Fixed minor bug in is_hermitian function.
- New DiagonalHamiltonian class for interacting fermion systems with diagonal two-body term.
- Human-readable IO for SymbolicOperator.
- Functions to map particle RDMs to hole RDMs and vice versa.
- Fixed bug in plane wave / dual Hamiltonian generation which occurred for even grids.
- Code to preprocess coefficients for LCU algorithm introduced in arXiv:1805.03662.
- LinearOperator class for efficient numerical diagonalization of QubitOperators.
- Routines to use Davidson routine for obtaining ground states using LinearOperator.
- Functions to automatically obtain MolecularData geometries from PubChem database.
- New BosonOperator class.
- Generation of Bose-Hubbard Hamiltonians.
- Functions to automatically remove redundant qubits post-BK transformation.
- Added functionality to generate plane wave / dual basis Hamiltonians with reduced periodicity.
- Links to Xanadu Strawberry Fields "OpenBoson" library.
- Python
Published by babbush almost 8 years ago
openfermion - OpenFermion v0.6
Unfortunately a change between v0.4 and v0.5 introduced a circular dependency in the setup script that caused an install problem with the v0.5 release for some environments. The v0.6 release corrects that issue and also reconfigures our continuous integration testing so that problems like this will be more easily detected in the future.
- Python
Published by babbush about 8 years ago
openfermion - OpenFermion v0.5
Fifth production release, necessary due to some reorganization of modules as well as:
- Fixed bug in the Jordan-Wigner transform applied to InteractionOperators.
- Fixed bug in the Bravyi-Kitaev Superfast Transform which caused some terms to be ignored.
- Fixed bug in binary code transforms causing creation operators to map to annihilation operators.
- Changed implementation of the Bravyi-Kitaev transform to use from arXiv:quant-ph/0003137.
- We now implement BK transform from arXiv:1701.07072 under a different name.
- Renamed SymbolicBinary as BinaryPolynomial.
- Changed the convention used in the function for instantiating Majorana fermion operators.
- Introduced new syntax for instantiating FermionOperators and QubitOperators with a single factor.
- Added the fermionic spin operators Sx and Sy to the special operators module.
- Added a demo of the Jordan-Wigner and Bravyi-Kitaev transforms.
- Python
Published by babbush about 8 years ago
openfermion - OpenFermion v0.4
Fourth production release. This is a major update introducing many new features: * Added (alpha version) of a "cloud library" for sharing / storing molecular data files. * Added routines for generating special FermionOperators such as Sz, S^2, S^+, etc. * Added SymbolicOperator as parent class from which FermionOperator/QubitOperator inherit. * Added flexible method of initializing classes derived from SymbolicOperators from strings. * Fixed some numerical instabilities in sparse operator routines. * Fixed some minor bugs with the saving and loading of FermionOperator/QubitOperator. * Added some preliminary routines for generating quantum phase estimation circuits. * Added substantial infrastructure for generalized fermion transforms based on arXiv:1712.07067. * Added non-linear encoders for transforming fermions with reduced spatial complexity. * Changed conventions for how fermion modes are ordered in terms of the spin index. * Added routines to transform functions for reordering fermion modes prior to transform. * New demos for Given routine procedures and generalized fermion encodings.
- Python
Published by babbush about 8 years ago
openfermion - OpenFermion v0.3
Third production release. Fixes a crucial bug related to rotating molecular orbitals. Also: * Adds code for Verstraete-Cirac transform. * Allows users to write "from OpenFermion import *". * Fixes minor bugs in code to generate spinless Hubbard models. * Adds functionality for computing Trotter errors.
- Python
Published by babbush over 8 years ago
openfermion - OpenFermion v0.2
Second production release. Adds significant functionality including (but not limited to): * Generalizes the InteractionTensor class to handle arbitrary marginals. Now called PolynomialTensor. * Adds a data structure for manipulating quadratic Hamiltonians called QuadraticHamiltonian. * Adds code to prepare Slater determinants by Givens rotations. * Adds code to obtain eigenstates of quadratic Hamiltonians and circuits to prepare them. * Adds code to implement general n-body rotations of PolynomialTensor using np.einsum. * Adds code to compute the BCH expansion of our operator types to arbitrary order. * Adds code for simulating basic error channels including the depolarizing channel. * Adds code for outputting fermionic circuit specifications as QASM strings. * Minor bug fixes pertaining to conventions around Jordan-Wigner ordering and basis rotations. * Minor bug fixes pertaining to the generating and storage of HDF5 MolecularData files.
- Python
Published by babbush over 8 years ago
openfermion - OpenFermion v0.1
First production release! Improvements over previous alpha version includes: * Updated Docker image. * Updated README and docker installation instructions. * Fixed a small bug in the mean-field D-Wave Hamiltonian generation. * Moved unitary coupled cluster code back to OpenFermion. * Added Hubbard model with particle-hole symmetry.
- Python
Published by babbush over 8 years ago
openfermion - OpenFermion v0.1a4
- Updates molecular data structure to allow for use with abstract molecules.
- Fixes error in docker file and improves docker instructions.
- Some bug fixes for model Hamiltonians.
- Adds routine for mean-field state preparation circuits.
- Python
Published by jarrodmcc over 8 years ago
openfermion - OpenFermion v0.1a3
- Rearranged repo to contain "hamiltonians" module (breaks older plugin versions).
- Added Docker image for robust installation.
- Added code for generating mean-field D-Wave Hamiltonians.
- Added code for preparing arbitrary Slater determinants via Givens' rotations.
- Many minor changes to documentation.
- Python
Published by babbush over 8 years ago
openfermion - OpenFermion v0.1a1
- Added a large number of robust tests.
- Removed unnecessary library dependancies.
- Polished the readme and other documentation.
- Added code to generate N-Representability equality constraints.
- Added code to use N-Representability equality constraints to project Hamiltonians.
- Python
Published by babbush over 8 years ago
openfermion - OpenFermion v0.1a0
The first alpha release of OpenFermion. Substantial changes from fork of FermiLib include removing explicit dependencies on ProjectQ and relocating the "circuits" module to a plugin, OpenFermion-ProjectQ.
Initial commit made on behalf of Ryan Babbush (Google), Jarrod McClean (Google), Ian Kivlichan (Harvard), Damian Steiger (ETH Zurich), Wei Sun (Google), Craig Gidney (Google), Thomas Haner (ETH Zurich), Hannah Sim (Harvard), Vojtech Havlicek (Oxford), Kanav Setia (Dartmouth), Nicholas Rubin (Rigetti), Matthew Neeley (Google) and Dave Bacon (Google).
- Python
Published by babbush over 8 years ago