A software package for enumerating lattice points in convex polyhedra
Project description
latticepts
Nate MacFadden, Liam McAllister Group, Cornell
Fast lattice point enumeration for convex polyhedra. A C/Cython implementation of Kannan's algorithm, significantly outperforming Normaliz and OR-Tools CP-SAT in speed for certain problems. As one performance example: latticepts generates ~107M lattice points in the strict interior of an example 7D cone ('Manwe') in ~23s. See the benchmarks for benchmarking plots.
Citation
If you use latticepts in your research, please cite it:
@software{latticepts,
author = {MacFadden, Nate},
title = {latticepts},
doi = {10.5281/zenodo.19406651},
url = {https://github.com/natemacfadden/latticepts},
orcid = {0000-0002-8481-3724},
}
Description
More explicitly, latticepts enumerates lattice points
$$ \{x\in\mathbb{Z}^{\text{dim}}: Hx\geq\text{rhs}\} $$
for $H\in\mathbb{Z}^{N_\text{hyps}\times\text{dim}}$ and $\text{rhs}\in\mathbb{Z}^{N_\text{hyps}}$. Here each row of $H$ is an inward-facing facet normal and the corresponding entry of $\text{rhs}$ is its offset. Cones correspond to $\text{rhs}=0$; 'stretched cones' (e.g., for finding strict interior points) correspond to $\text{rhs} > 0$; polyhedra to general $\text{rhs}$.
Limitations
- Maximum dimension: 256. For convex cones,
latticeptsexcels at low-dimensions. It can become sluggish in comparison to alternatives at higher-dimensions (well before 256) - Windows is not supported: the C kernel uses C99 variable-length arrays, which MSVC does not support
Installation
pip install -e .
Requires a C compiler and Cython. NumPy must be installed first.
Algorithm Notes
This repo contains a Cython wrapper of a C implementation of Kannan's algorithm. See this webpage for some other relevant work (not by me). The specific implementation in this repo is for lattice point enumeration in square boxes $|x_i|\leq B$ for $B\geq 1$. I.e.,
$$ \{x\in\mathbb{Z}^{\text{dim}}: Hx\geq\text{rhs} \text{ and } |x|_\infty \leq B\}. $$
It is a short algorithm, only $\leq 350$ lines - I encourage you to read it. If Python is easier to follow, reference/kannan_reference.py is a pedagogical numba.njit port of the same algorithm. The Python port is efficient but has less options than box_enum (scalar rhs only, so cones and stretched cones but not general polyhedra) and is not used at runtime.
A helper method to box_enum is provided in case the user wants $N$ points but doesn't care about box size. One such task here is for enumerating some lattice points in convex cones. In this case, boxes of increasing sizes $B$ are studied until $\geq N$ lattice points are found.
Benchmarks
Convex cones: runtime vs requested number of interior lattice points in a cone (i.e., not on the boundary). The cone studied is the 7D 'Manwe' from https://arxiv.org/abs/2406.13751:
Polytopes: runtime to enumerate all contained lattice points for various 4D reflexive polytopes. Size of the polytope is measured by h11 with one polytope per h11 value, h11 = 6..491:
More polytopes: runtime vs dimension of length-2 hypercubes $[0,2]^{dim}$ for dim = 2..14:
Usage
There are two primary interfaces. For unbounded polyhedra (e.g., cones), the focus is on efficiently generating a finite collection of lattice points. This can be done via enum_lattice_points which enumerates all lattice points with components bounded by $|x_i|\leq B$ in the polyhedron. The algorithm increases the size of $B$ until a user-requested number of points is found. See the following example of how to use this to get lattice points in the strict (since $rhs=1$) interior of a convex cone:
import numpy as np
from latticepts import enum_lattice_points
# Find at least 1000 lattice points in {x : H @ x >= rhs}
H = np.array([[1, 2], [3, -1]], dtype=np.int32)
rhs = 1
pts = enum_lattice_points(H=H, rhs=rhs, min_N_pts=1000)
# Optionally restrict to primitive vectors (GCD = 1)
pts = enum_lattice_points(H=H, rhs=rhs, min_N_pts=1000, primitive=True)
box_enum allows direct control over the box size $B$ instead of the number of lattice points. I.e., to enumerate all lattice points in $\{x: Hx \geq \text{rhs},\ |x|_\infty \leq B\}$:
from latticepts import box_enum
pts, status, N_nodes = box_enum(B=5, H=H, rhs=rhs, max_N_out=10_000)
# status: 0 = success, -1 = dim>256, -2 = hit max_N_out, -3 = hit max_N_nodes
# (statuses are also explained in the docstring)
box_enum is well suited to lattice point enumeration in polytopes (assuming an H-representation is known). For example, if one knows a bounding box of the polytope (if you have a V-representation, this is trivial: $B = \max|v_i|$ over all vertices), then the lattice point enumeration can be done as follows. Here's an example of the $h^{1,1}=491$ 4D reflexive polytope:
import numpy as np
from latticepts.box_enum import box_enum
H = np.array([[ 1, 0, 0, 0],
[-15, 8, 6, 1],
[-15, 8, 6, -1],
[ -1, 1, -1, 0],
[ 0, -1, 0, 0]], dtype=np.int32)
rhs = np.array([-1, -1, -1, -1, -1], dtype=np.int32)
# has bounding box B = max(|vertices|) = 42 (basis-dependent)
B = 42
# one can then get the lattice points via:
pts, status, N_nodes = box_enum(B=B, H=H, rhs=rhs, max_N_out=10_000)
Organization
latticepts/
├── latticepts/
│ ├── box_enum.h # STB-style library for the Kannan enumeration
| ├── box_enum.pyx # Cython wrapper
| └── latticepts.py # the enum_lattice_points wrapper for box_enum
├── tests/
│ ├── conftest.py # shared test helpers (pytest)
│ ├── test_box_enum.py # tests of box_enum
│ ├── test_manwe.py # tests relating to 'Manwe' (arXiv:2406.13751)
│ ├── test_enum_lattice_points.py # tests of enum_lattice_points
| └── c/ # simple C-kernel tests (no Python interface)
├── benchmarks/ # perf benchmarks; double as usage examples + make the README figures
│ ├── benchmark_box_enum.py # runtime vs B for the Manwe geometry (h11=491, 7D)
│ ├── benchmark_cytools.py # runtime vs CYTools' point enumeration
│ ├── benchmark_enum_lattice_points.py # runtime vs requested N for the Manwe cone (h11=491, 7D)
│ ├── benchmark_polytopes.py # runtime vs h11 for 4D reflexive polytopes; runtime vs dimension for hypercubes
│ └── benchmark_narrowness.py # runtime vs narrowness for a 4D convex cone
├── reference/
│ └── kannan_reference.py # readable pure-Python (numba.njit) port of the algorithm; not used at runtime
├── docs/ # README figures (benchmark_*.png)
├── pyproject.toml
└── setup.py
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file latticepts-0.1.4.tar.gz.
File metadata
- Download URL: latticepts-0.1.4.tar.gz
- Upload date:
- Size: 183.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
07370aaf2c0bbea39dc76e809de6245956f1848974424d72f2034def55f83ca2
|
|
| MD5 |
0a78b37b378eaf88853df63fefbf2636
|
|
| BLAKE2b-256 |
d3108d4f3022817a2d4bca27508a7d7fd181a0131705f69f2be478dba3afcaed
|
Provenance
The following attestation bundles were made for latticepts-0.1.4.tar.gz:
Publisher:
deploy.yml on natemacfadden/latticepts
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
latticepts-0.1.4.tar.gz -
Subject digest:
07370aaf2c0bbea39dc76e809de6245956f1848974424d72f2034def55f83ca2 - Sigstore transparency entry: 1695712362
- Sigstore integration time:
-
Permalink:
natemacfadden/latticepts@ca7c60efb5eca24c1247707b0448bdf93ddd5b4e -
Branch / Tag:
refs/tags/v0.1.4 - Owner: https://github.com/natemacfadden
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
deploy.yml@ca7c60efb5eca24c1247707b0448bdf93ddd5b4e -
Trigger Event:
release
-
Statement type:
File details
Details for the file latticepts-0.1.4-cp313-cp313-musllinux_1_2_x86_64.whl.
File metadata
- Download URL: latticepts-0.1.4-cp313-cp313-musllinux_1_2_x86_64.whl
- Upload date:
- Size: 700.5 kB
- Tags: CPython 3.13, musllinux: musl 1.2+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5a4c80b70f2814e5933bd6d8cc6b4cd90d5c4868a54af6031572cd67a284ea9a
|
|
| MD5 |
4c60010ec894dcb2504d0505f4ca8363
|
|
| BLAKE2b-256 |
0041596a273f732fb477ff9890d71f3c57f5d7c3a680cdec3cf52792fb051c6e
|
Provenance
The following attestation bundles were made for latticepts-0.1.4-cp313-cp313-musllinux_1_2_x86_64.whl:
Publisher:
deploy.yml on natemacfadden/latticepts
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
latticepts-0.1.4-cp313-cp313-musllinux_1_2_x86_64.whl -
Subject digest:
5a4c80b70f2814e5933bd6d8cc6b4cd90d5c4868a54af6031572cd67a284ea9a - Sigstore transparency entry: 1695714727
- Sigstore integration time:
-
Permalink:
natemacfadden/latticepts@ca7c60efb5eca24c1247707b0448bdf93ddd5b4e -
Branch / Tag:
refs/tags/v0.1.4 - Owner: https://github.com/natemacfadden
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
deploy.yml@ca7c60efb5eca24c1247707b0448bdf93ddd5b4e -
Trigger Event:
release
-
Statement type:
File details
Details for the file latticepts-0.1.4-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: latticepts-0.1.4-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 680.1 kB
- Tags: CPython 3.13, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f4708b9b17588cae9cdc7aa5afad4098155e36761dd4682b716f42dd506e257a
|
|
| MD5 |
d0ce82a716cded8407f4defa7fea9c51
|
|
| BLAKE2b-256 |
e209800b0e220dd19cbbd667e325a4a7f5ed09155ab40a9477c5a61691b765b6
|
Provenance
The following attestation bundles were made for latticepts-0.1.4-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:
Publisher:
deploy.yml on natemacfadden/latticepts
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
latticepts-0.1.4-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl -
Subject digest:
f4708b9b17588cae9cdc7aa5afad4098155e36761dd4682b716f42dd506e257a - Sigstore transparency entry: 1695714112
- Sigstore integration time:
-
Permalink:
natemacfadden/latticepts@ca7c60efb5eca24c1247707b0448bdf93ddd5b4e -
Branch / Tag:
refs/tags/v0.1.4 - Owner: https://github.com/natemacfadden
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
deploy.yml@ca7c60efb5eca24c1247707b0448bdf93ddd5b4e -
Trigger Event:
release
-
Statement type:
File details
Details for the file latticepts-0.1.4-cp313-cp313-macosx_11_0_arm64.whl.
File metadata
- Download URL: latticepts-0.1.4-cp313-cp313-macosx_11_0_arm64.whl
- Upload date:
- Size: 260.7 kB
- Tags: CPython 3.13, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6cd2a9d3e11f283ab50700a5725c18bf39f090da3b347a46a2c190dfcc7c8c86
|
|
| MD5 |
3a14bdacf4cff0e860927a983f335a21
|
|
| BLAKE2b-256 |
ae2eee4532197b7613581407405ddd33255021191a1c7d74e14f5128debe888f
|
Provenance
The following attestation bundles were made for latticepts-0.1.4-cp313-cp313-macosx_11_0_arm64.whl:
Publisher:
deploy.yml on natemacfadden/latticepts
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
latticepts-0.1.4-cp313-cp313-macosx_11_0_arm64.whl -
Subject digest:
6cd2a9d3e11f283ab50700a5725c18bf39f090da3b347a46a2c190dfcc7c8c86 - Sigstore transparency entry: 1695713802
- Sigstore integration time:
-
Permalink:
natemacfadden/latticepts@ca7c60efb5eca24c1247707b0448bdf93ddd5b4e -
Branch / Tag:
refs/tags/v0.1.4 - Owner: https://github.com/natemacfadden
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
deploy.yml@ca7c60efb5eca24c1247707b0448bdf93ddd5b4e -
Trigger Event:
release
-
Statement type:
File details
Details for the file latticepts-0.1.4-cp313-cp313-macosx_10_13_x86_64.whl.
File metadata
- Download URL: latticepts-0.1.4-cp313-cp313-macosx_10_13_x86_64.whl
- Upload date:
- Size: 262.4 kB
- Tags: CPython 3.13, macOS 10.13+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e8d04e8e2acc2ad4ab60b929f5ce85153376a1caceb5a13f02ac52d2e9e6a2c0
|
|
| MD5 |
cb2966c26e2e9c03846e0709a23c0f6b
|
|
| BLAKE2b-256 |
d27d42cc70548c01afdfca17e6e7379f31ce6db755a7e60ef355bbe01ba0065b
|
Provenance
The following attestation bundles were made for latticepts-0.1.4-cp313-cp313-macosx_10_13_x86_64.whl:
Publisher:
deploy.yml on natemacfadden/latticepts
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
latticepts-0.1.4-cp313-cp313-macosx_10_13_x86_64.whl -
Subject digest:
e8d04e8e2acc2ad4ab60b929f5ce85153376a1caceb5a13f02ac52d2e9e6a2c0 - Sigstore transparency entry: 1695712885
- Sigstore integration time:
-
Permalink:
natemacfadden/latticepts@ca7c60efb5eca24c1247707b0448bdf93ddd5b4e -
Branch / Tag:
refs/tags/v0.1.4 - Owner: https://github.com/natemacfadden
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
deploy.yml@ca7c60efb5eca24c1247707b0448bdf93ddd5b4e -
Trigger Event:
release
-
Statement type:
File details
Details for the file latticepts-0.1.4-cp312-cp312-musllinux_1_2_x86_64.whl.
File metadata
- Download URL: latticepts-0.1.4-cp312-cp312-musllinux_1_2_x86_64.whl
- Upload date:
- Size: 704.0 kB
- Tags: CPython 3.12, musllinux: musl 1.2+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0a26bd9b3c28267ef0d7f53d0260d1739e9bb1750ad67e0f31371b9c5b1eb8e4
|
|
| MD5 |
217b8177ba4d68842ec96609621b2ed4
|
|
| BLAKE2b-256 |
9e4f47e9f0976d97bc5bd1ef4d053043ee919730299e6fa261de041beaf57f14
|
Provenance
The following attestation bundles were made for latticepts-0.1.4-cp312-cp312-musllinux_1_2_x86_64.whl:
Publisher:
deploy.yml on natemacfadden/latticepts
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
latticepts-0.1.4-cp312-cp312-musllinux_1_2_x86_64.whl -
Subject digest:
0a26bd9b3c28267ef0d7f53d0260d1739e9bb1750ad67e0f31371b9c5b1eb8e4 - Sigstore transparency entry: 1695714292
- Sigstore integration time:
-
Permalink:
natemacfadden/latticepts@ca7c60efb5eca24c1247707b0448bdf93ddd5b4e -
Branch / Tag:
refs/tags/v0.1.4 - Owner: https://github.com/natemacfadden
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
deploy.yml@ca7c60efb5eca24c1247707b0448bdf93ddd5b4e -
Trigger Event:
release
-
Statement type:
File details
Details for the file latticepts-0.1.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: latticepts-0.1.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 684.8 kB
- Tags: CPython 3.12, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e2132ff118987367cadd2941a55d3da265737b80e575cdae4da1d2183a9c35a8
|
|
| MD5 |
f03d61ffafc6f50c1f1b1a66f230c270
|
|
| BLAKE2b-256 |
cbe0cab70eefae84c1e1ca73296b1d6b990a157ee7ddd7f54fd23f10971f2524
|
Provenance
The following attestation bundles were made for latticepts-0.1.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:
Publisher:
deploy.yml on natemacfadden/latticepts
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
latticepts-0.1.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl -
Subject digest:
e2132ff118987367cadd2941a55d3da265737b80e575cdae4da1d2183a9c35a8 - Sigstore transparency entry: 1695714401
- Sigstore integration time:
-
Permalink:
natemacfadden/latticepts@ca7c60efb5eca24c1247707b0448bdf93ddd5b4e -
Branch / Tag:
refs/tags/v0.1.4 - Owner: https://github.com/natemacfadden
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
deploy.yml@ca7c60efb5eca24c1247707b0448bdf93ddd5b4e -
Trigger Event:
release
-
Statement type:
File details
Details for the file latticepts-0.1.4-cp312-cp312-macosx_11_0_arm64.whl.
File metadata
- Download URL: latticepts-0.1.4-cp312-cp312-macosx_11_0_arm64.whl
- Upload date:
- Size: 261.5 kB
- Tags: CPython 3.12, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9e4d459d1ab0ebe14167ac36d9e045ad2f229e6f1a93f6fde913431814122264
|
|
| MD5 |
8de0e88358542feabd55fdcb7d46e9be
|
|
| BLAKE2b-256 |
e5e5ea483d77fdc320052f32d8b7551ac09c4f53f7f5ec74947b89480c0e58c9
|
Provenance
The following attestation bundles were made for latticepts-0.1.4-cp312-cp312-macosx_11_0_arm64.whl:
Publisher:
deploy.yml on natemacfadden/latticepts
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
latticepts-0.1.4-cp312-cp312-macosx_11_0_arm64.whl -
Subject digest:
9e4d459d1ab0ebe14167ac36d9e045ad2f229e6f1a93f6fde913431814122264 - Sigstore transparency entry: 1695713326
- Sigstore integration time:
-
Permalink:
natemacfadden/latticepts@ca7c60efb5eca24c1247707b0448bdf93ddd5b4e -
Branch / Tag:
refs/tags/v0.1.4 - Owner: https://github.com/natemacfadden
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
deploy.yml@ca7c60efb5eca24c1247707b0448bdf93ddd5b4e -
Trigger Event:
release
-
Statement type:
File details
Details for the file latticepts-0.1.4-cp312-cp312-macosx_10_13_x86_64.whl.
File metadata
- Download URL: latticepts-0.1.4-cp312-cp312-macosx_10_13_x86_64.whl
- Upload date:
- Size: 263.1 kB
- Tags: CPython 3.12, macOS 10.13+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
159869cc733b9830be7406ae8111d106148d08ab0802d96bc2d7c6d7495a92f4
|
|
| MD5 |
f9890929f347a3045edba3795f390503
|
|
| BLAKE2b-256 |
4304cb2ad0bfe25a4f67595ec6f60f218bbbbe6caa0a996b666b1469d678042e
|
Provenance
The following attestation bundles were made for latticepts-0.1.4-cp312-cp312-macosx_10_13_x86_64.whl:
Publisher:
deploy.yml on natemacfadden/latticepts
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
latticepts-0.1.4-cp312-cp312-macosx_10_13_x86_64.whl -
Subject digest:
159869cc733b9830be7406ae8111d106148d08ab0802d96bc2d7c6d7495a92f4 - Sigstore transparency entry: 1695714025
- Sigstore integration time:
-
Permalink:
natemacfadden/latticepts@ca7c60efb5eca24c1247707b0448bdf93ddd5b4e -
Branch / Tag:
refs/tags/v0.1.4 - Owner: https://github.com/natemacfadden
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
deploy.yml@ca7c60efb5eca24c1247707b0448bdf93ddd5b4e -
Trigger Event:
release
-
Statement type:
File details
Details for the file latticepts-0.1.4-cp311-cp311-musllinux_1_2_x86_64.whl.
File metadata
- Download URL: latticepts-0.1.4-cp311-cp311-musllinux_1_2_x86_64.whl
- Upload date:
- Size: 709.8 kB
- Tags: CPython 3.11, musllinux: musl 1.2+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bed9d7bee364f694958942ab493c22cbd1a601c6a38f8891673c9c850f07efe8
|
|
| MD5 |
8cfae46b51cabcf0dfb81c64edf3e6b5
|
|
| BLAKE2b-256 |
11d8406261cb751d7c59c3c872639a213f3a28c96f1f297050017e3c38efbaf9
|
Provenance
The following attestation bundles were made for latticepts-0.1.4-cp311-cp311-musllinux_1_2_x86_64.whl:
Publisher:
deploy.yml on natemacfadden/latticepts
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
latticepts-0.1.4-cp311-cp311-musllinux_1_2_x86_64.whl -
Subject digest:
bed9d7bee364f694958942ab493c22cbd1a601c6a38f8891673c9c850f07efe8 - Sigstore transparency entry: 1695714490
- Sigstore integration time:
-
Permalink:
natemacfadden/latticepts@ca7c60efb5eca24c1247707b0448bdf93ddd5b4e -
Branch / Tag:
refs/tags/v0.1.4 - Owner: https://github.com/natemacfadden
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
deploy.yml@ca7c60efb5eca24c1247707b0448bdf93ddd5b4e -
Trigger Event:
release
-
Statement type:
File details
Details for the file latticepts-0.1.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: latticepts-0.1.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 693.2 kB
- Tags: CPython 3.11, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
dd0eef393b8395d6222305a919a00ae50088f57046af1a58f0330b9eccd0d474
|
|
| MD5 |
b52ab4687acfb0236bf7c2fd41eced55
|
|
| BLAKE2b-256 |
dc317fb717c567f277a6d2cb55cd44bd43911b293fe0218ebc11b01a7b359740
|
Provenance
The following attestation bundles were made for latticepts-0.1.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:
Publisher:
deploy.yml on natemacfadden/latticepts
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
latticepts-0.1.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl -
Subject digest:
dd0eef393b8395d6222305a919a00ae50088f57046af1a58f0330b9eccd0d474 - Sigstore transparency entry: 1695712505
- Sigstore integration time:
-
Permalink:
natemacfadden/latticepts@ca7c60efb5eca24c1247707b0448bdf93ddd5b4e -
Branch / Tag:
refs/tags/v0.1.4 - Owner: https://github.com/natemacfadden
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
deploy.yml@ca7c60efb5eca24c1247707b0448bdf93ddd5b4e -
Trigger Event:
release
-
Statement type:
File details
Details for the file latticepts-0.1.4-cp311-cp311-macosx_11_0_arm64.whl.
File metadata
- Download URL: latticepts-0.1.4-cp311-cp311-macosx_11_0_arm64.whl
- Upload date:
- Size: 260.7 kB
- Tags: CPython 3.11, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
abc6e4399ab2d180c000836b3fb6b119ab27760bbd5e3465190a41632f957c03
|
|
| MD5 |
e1afb205297a0140498ca5f02b5e5c9b
|
|
| BLAKE2b-256 |
cb4720202b93962c476c4b4c9ca4386aa68a1f9bb138f4d9098d9b84a0c8c98b
|
Provenance
The following attestation bundles were made for latticepts-0.1.4-cp311-cp311-macosx_11_0_arm64.whl:
Publisher:
deploy.yml on natemacfadden/latticepts
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
latticepts-0.1.4-cp311-cp311-macosx_11_0_arm64.whl -
Subject digest:
abc6e4399ab2d180c000836b3fb6b119ab27760bbd5e3465190a41632f957c03 - Sigstore transparency entry: 1695714606
- Sigstore integration time:
-
Permalink:
natemacfadden/latticepts@ca7c60efb5eca24c1247707b0448bdf93ddd5b4e -
Branch / Tag:
refs/tags/v0.1.4 - Owner: https://github.com/natemacfadden
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
deploy.yml@ca7c60efb5eca24c1247707b0448bdf93ddd5b4e -
Trigger Event:
release
-
Statement type:
File details
Details for the file latticepts-0.1.4-cp311-cp311-macosx_10_9_x86_64.whl.
File metadata
- Download URL: latticepts-0.1.4-cp311-cp311-macosx_10_9_x86_64.whl
- Upload date:
- Size: 262.2 kB
- Tags: CPython 3.11, macOS 10.9+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a61d459c80fd63f2fc0fd34dc278db09065819faa9d28d76e72fd012c88e7a54
|
|
| MD5 |
0653a6cd8d7b67e3b819a7ebcdeab55d
|
|
| BLAKE2b-256 |
eb844401c6125e7aeec04f08da0455d7e3ee70c664101acf51843b1cab02cb71
|
Provenance
The following attestation bundles were made for latticepts-0.1.4-cp311-cp311-macosx_10_9_x86_64.whl:
Publisher:
deploy.yml on natemacfadden/latticepts
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
latticepts-0.1.4-cp311-cp311-macosx_10_9_x86_64.whl -
Subject digest:
a61d459c80fd63f2fc0fd34dc278db09065819faa9d28d76e72fd012c88e7a54 - Sigstore transparency entry: 1695712998
- Sigstore integration time:
-
Permalink:
natemacfadden/latticepts@ca7c60efb5eca24c1247707b0448bdf93ddd5b4e -
Branch / Tag:
refs/tags/v0.1.4 - Owner: https://github.com/natemacfadden
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
deploy.yml@ca7c60efb5eca24c1247707b0448bdf93ddd5b4e -
Trigger Event:
release
-
Statement type:
File details
Details for the file latticepts-0.1.4-cp310-cp310-musllinux_1_2_x86_64.whl.
File metadata
- Download URL: latticepts-0.1.4-cp310-cp310-musllinux_1_2_x86_64.whl
- Upload date:
- Size: 681.0 kB
- Tags: CPython 3.10, musllinux: musl 1.2+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9aa4534fbb5ee50d540c282173435e93b8fd16162da56d2079d8d398dcfef663
|
|
| MD5 |
52ae1f3424c55e1f7e0931d14cf02e1e
|
|
| BLAKE2b-256 |
c09ec1143de56f1db0cdf3bcfc405631c928a48578d66f486b3d8218739a5db7
|
Provenance
The following attestation bundles were made for latticepts-0.1.4-cp310-cp310-musllinux_1_2_x86_64.whl:
Publisher:
deploy.yml on natemacfadden/latticepts
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
latticepts-0.1.4-cp310-cp310-musllinux_1_2_x86_64.whl -
Subject digest:
9aa4534fbb5ee50d540c282173435e93b8fd16162da56d2079d8d398dcfef663 - Sigstore transparency entry: 1695713114
- Sigstore integration time:
-
Permalink:
natemacfadden/latticepts@ca7c60efb5eca24c1247707b0448bdf93ddd5b4e -
Branch / Tag:
refs/tags/v0.1.4 - Owner: https://github.com/natemacfadden
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
deploy.yml@ca7c60efb5eca24c1247707b0448bdf93ddd5b4e -
Trigger Event:
release
-
Statement type:
File details
Details for the file latticepts-0.1.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: latticepts-0.1.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 663.9 kB
- Tags: CPython 3.10, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c0cc5fde5aba533058b270bf4f35144f2e0b925223dd2222f6c27e444706ff42
|
|
| MD5 |
afc899b8bc420974123cbcf09921b97b
|
|
| BLAKE2b-256 |
d25149e187c3357a76c363f9a169d4e80e0b3696b1f0f3af62013821abfe69d5
|
Provenance
The following attestation bundles were made for latticepts-0.1.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:
Publisher:
deploy.yml on natemacfadden/latticepts
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
latticepts-0.1.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl -
Subject digest:
c0cc5fde5aba533058b270bf4f35144f2e0b925223dd2222f6c27e444706ff42 - Sigstore transparency entry: 1695714196
- Sigstore integration time:
-
Permalink:
natemacfadden/latticepts@ca7c60efb5eca24c1247707b0448bdf93ddd5b4e -
Branch / Tag:
refs/tags/v0.1.4 - Owner: https://github.com/natemacfadden
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
deploy.yml@ca7c60efb5eca24c1247707b0448bdf93ddd5b4e -
Trigger Event:
release
-
Statement type:
File details
Details for the file latticepts-0.1.4-cp310-cp310-macosx_11_0_arm64.whl.
File metadata
- Download URL: latticepts-0.1.4-cp310-cp310-macosx_11_0_arm64.whl
- Upload date:
- Size: 261.3 kB
- Tags: CPython 3.10, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cfeee60b952ab75be8377920b038fa465dd238f64d5d67c6fef58bea1792f501
|
|
| MD5 |
55990cd86b47d531f977fbb5a30bdff4
|
|
| BLAKE2b-256 |
2ffa14ac97b5ffd251245cf3acfea7b12f5eeae1190c5fb0ed8aa2641abb8227
|
Provenance
The following attestation bundles were made for latticepts-0.1.4-cp310-cp310-macosx_11_0_arm64.whl:
Publisher:
deploy.yml on natemacfadden/latticepts
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
latticepts-0.1.4-cp310-cp310-macosx_11_0_arm64.whl -
Subject digest:
cfeee60b952ab75be8377920b038fa465dd238f64d5d67c6fef58bea1792f501 - Sigstore transparency entry: 1695713428
- Sigstore integration time:
-
Permalink:
natemacfadden/latticepts@ca7c60efb5eca24c1247707b0448bdf93ddd5b4e -
Branch / Tag:
refs/tags/v0.1.4 - Owner: https://github.com/natemacfadden
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
deploy.yml@ca7c60efb5eca24c1247707b0448bdf93ddd5b4e -
Trigger Event:
release
-
Statement type:
File details
Details for the file latticepts-0.1.4-cp310-cp310-macosx_10_9_x86_64.whl.
File metadata
- Download URL: latticepts-0.1.4-cp310-cp310-macosx_10_9_x86_64.whl
- Upload date:
- Size: 262.9 kB
- Tags: CPython 3.10, macOS 10.9+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ea9a696a7e2f28655e0a3aeb5bb9538834a8216b3ee54feec6f94f21194e77eb
|
|
| MD5 |
ab0798a73c8949573e861377222bb552
|
|
| BLAKE2b-256 |
231cb1d2682f0629c1084f97550ec6ff3b135bd9d1e0ce3db5fe4f7be1b93bd3
|
Provenance
The following attestation bundles were made for latticepts-0.1.4-cp310-cp310-macosx_10_9_x86_64.whl:
Publisher:
deploy.yml on natemacfadden/latticepts
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
latticepts-0.1.4-cp310-cp310-macosx_10_9_x86_64.whl -
Subject digest:
ea9a696a7e2f28655e0a3aeb5bb9538834a8216b3ee54feec6f94f21194e77eb - Sigstore transparency entry: 1695712764
- Sigstore integration time:
-
Permalink:
natemacfadden/latticepts@ca7c60efb5eca24c1247707b0448bdf93ddd5b4e -
Branch / Tag:
refs/tags/v0.1.4 - Owner: https://github.com/natemacfadden
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
deploy.yml@ca7c60efb5eca24c1247707b0448bdf93ddd5b4e -
Trigger Event:
release
-
Statement type:
File details
Details for the file latticepts-0.1.4-cp39-cp39-musllinux_1_2_x86_64.whl.
File metadata
- Download URL: latticepts-0.1.4-cp39-cp39-musllinux_1_2_x86_64.whl
- Upload date:
- Size: 679.4 kB
- Tags: CPython 3.9, musllinux: musl 1.2+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2484d5d73eb0294bd5b99288ab1162d5bd2af4746752ec3e1b6f62c004e6e606
|
|
| MD5 |
6773e7a3be967fa73b6f3ec51404703d
|
|
| BLAKE2b-256 |
964700ad3ad1d6c4207e4c84a1dd369e64b3ac1373862ee1324a5ae573885eeb
|
Provenance
The following attestation bundles were made for latticepts-0.1.4-cp39-cp39-musllinux_1_2_x86_64.whl:
Publisher:
deploy.yml on natemacfadden/latticepts
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
latticepts-0.1.4-cp39-cp39-musllinux_1_2_x86_64.whl -
Subject digest:
2484d5d73eb0294bd5b99288ab1162d5bd2af4746752ec3e1b6f62c004e6e606 - Sigstore transparency entry: 1695713219
- Sigstore integration time:
-
Permalink:
natemacfadden/latticepts@ca7c60efb5eca24c1247707b0448bdf93ddd5b4e -
Branch / Tag:
refs/tags/v0.1.4 - Owner: https://github.com/natemacfadden
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
deploy.yml@ca7c60efb5eca24c1247707b0448bdf93ddd5b4e -
Trigger Event:
release
-
Statement type:
File details
Details for the file latticepts-0.1.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: latticepts-0.1.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 661.5 kB
- Tags: CPython 3.9, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
11ffbf14155540bc52a5ffb6754c99e24a8870ee0464fe6dff40157f17617751
|
|
| MD5 |
03a5040208d0af841b86805787cfdb8a
|
|
| BLAKE2b-256 |
bbdc651bca7377f82a7df9774006ce28f9dbaf964300afab38a8b352eba8ba4b
|
Provenance
The following attestation bundles were made for latticepts-0.1.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:
Publisher:
deploy.yml on natemacfadden/latticepts
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
latticepts-0.1.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl -
Subject digest:
11ffbf14155540bc52a5ffb6754c99e24a8870ee0464fe6dff40157f17617751 - Sigstore transparency entry: 1695713557
- Sigstore integration time:
-
Permalink:
natemacfadden/latticepts@ca7c60efb5eca24c1247707b0448bdf93ddd5b4e -
Branch / Tag:
refs/tags/v0.1.4 - Owner: https://github.com/natemacfadden
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
deploy.yml@ca7c60efb5eca24c1247707b0448bdf93ddd5b4e -
Trigger Event:
release
-
Statement type:
File details
Details for the file latticepts-0.1.4-cp39-cp39-macosx_11_0_arm64.whl.
File metadata
- Download URL: latticepts-0.1.4-cp39-cp39-macosx_11_0_arm64.whl
- Upload date:
- Size: 261.7 kB
- Tags: CPython 3.9, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4fed89751285ebe6ada720da3cbd4035e3dd9a18fa60c8c0d3dde6b375a75645
|
|
| MD5 |
cdf41af1380b0326b10edc4e9f810dd6
|
|
| BLAKE2b-256 |
c8fc25162acdcdf80d51d24a5508b7e7c50ae54900c78d03f69608ca7adf0a8f
|
Provenance
The following attestation bundles were made for latticepts-0.1.4-cp39-cp39-macosx_11_0_arm64.whl:
Publisher:
deploy.yml on natemacfadden/latticepts
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
latticepts-0.1.4-cp39-cp39-macosx_11_0_arm64.whl -
Subject digest:
4fed89751285ebe6ada720da3cbd4035e3dd9a18fa60c8c0d3dde6b375a75645 - Sigstore transparency entry: 1695713673
- Sigstore integration time:
-
Permalink:
natemacfadden/latticepts@ca7c60efb5eca24c1247707b0448bdf93ddd5b4e -
Branch / Tag:
refs/tags/v0.1.4 - Owner: https://github.com/natemacfadden
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
deploy.yml@ca7c60efb5eca24c1247707b0448bdf93ddd5b4e -
Trigger Event:
release
-
Statement type:
File details
Details for the file latticepts-0.1.4-cp39-cp39-macosx_10_9_x86_64.whl.
File metadata
- Download URL: latticepts-0.1.4-cp39-cp39-macosx_10_9_x86_64.whl
- Upload date:
- Size: 263.3 kB
- Tags: CPython 3.9, macOS 10.9+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bc854c5005cf945ff40f2db1f8f9869c8e4053e6cccab52c4909a1a7911cf2d3
|
|
| MD5 |
cf02584dfc622196f869ad3c9c4c0645
|
|
| BLAKE2b-256 |
cebd0084182934f48ec8891d6a65d24ed2163d9429bbe4234e8055c487d417e6
|
Provenance
The following attestation bundles were made for latticepts-0.1.4-cp39-cp39-macosx_10_9_x86_64.whl:
Publisher:
deploy.yml on natemacfadden/latticepts
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
latticepts-0.1.4-cp39-cp39-macosx_10_9_x86_64.whl -
Subject digest:
bc854c5005cf945ff40f2db1f8f9869c8e4053e6cccab52c4909a1a7911cf2d3 - Sigstore transparency entry: 1695713915
- Sigstore integration time:
-
Permalink:
natemacfadden/latticepts@ca7c60efb5eca24c1247707b0448bdf93ddd5b4e -
Branch / Tag:
refs/tags/v0.1.4 - Owner: https://github.com/natemacfadden
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
deploy.yml@ca7c60efb5eca24c1247707b0448bdf93ddd5b4e -
Trigger Event:
release
-
Statement type: