Skip to content

Commit

Permalink
Add QGF data type for Galois Fields (#1433)
Browse files Browse the repository at this point in the history
* Add QGF data type for Galois Fields

* Update requirements

* More docstrings

* debugging ci

* debugging ci

* debugging ci - no parallel nb

* roll back debugging changes

* Just set it in an env variable

* More tests, change str

* Fix test

* Address nits

---------

Co-authored-by: Matthew Harrigan <[email protected]>
  • Loading branch information
tanujkhattar and mpharrigan authored Oct 4, 2024
1 parent b3000cb commit 6036ad7
Show file tree
Hide file tree
Showing 14 changed files with 275 additions and 51 deletions.
2 changes: 2 additions & 0 deletions .github/workflows/ci.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -65,6 +65,8 @@ jobs:
pip install --no-deps -e .
- run: |
python dev_tools/execute-notebooks.py
env:
NUMBA_NUM_THREADS: 4
format:
runs-on: ubuntu-latest
Expand Down
1 change: 1 addition & 0 deletions dev_tools/requirements/deps/runtime.txt
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ numpy
sympy
cirq-core==1.4
fxpmath
galois

# qualtran/testing.py
nbconvert
Expand Down
33 changes: 20 additions & 13 deletions dev_tools/requirements/envs/dev.env.txt
Original file line number Diff line number Diff line change
Expand Up @@ -123,7 +123,7 @@ defusedxml==0.7.1
# via nbconvert
deprecation==2.1.0
# via openfermion
dill==0.3.8
dill==0.3.9
# via pylint
distlib==0.3.8
# via virtualenv
Expand Down Expand Up @@ -161,21 +161,23 @@ fqdn==1.5.1
# via jsonschema
fxpmath==0.4.9
# via -r deps/runtime.txt
galois==0.4.2
# via -r deps/runtime.txt
graphviz==0.20.3
# via qref
greenlet==3.1.1
# via sqlalchemy
grpcio==1.66.1
grpcio==1.66.2
# via grpcio-tools
grpcio-tools==1.66.1
grpcio-tools==1.66.2
# via -r deps/packaging.txt
h11==0.14.0
# via httpcore
h5py==3.12.1
# via
# openfermion
# pyscf
httpcore==1.0.5
httpcore==1.0.6
# via httpx
httpx==0.27.2
# via jupyterlab
Expand All @@ -201,7 +203,7 @@ ipykernel==6.29.5
# -r deps/pytest.txt
# jupyterlab
# myst-nb
ipython==8.27.0
ipython==8.28.0
# via
# -r deps/runtime.txt
# ipykernel
Expand All @@ -224,7 +226,7 @@ jaraco-classes==3.4.0
# via keyring
jaraco-context==6.0.1
# via keyring
jaraco-functools==4.0.2
jaraco-functools==4.1.0
# via keyring
jax==0.4.33
# via openfermion
Expand Down Expand Up @@ -395,14 +397,17 @@ notebook-shim==0.2.4
# jupyterlab
# notebook
numba==0.60.0
# via quimb
# via
# galois
# quimb
numpy==1.26.4
# via
# -r deps/runtime.txt
# ase
# cirq-core
# contourpy
# fxpmath
# galois
# h5py
# jax
# jaxlib
Expand Down Expand Up @@ -517,7 +522,7 @@ pyparsing==3.1.4
# bartiq
# matplotlib
# pydot
pyproject-hooks==1.1.0
pyproject-hooks==1.2.0
# via
# build
# pip-tools
Expand Down Expand Up @@ -562,9 +567,9 @@ qref==0.7.0
# via
# -r deps/runtime.txt
# bartiq
qsharp==1.8.0
qsharp==1.9.0
# via -r deps/runtime.txt
qsharp-widgets==1.8.0
qsharp-widgets==1.9.0
# via -r deps/runtime.txt
quimb==1.8.4
# via -r deps/runtime.txt
Expand Down Expand Up @@ -597,7 +602,7 @@ rfc3986-validator==0.1.1
# via
# jsonschema
# jupyter-events
rich==13.8.1
rich==13.9.1
# via twine
rpds-py==0.20.0
# via
Expand Down Expand Up @@ -677,7 +682,7 @@ terminado==0.18.1
# jupyter-server-terminals
tinycss2==1.3.0
# via nbconvert
tomli==2.0.1
tomli==2.0.2
# via
# black
# build
Expand Down Expand Up @@ -736,12 +741,14 @@ typing-extensions==4.12.2
# black
# cirq-core
# dash
# galois
# ipython
# mypy
# myst-nb
# pydantic
# pydantic-core
# pydata-sphinx-theme
# rich
# sqlalchemy
tzdata==2024.2
# via pandas
Expand All @@ -751,7 +758,7 @@ urllib3==2.2.3
# via
# requests
# twine
virtualenv==20.26.5
virtualenv==20.26.6
# via -r deps/packaging.txt
wcwidth==0.2.13
# via prompt-toolkit
Expand Down
17 changes: 12 additions & 5 deletions dev_tools/requirements/envs/docs.env.txt
Original file line number Diff line number Diff line change
Expand Up @@ -204,6 +204,10 @@ fxpmath==0.4.9
# via
# -c envs/dev.env.txt
# -r deps/runtime.txt
galois==0.4.2
# via
# -c envs/dev.env.txt
# -r deps/runtime.txt
graphviz==0.20.3
# via
# -c envs/dev.env.txt
Expand All @@ -216,7 +220,7 @@ h11==0.14.0
# via
# -c envs/dev.env.txt
# httpcore
httpcore==1.0.5
httpcore==1.0.6
# via
# -c envs/dev.env.txt
# httpx
Expand Down Expand Up @@ -246,7 +250,7 @@ ipykernel==6.29.5
# -c envs/dev.env.txt
# jupyterlab
# myst-nb
ipython==8.27.0
ipython==8.28.0
# via
# -c envs/dev.env.txt
# -r deps/runtime.txt
Expand Down Expand Up @@ -455,6 +459,7 @@ notebook-shim==0.2.4
numba==0.60.0
# via
# -c envs/dev.env.txt
# galois
# quimb
numpy==1.26.4
# via
Expand All @@ -463,6 +468,7 @@ numpy==1.26.4
# cirq-core
# contourpy
# fxpmath
# galois
# matplotlib
# numba
# pandas
Expand Down Expand Up @@ -613,11 +619,11 @@ qref==0.7.0
# -c envs/dev.env.txt
# -r deps/runtime.txt
# bartiq
qsharp==1.8.0
qsharp==1.9.0
# via
# -c envs/dev.env.txt
# -r deps/runtime.txt
qsharp-widgets==1.8.0
qsharp-widgets==1.9.0
# via
# -c envs/dev.env.txt
# -r deps/runtime.txt
Expand Down Expand Up @@ -756,7 +762,7 @@ tinycss2==1.3.0
# via
# -c envs/dev.env.txt
# nbconvert
tomli==2.0.1
tomli==2.0.2
# via
# -c envs/dev.env.txt
# jupyterlab
Expand Down Expand Up @@ -808,6 +814,7 @@ typing-extensions==4.12.2
# async-lru
# cirq-core
# dash
# galois
# ipython
# myst-nb
# pydantic
Expand Down
17 changes: 12 additions & 5 deletions dev_tools/requirements/envs/format.env.txt
Original file line number Diff line number Diff line change
Expand Up @@ -190,6 +190,10 @@ fxpmath==0.4.9
# via
# -c envs/dev.env.txt
# -r deps/runtime.txt
galois==0.4.2
# via
# -c envs/dev.env.txt
# -r deps/runtime.txt
graphviz==0.20.3
# via
# -c envs/dev.env.txt
Expand All @@ -198,7 +202,7 @@ h11==0.14.0
# via
# -c envs/dev.env.txt
# httpcore
httpcore==1.0.5
httpcore==1.0.6
# via
# -c envs/dev.env.txt
# httpx
Expand All @@ -221,7 +225,7 @@ ipykernel==6.29.5
# via
# -c envs/dev.env.txt
# jupyterlab
ipython==8.27.0
ipython==8.28.0
# via
# -c envs/dev.env.txt
# -r deps/runtime.txt
Expand Down Expand Up @@ -401,6 +405,7 @@ notebook-shim==0.2.4
numba==0.60.0
# via
# -c envs/dev.env.txt
# galois
# quimb
numpy==1.26.4
# via
Expand All @@ -409,6 +414,7 @@ numpy==1.26.4
# cirq-core
# contourpy
# fxpmath
# galois
# matplotlib
# numba
# pandas
Expand Down Expand Up @@ -551,11 +557,11 @@ qref==0.7.0
# -c envs/dev.env.txt
# -r deps/runtime.txt
# bartiq
qsharp==1.8.0
qsharp==1.9.0
# via
# -c envs/dev.env.txt
# -r deps/runtime.txt
qsharp-widgets==1.8.0
qsharp-widgets==1.9.0
# via
# -c envs/dev.env.txt
# -r deps/runtime.txt
Expand Down Expand Up @@ -646,7 +652,7 @@ tinycss2==1.3.0
# via
# -c envs/dev.env.txt
# nbconvert
tomli==2.0.1
tomli==2.0.2
# via
# -c envs/dev.env.txt
# black
Expand Down Expand Up @@ -700,6 +706,7 @@ typing-extensions==4.12.2
# black
# cirq-core
# dash
# galois
# ipython
# pydantic
# pydantic-core
Expand Down
4 changes: 2 additions & 2 deletions dev_tools/requirements/envs/pip-tools.env.txt
Original file line number Diff line number Diff line change
Expand Up @@ -20,12 +20,12 @@ pip-tools==7.4.1
# via
# -c envs/dev.env.txt
# -r deps/pip-tools.txt
pyproject-hooks==1.1.0
pyproject-hooks==1.2.0
# via
# -c envs/dev.env.txt
# build
# pip-tools
tomli==2.0.1
tomli==2.0.2
# via
# -c envs/dev.env.txt
# build
Expand Down
Loading

0 comments on commit 6036ad7

Please sign in to comment.