Skip to main content

Python bindings for the ZonoOpt C++ library

Project description

ZonoOpt

This C++ library provides classes and tailored optimization routines for zonotopes, constrained zonotopes, and hybrid zonotopes.

C++ build

Python build

image image

Zonotopes, Constrained Zonotopes, and Hybrid Zonotopes

Zonotopes and their generalizations are set representations widely used for reachability analysis. A major advantage of these set representations when compared to alternatives such as halfspace representation (H-rep) or vertex representation (V-rep) polytopes is that they have efficient identities for many important set operations. This makes them well-suited to contexts where efficient online set computations are required, such as online safety verification and set-valued state estimation.

This library focuses specifically on zonotopes, constrained zonotopes, and hybrid zonotopes. A set $\mathcal{Z}$ is a zonotope if there exist a generator matrix $G$ and center vector $c$ such that

$$ \mathcal{Z} = \left\lbrace G \xi + c \; : \; \xi \in [-1, 1]^{nG} \right\rbrace \;. $$

Zonotopes represent centrally symmetric, convex polytopes.

image

A set $\mathcal{Z}_C$ is a constrained zonotope if there additionally exist a constraint matrix $A$ and constraint vector $b$ such that

$$ \mathcal{Z}_C = \left\lbrace G \xi + c \; : \; \xi \in [-1, 1]^{nG}, A \xi = b \right\rbrace \;. $$

Constrained zonotopes represent convex polytopes.

image

Hybrid zonotopes extend constrained zonotopes by allowing for a subset of the factors $\xi$ to be binary-valued, i.e., $\xi = [\xi_c \quad \xi_b]^T$ where $\xi_c \in [-1, 1]^{nGc}$ and $\xi_b \in \lbrace -1, 1 \rbrace^{nGb}$. A set $\mathcal{Z}_H$ is then a hybrid zonotope if there exist generator matrices $G_c$ and $G_b$, center $c$, constraint matrices $A_c$ and $A_b$, and constraint vector $b$ such that

$$ \mathcal{Z}_H = \left\lbrace \begin{bmatrix} G_c & G_b \end{bmatrix} \begin{bmatrix} \xi_c \\ \xi_b \end{bmatrix} + c \; : \; \begin{matrix} \xi_c \in [-1, 1]^{nGc},\; \xi_b \in \lbrace -1, 1 \rbrace^{nGb}, \\ \begin{bmatrix} A_c & A_b \end{bmatrix} \begin{bmatrix} \xi_c \\ \xi_b \end{bmatrix} = b \end{matrix} \right\rbrace \;. $$

Hybrid zonotopes represent unions of convex polytopes.

image

ZonoOpt Features

The ZonoOpt library provides classes and set operations for zonotopes, constrained zonotopes, and hybrid zonotopes. For cases where numerical optimization is required, e.g., checking if a set is empty or solving an MPC problem where the constraints are represented as a zonotopic set, custom optimization routines are utilized. Some key features of the ZonoOpt library are as follows:

  • All classes and methods are implemented using sparse linear algebra via the Eigen library.
  • ZonoOpt has minimal external dependencies, making it easy to integrate into robotics projects using C++ or Python.
    • Dependencies are Eigen, Boost, and nlohmann/json
  • Polymorphism is used to provide a common interface for zonotopes, constrained zonotopes, and hybrid zonotopes while allowing for specialized implementations.
    • E.g., support is more efficient for zonotopes than for constrained zonotopes.
  • Factors are flexibly defined as either $[\xi_c \quad \xi_b]^T \in [0,1]^{nGc} \times \lbrace 0,1 \rbrace^{nGb}$ or the more standard form $[\xi_c \quad \xi_b]^T \in [-1,1]^{nGc} \times \lbrace -1,1 \rbrace^{nGb}$ to facilitate certain set operations.
  • Interval arithmetic is provided via the Interval, Box, and IntervalMatrix classes.
    • Boost's interval library is used within Interval for most of the fundamental operations.
  • Operator overloading is implemented for commonly-used set operations.

Building and Installing

Python bindings can be installed from PyPI with pip install zonoopt. To build the bindings from source, use pip install .. Note that a C++ compiler is required to build from source.

This library can be used in CMake projects either via add_subdirectory or by installing the library. When building the library for installation, you must set the option ZONOOPT_INSTALL to ON, i.e., cmake -DZONOOPT_INSTALL=ON -S . -B build.

Example CMake usage is as follows:

cmake_minimum_required(VERSION 3.15...3.27)
project(your_project)
add_executable(your_project
        your_project.cpp
)

# Using add_subdirectory
add_subdirectory(ZonoOpt)

# If installed, find the package instead
# find_package(ZonoOpt REQUIRED)

target_link_libraries(your_project PRIVATE ZonoOpt)

Examples

Consider the case that we wish to compute the robust forward reachable set of a discrete time double integrator system and verify that it does not intersect an unsafe set. We may do this in Python using operator overloading as follows:

import zonoopt as zono
import numpy as np
import matplotlib.pyplot as plt

# System dynamics
dt = 0.1
A = np.array([[1., dt],
              [0., 1.]])
B = np.array([[0.5*dt**2],
              [dt]])

# Initial set: box [-1.0, 1.0] x [-0.1, 0.1]
X0 = zono.interval_2_zono(zono.Box([-1., -0.1], [1., 0.1]))

# Input set: box [-0.2, 0.2]
U = zono.interval_2_zono(zono.Box([-0.2], [0.2]))

# Disturbance set: affine map of octagon
W = np.diag([0.01, 0.05]) @ zono.make_regular_zono_2D(radius=1., n_sides=8)

# Compute reachable set over 10 time steps
X = X0
for k in range(10):
    X = A @ X + B @ U + W

# Unsafe set
O = zono.vrep_2_conzono(np.array([[1.3, 0.],
                                  [1.6, 0.8],
                                  [2.0, -0.4],
                                  [2.3, 0.6]]))

# Check for intersection with unsafe set
print(f'10-step reachable set intersects unsafe set: {not (X & O).is_empty()}')

# Plot the final reachable set
fig, ax = plt.subplots(figsize=(4, 3), layout='tight')
h = []
h.append(zono.plot(X, ax=ax, color='b', alpha=0.2)[0])
h.append(zono.plot(O, ax=ax, color='r', alpha=0.2)[0])
ax.legend(h, ['X', 'O'])
plt.show()

image

Equivalently, these calculations can be performed in C++ as follows:

#include "ZonoOpt.hpp"
#include "Eigen/Dense"
#include "Eigen/Sparse"
#include <iostream>

int main()
{
    // System dynamics
    double dt = 0.1;
    Eigen::Matrix<double, 2, 2> A;
    A << 1, dt,
         0, 1;
    Eigen::Matrix<double, 2, 1> B;
    B << 0.5*dt*dt,
         dt;

    // Initial set: box [-1.0, 1.0] x [-0.1, 0.1]
    Eigen::Vector2d x0_min, x0_max;
    x0_min << -1.0, -0.1;
    x0_max <<  1.0,  0.1;
    ZonoOpt::ZonoPtr X0 = ZonoOpt::interval_2_zono(ZonoOpt::Box(x0_min, x0_max));

    // Input set: box [-0.2, 0.2]
    Eigen::Vector<double, 1> u_min, u_max;
    u_min << -0.2;
    u_max <<  0.2;
    ZonoOpt::ZonoPtr U = ZonoOpt::interval_2_zono(ZonoOpt::Box(u_min, u_max));

    // Disturbance set: affine map of octagon
    ZonoOpt::ZonoPtr W = ZonoOpt::make_regular_zono_2D(1.0, 8);
    Eigen::SparseMatrix<double> W_map(2, 2);
    W_map.insert(0, 0) = 0.01;
    W_map.insert(1, 1) = 0.05;
    W = ZonoOpt::affine_map(*W, W_map);

    // Compute reachable set over 10 time steps
    ZonoOpt::ZonoPtr X = std::move(X0);
    for (int k=0; k<10; ++k)
    {
        X = ZonoOpt::affine_map(*X, A.sparseView());
        X = ZonoOpt::minkowski_sum(*X, *ZonoOpt::affine_map(*U, B.sparseView()));
        X = ZonoOpt::minkowski_sum(*X, *W);
    }

    // Unsafe set
    Eigen::Matrix<double, 4, 2> verts;
    verts << 1.3, 0.0,
             1.6, 0.8,
             2.0, -0.4,
             2.3, 0.6;
    ZonoOpt::ZonoPtr O = ZonoOpt::vrep_2_conzono(verts);

    // Check for intersection with unsafe set
    std::cout << "10-step reachable set intersects unsafe set: "
              << (!ZonoOpt::intersection(*X, *O)->is_empty() ? "true" : "false") << std::endl;
    
    return 0;
}

Further Python examples are located in /examples.

External Solvers

ZonoOpt supports Gurobi and SCIP as external solvers via dynamic loading. Please note that a supported version of Gurobi or SCIP must be installed on your system for dynamic loading to succeed. To invoke an external solver, pass a corresponding settings structure to the function requiring optimization. For example, a point projection using Gurobi in Python would look like:

settings = zono.GurobiSettings()
p_proj = Z.project_point(p, settings=settings)

Equivalently, in C++:

ZonoOpt::GurobiSettings settings;
auto p_proj = Z.project_point(p, settings);

To change the default solver, globally modify the default solver settings, e.g.,

zono.set_default_solver_settings(zono.SCIPSettings())

in Python, or

ZonoOpt::set_default_solver_settings(ZonoOpt::SCIPSettings());

in C++.

Documentation

Auto-generated API documentation is available below.

C++ API

Python API

References

More information about ZonoOpt can be found in the following publications. Please cite one or both of these as appropriate if you use ZonoOpt in your published work:

J. A. Robbins, J. A. Siefert and H. C. Pangborn, "Sparsity-Promoting Reachability Analysis and Optimization of Constrained Zonotopes," in IEEE Transactions on Control Systems Technology, doi: 10.1109/TCST.2026.3700277.

Robbins, J.A., Thompson, A.F., Glunt, J.J., and Pangborn, H.C., "Hybrid System Planning using a Mixed-Integer ADMM Heuristic and Hybrid Zonotopes", 2026. https://arxiv.org/abs/2602.17574

Additional Notes

  • For internal reasons, ZonoOpt's versioning begins at 2.0.0. Please note that the library is currently in Beta. In this phase, there may be API changes in minor version updates (e.g., 2.1.0 to 2.2.0). There will be no API changes between patch numbers (e.g., 2.2.0 to 2.2.1).
  • For Python users, ZonoOpt's use of multithreading for some hybrid zonotope operations can cause issues with cProfile. Profiling with py-spy is recommended.

See Also

Projects Using ZonoOpt

  • pyspect is a Python toolbox for compiling temporal logic specifications into reachability programs.

Related Projects

  • zonoLAB is a MATLAB toolbox that provides classes and set operations for zonotopes, constrained zonotopes, and hybrid zonotopes.
  • pycvxset is a Python toolbox for convex set manipulation.

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

zonoopt-2.4.1.tar.gz (9.1 MB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

zonoopt-2.4.1-cp314-cp314t-win_amd64.whl (3.0 MB view details)

Uploaded CPython 3.14tWindows x86-64

zonoopt-2.4.1-cp314-cp314t-musllinux_1_2_x86_64.whl (4.4 MB view details)

Uploaded CPython 3.14tmusllinux: musl 1.2+ x86-64

zonoopt-2.4.1-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (3.3 MB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

zonoopt-2.4.1-cp314-cp314t-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl (3.2 MB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.26+ ARM64manylinux: glibc 2.28+ ARM64

zonoopt-2.4.1-cp314-cp314t-macosx_11_0_arm64.whl (3.1 MB view details)

Uploaded CPython 3.14tmacOS 11.0+ ARM64

zonoopt-2.4.1-cp314-cp314t-macosx_10_13_x86_64.whl (3.1 MB view details)

Uploaded CPython 3.14tmacOS 10.13+ x86-64

zonoopt-2.4.1-cp314-cp314-win_amd64.whl (3.0 MB view details)

Uploaded CPython 3.14Windows x86-64

zonoopt-2.4.1-cp314-cp314-musllinux_1_2_x86_64.whl (4.4 MB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ x86-64

zonoopt-2.4.1-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (3.3 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

zonoopt-2.4.1-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl (3.2 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.26+ ARM64manylinux: glibc 2.28+ ARM64

zonoopt-2.4.1-cp314-cp314-macosx_11_0_arm64.whl (3.0 MB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

zonoopt-2.4.1-cp314-cp314-macosx_10_13_x86_64.whl (3.1 MB view details)

Uploaded CPython 3.14macOS 10.13+ x86-64

zonoopt-2.4.1-cp313-cp313-win_amd64.whl (2.9 MB view details)

Uploaded CPython 3.13Windows x86-64

zonoopt-2.4.1-cp313-cp313-musllinux_1_2_x86_64.whl (4.4 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ x86-64

zonoopt-2.4.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (3.3 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

zonoopt-2.4.1-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl (3.2 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.26+ ARM64manylinux: glibc 2.28+ ARM64

zonoopt-2.4.1-cp313-cp313-macosx_11_0_arm64.whl (3.0 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

zonoopt-2.4.1-cp313-cp313-macosx_10_13_x86_64.whl (3.1 MB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

zonoopt-2.4.1-cp312-cp312-win_amd64.whl (2.9 MB view details)

Uploaded CPython 3.12Windows x86-64

zonoopt-2.4.1-cp312-cp312-musllinux_1_2_x86_64.whl (4.4 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

zonoopt-2.4.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (3.3 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

zonoopt-2.4.1-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl (3.2 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.26+ ARM64manylinux: glibc 2.28+ ARM64

zonoopt-2.4.1-cp312-cp312-macosx_11_0_arm64.whl (3.0 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

zonoopt-2.4.1-cp312-cp312-macosx_10_13_x86_64.whl (3.1 MB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

zonoopt-2.4.1-cp311-cp311-win_amd64.whl (2.9 MB view details)

Uploaded CPython 3.11Windows x86-64

zonoopt-2.4.1-cp311-cp311-musllinux_1_2_x86_64.whl (4.4 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

zonoopt-2.4.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (3.3 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

zonoopt-2.4.1-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl (3.2 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.26+ ARM64manylinux: glibc 2.28+ ARM64

zonoopt-2.4.1-cp311-cp311-macosx_11_0_arm64.whl (3.0 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

zonoopt-2.4.1-cp311-cp311-macosx_10_9_x86_64.whl (3.1 MB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

zonoopt-2.4.1-cp310-cp310-win_amd64.whl (2.9 MB view details)

Uploaded CPython 3.10Windows x86-64

zonoopt-2.4.1-cp310-cp310-musllinux_1_2_x86_64.whl (4.4 MB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ x86-64

zonoopt-2.4.1-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (3.3 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

zonoopt-2.4.1-cp310-cp310-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl (3.2 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.26+ ARM64manylinux: glibc 2.28+ ARM64

zonoopt-2.4.1-cp310-cp310-macosx_11_0_arm64.whl (3.0 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

zonoopt-2.4.1-cp310-cp310-macosx_10_9_x86_64.whl (3.1 MB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

File details

Details for the file zonoopt-2.4.1.tar.gz.

File metadata

  • Download URL: zonoopt-2.4.1.tar.gz
  • Upload date:
  • Size: 9.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for zonoopt-2.4.1.tar.gz
Algorithm Hash digest
SHA256 806ba8a05d04623fd6d8504144b9e2bf77a0ff5e2c245c2b48bf75c54dd3a6e1
MD5 fd0355a6bf8120f89b0bf08059cf88b6
BLAKE2b-256 3305fef021433e81503ca14d409e39b128ae0f659a3a15549f748d7d38a8e4da

See more details on using hashes here.

Provenance

The following attestation bundles were made for zonoopt-2.4.1.tar.gz:

Publisher: python_build.yml on psu-PAC-Lab/ZonoOpt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file zonoopt-2.4.1-cp314-cp314t-win_amd64.whl.

File metadata

  • Download URL: zonoopt-2.4.1-cp314-cp314t-win_amd64.whl
  • Upload date:
  • Size: 3.0 MB
  • Tags: CPython 3.14t, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for zonoopt-2.4.1-cp314-cp314t-win_amd64.whl
Algorithm Hash digest
SHA256 630d4437269344c94de44ebdd0a55d91acb32047a338ffda9d79afe28bd51c03
MD5 c96b01815b96800911787d4e1346ebd7
BLAKE2b-256 a5aaf3b38208d9b14f94b182038d2ca4ae7d2f0fe6d057f74950c518ad54f8c8

See more details on using hashes here.

Provenance

The following attestation bundles were made for zonoopt-2.4.1-cp314-cp314t-win_amd64.whl:

Publisher: python_build.yml on psu-PAC-Lab/ZonoOpt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file zonoopt-2.4.1-cp314-cp314t-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for zonoopt-2.4.1-cp314-cp314t-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 88eba851af7b1c786e5d3afadb1dfacfd60f2462fee5c570f585287f2cc51a61
MD5 10f808643844790413fe0c27fd6d629b
BLAKE2b-256 ca900ebe6e23305da010c9cd955556d1ec3110657df3dee2dda90b66f808dd2a

See more details on using hashes here.

Provenance

The following attestation bundles were made for zonoopt-2.4.1-cp314-cp314t-musllinux_1_2_x86_64.whl:

Publisher: python_build.yml on psu-PAC-Lab/ZonoOpt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file zonoopt-2.4.1-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for zonoopt-2.4.1-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 1c36513f6c3ab52bc8e55f7b0ce69430e73e653b9416b7639971e5291b4a4b41
MD5 e85a9adc6717d7baeb1bbb9b3bb5440e
BLAKE2b-256 b9868b74603d35bd4c9be35e1784f6f64c78b8979b03bde6e2ac77380e69ed97

See more details on using hashes here.

Provenance

The following attestation bundles were made for zonoopt-2.4.1-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: python_build.yml on psu-PAC-Lab/ZonoOpt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file zonoopt-2.4.1-cp314-cp314t-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for zonoopt-2.4.1-cp314-cp314t-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 355d7ce02e38c686d8b7e7981fcf364ddb3253e32ec98fdce9419a7ac2ea0349
MD5 525550a920362a688653a47fcc9023d7
BLAKE2b-256 4d1fe86c4ee25bc50fff680f992febd335392d85494e2cfc796dbe528ef655f0

See more details on using hashes here.

Provenance

The following attestation bundles were made for zonoopt-2.4.1-cp314-cp314t-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl:

Publisher: python_build.yml on psu-PAC-Lab/ZonoOpt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file zonoopt-2.4.1-cp314-cp314t-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for zonoopt-2.4.1-cp314-cp314t-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 a750c913e9428823b789ddbee379a7a32ff252bb692bbabca0f33e2ec7d75f57
MD5 3395acdb2239bc69bef3bba7c03a8467
BLAKE2b-256 b097c871ec9fe883aa50078fd75c34082e16a3a71252f72947063cfe2cbf4a63

See more details on using hashes here.

Provenance

The following attestation bundles were made for zonoopt-2.4.1-cp314-cp314t-macosx_11_0_arm64.whl:

Publisher: python_build.yml on psu-PAC-Lab/ZonoOpt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file zonoopt-2.4.1-cp314-cp314t-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for zonoopt-2.4.1-cp314-cp314t-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 c66ba834e84ae03a868e068a9d899d68fc4e7f80ba2c7477ce41f43a9580f60c
MD5 529835a565a11aca9649cbcf9f68bdaf
BLAKE2b-256 e4a81b0b7574a682d55c171ae0b6fbe609a7ab12378d5f0a13d50db9c56f9a78

See more details on using hashes here.

Provenance

The following attestation bundles were made for zonoopt-2.4.1-cp314-cp314t-macosx_10_13_x86_64.whl:

Publisher: python_build.yml on psu-PAC-Lab/ZonoOpt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file zonoopt-2.4.1-cp314-cp314-win_amd64.whl.

File metadata

  • Download URL: zonoopt-2.4.1-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 3.0 MB
  • Tags: CPython 3.14, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for zonoopt-2.4.1-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 0adad921b3031bb1421747198ff388251222abb8536ee13f4ad0c563c59e7ba0
MD5 4a5fc2aca4cf816fd648d4fb13166787
BLAKE2b-256 0b5f6139380920104f095ea48a2eaa7cdd3b98a293ab0f5402a3ea4220dcb8df

See more details on using hashes here.

Provenance

The following attestation bundles were made for zonoopt-2.4.1-cp314-cp314-win_amd64.whl:

Publisher: python_build.yml on psu-PAC-Lab/ZonoOpt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file zonoopt-2.4.1-cp314-cp314-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for zonoopt-2.4.1-cp314-cp314-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 e33d2a1479a4427b8a3acfc055472cd59887234a16f390a09adbccb79697d394
MD5 1909e428281a5dc788257f9c37de1cf4
BLAKE2b-256 844a428465207529180017fa661265ca32965ae9c89ddeac8bf81c99b552b958

See more details on using hashes here.

Provenance

The following attestation bundles were made for zonoopt-2.4.1-cp314-cp314-musllinux_1_2_x86_64.whl:

Publisher: python_build.yml on psu-PAC-Lab/ZonoOpt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file zonoopt-2.4.1-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for zonoopt-2.4.1-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 096f461fbe5b08d727893e37cac13f05bae6fff69981806689f26fa16e00e5d2
MD5 840268c3bcfcbfd8a9c2c57969511436
BLAKE2b-256 3d54a06bcad56d24802ab2eaed27653f128284eca5ef31a126e051350b759b68

See more details on using hashes here.

Provenance

The following attestation bundles were made for zonoopt-2.4.1-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: python_build.yml on psu-PAC-Lab/ZonoOpt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file zonoopt-2.4.1-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for zonoopt-2.4.1-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 c305103e183fd24a75016146e78fca64fa373319a9e13a1554b7f7bb4449d597
MD5 b254cb0b429274a408d4100a6af51486
BLAKE2b-256 e0ada74d128a7a858de41549e7f4d3a1325fbfbcf7506491a18f0815876b010b

See more details on using hashes here.

Provenance

The following attestation bundles were made for zonoopt-2.4.1-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl:

Publisher: python_build.yml on psu-PAC-Lab/ZonoOpt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file zonoopt-2.4.1-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for zonoopt-2.4.1-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 665e42a3ce36065b0d38bd32efdaf724e25f127cb3b6a27577272b0a27fc5fa8
MD5 d0323c4d1027323b42a322b76813ebd0
BLAKE2b-256 22fe32d4170eda40c092e599a190516ed3fbf1911cd093a1c061608216d16d6d

See more details on using hashes here.

Provenance

The following attestation bundles were made for zonoopt-2.4.1-cp314-cp314-macosx_11_0_arm64.whl:

Publisher: python_build.yml on psu-PAC-Lab/ZonoOpt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file zonoopt-2.4.1-cp314-cp314-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for zonoopt-2.4.1-cp314-cp314-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 e595b9b29747f559b7c8e748f4038a3e20b876ac706fd63f6a32e686e515131e
MD5 72800564873947e06291e68c7de84146
BLAKE2b-256 f4033517a33d0d99c6230fcd4b331f3f70e3c54fbdb554595522fe8ec918d438

See more details on using hashes here.

Provenance

The following attestation bundles were made for zonoopt-2.4.1-cp314-cp314-macosx_10_13_x86_64.whl:

Publisher: python_build.yml on psu-PAC-Lab/ZonoOpt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file zonoopt-2.4.1-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: zonoopt-2.4.1-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 2.9 MB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for zonoopt-2.4.1-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 35500e1a5793df43f7f6ca76f641f0e74591bbd19e66fae9c9c226c5dfbb0e08
MD5 c1ba59223db67e23e153698d0a0c6e33
BLAKE2b-256 c848f48c355b3016416386c2875a2e1768a75ed88434b1bd96b1c12775972481

See more details on using hashes here.

Provenance

The following attestation bundles were made for zonoopt-2.4.1-cp313-cp313-win_amd64.whl:

Publisher: python_build.yml on psu-PAC-Lab/ZonoOpt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file zonoopt-2.4.1-cp313-cp313-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for zonoopt-2.4.1-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 28f3b1685d7d26286307e9b6ea06619e7d591575dab4339895acb9a9198ce6f0
MD5 71defbff91940eb52683e4db55f9b927
BLAKE2b-256 a23a8cf3245fd3e4200dbae1cb506bb34fddd8af02c19c247f48774d761b469d

See more details on using hashes here.

Provenance

The following attestation bundles were made for zonoopt-2.4.1-cp313-cp313-musllinux_1_2_x86_64.whl:

Publisher: python_build.yml on psu-PAC-Lab/ZonoOpt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file zonoopt-2.4.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for zonoopt-2.4.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 d0b393a5edc616a79d25c9dab4671afb53d8af92b868d9e23c440bfa8c1a1a37
MD5 876df62aecce4ab146efa079e89e761c
BLAKE2b-256 e2f9dc0931adfad8142ca57fd4ae8961f8720ba5e42fd1b04f5a5a09d29acaf0

See more details on using hashes here.

Provenance

The following attestation bundles were made for zonoopt-2.4.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: python_build.yml on psu-PAC-Lab/ZonoOpt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file zonoopt-2.4.1-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for zonoopt-2.4.1-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 7dfb7a2fdde187c1821762448d0fd3ea31461ee34fc8222f3abaa42115bc87f1
MD5 6de52422845498083aca496ba2b5bbb9
BLAKE2b-256 f729ec6edca8bddbf8acade8c00bbe54dfa5e836e5efab5b93a7262a7ca415d8

See more details on using hashes here.

Provenance

The following attestation bundles were made for zonoopt-2.4.1-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl:

Publisher: python_build.yml on psu-PAC-Lab/ZonoOpt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file zonoopt-2.4.1-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for zonoopt-2.4.1-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 aa2101ae8a47b231116b5f31c6f08975cee9223971b905cba51ed0005e682587
MD5 d2e3404e0a401385f2c6b5055d88233b
BLAKE2b-256 7b04acba282b0c22f490b028f8d15e10adb6a21ecda667c1f48136550b3b4759

See more details on using hashes here.

Provenance

The following attestation bundles were made for zonoopt-2.4.1-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: python_build.yml on psu-PAC-Lab/ZonoOpt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file zonoopt-2.4.1-cp313-cp313-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for zonoopt-2.4.1-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 26c3f50a5a725e5d350230915139dd0642c70e4b57eee30b3b93b550032d81a2
MD5 5086624ccc2cb4303b1bfef1b12a17fa
BLAKE2b-256 ab55659fedddde928fcc4f8758a3ef41c016983a8d51784232789f0d4c5cc6a3

See more details on using hashes here.

Provenance

The following attestation bundles were made for zonoopt-2.4.1-cp313-cp313-macosx_10_13_x86_64.whl:

Publisher: python_build.yml on psu-PAC-Lab/ZonoOpt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file zonoopt-2.4.1-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: zonoopt-2.4.1-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 2.9 MB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for zonoopt-2.4.1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 2270c90aafe089cb7110242f505030bd26b4431006b048610f551e34b4fc057f
MD5 d9d34ee9adddde8a2932d2e5cea6136b
BLAKE2b-256 4319ff305e8670bbb5a29302965c604dd4e4d3fe39c76e6c7a230dd042a3978e

See more details on using hashes here.

Provenance

The following attestation bundles were made for zonoopt-2.4.1-cp312-cp312-win_amd64.whl:

Publisher: python_build.yml on psu-PAC-Lab/ZonoOpt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file zonoopt-2.4.1-cp312-cp312-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for zonoopt-2.4.1-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 247efc2b0d7ec0d7726f5122468cffc2a88965bb09ce10ed912b633cd2e8a195
MD5 1dbf516254b4857f13d2fd22b908cffd
BLAKE2b-256 0a646fa9b06ec4ce697f29cc9e76aa6d33d890eba085ce8d4f918acf344f4edb

See more details on using hashes here.

Provenance

The following attestation bundles were made for zonoopt-2.4.1-cp312-cp312-musllinux_1_2_x86_64.whl:

Publisher: python_build.yml on psu-PAC-Lab/ZonoOpt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file zonoopt-2.4.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for zonoopt-2.4.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 3c8f331b545b34dc638af645cbb32c0b1f90b13caaae8efc3c26691fd849c65d
MD5 13cafc9b4724be9bb0863183d77c0577
BLAKE2b-256 373886d5f97ddde1d9e9470f58f6c2a34d3bb449465da318dc33b346390aa74f

See more details on using hashes here.

Provenance

The following attestation bundles were made for zonoopt-2.4.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: python_build.yml on psu-PAC-Lab/ZonoOpt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file zonoopt-2.4.1-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for zonoopt-2.4.1-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 12c7e1d23560546fe6b70274b8ee06fda3cbd4f39641c65f60018e406fc4c7b6
MD5 9d8c8d8e13f50c31b091c148968c85b7
BLAKE2b-256 a7b11c37999c30c1c2a4e7818abca10be4ff97b3bfc22051c3e53cbee4cb95d7

See more details on using hashes here.

Provenance

The following attestation bundles were made for zonoopt-2.4.1-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl:

Publisher: python_build.yml on psu-PAC-Lab/ZonoOpt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file zonoopt-2.4.1-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for zonoopt-2.4.1-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 35e97ced73abbc90dd0ed4728a1446f36affe9fb9a57cb72d419a714057f3e3a
MD5 3987166f8473cae4b636b91caf4221d3
BLAKE2b-256 ca0aa00fe6c2e7b738731d4d3a59266c7a79bd074240a6ef3347fb28c0803d74

See more details on using hashes here.

Provenance

The following attestation bundles were made for zonoopt-2.4.1-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: python_build.yml on psu-PAC-Lab/ZonoOpt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file zonoopt-2.4.1-cp312-cp312-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for zonoopt-2.4.1-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 ea963e2b490ab7ae60e4517e0be1fb7d3561d04e591191685ad32b213c3f762d
MD5 6c2415eadc0a1b3b1d8b8fca64de9c3c
BLAKE2b-256 790091fff6fed613b5641213857a5bbb00934d103da021ba6934dd674f43d289

See more details on using hashes here.

Provenance

The following attestation bundles were made for zonoopt-2.4.1-cp312-cp312-macosx_10_13_x86_64.whl:

Publisher: python_build.yml on psu-PAC-Lab/ZonoOpt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file zonoopt-2.4.1-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: zonoopt-2.4.1-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 2.9 MB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for zonoopt-2.4.1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 9a4b537492fdb2f3e1560645dfe9c39102a2fcdb9e63a355859b325a239d7e81
MD5 9d2901367634142c031c6744c4e70902
BLAKE2b-256 4b15b4d668ffa6a8b99ea47155b5cdab31797fb69ee37a9b8d1a1fc9fa6d4008

See more details on using hashes here.

Provenance

The following attestation bundles were made for zonoopt-2.4.1-cp311-cp311-win_amd64.whl:

Publisher: python_build.yml on psu-PAC-Lab/ZonoOpt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file zonoopt-2.4.1-cp311-cp311-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for zonoopt-2.4.1-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 4924c0ba84f18191a70dc8cc4181a6ef19bcaa6f5856cb4abff21a80709d1353
MD5 2fb0e096b48ae637f3852988be32e322
BLAKE2b-256 ddc2c3e30c89edfd3accbca007cdfcc9f4d5bfc82f7791438c57f398d08648e7

See more details on using hashes here.

Provenance

The following attestation bundles were made for zonoopt-2.4.1-cp311-cp311-musllinux_1_2_x86_64.whl:

Publisher: python_build.yml on psu-PAC-Lab/ZonoOpt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file zonoopt-2.4.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for zonoopt-2.4.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 f48e1902981b8cdf03b3c721fab14a0ca00c307e640f0d472499de42c3fb4f75
MD5 5007942f656a06c66228c02d5f6f134d
BLAKE2b-256 47d590e6303624bc6e31d00f75e500a670f6f027137ee5e77a6a3fa00e0c7fba

See more details on using hashes here.

Provenance

The following attestation bundles were made for zonoopt-2.4.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: python_build.yml on psu-PAC-Lab/ZonoOpt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file zonoopt-2.4.1-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for zonoopt-2.4.1-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 8e3683349e00360da21d7f051ff196721b33ed268c2f3266c23f2d3359327ebe
MD5 a3d3eb17ec6069ddda73d33ae8cc6c19
BLAKE2b-256 b8ce009aa2b366fd4e6a30cbef7b0dfc537dde4d4ba81c0bf87c4975dbb660ab

See more details on using hashes here.

Provenance

The following attestation bundles were made for zonoopt-2.4.1-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl:

Publisher: python_build.yml on psu-PAC-Lab/ZonoOpt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file zonoopt-2.4.1-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for zonoopt-2.4.1-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 474201ad994bf5b3ed4a045e415d3b8497bf399a5dba8c19aa3ea8ff5159690c
MD5 e7dfc7cbb6413627ec897daa45dfd4f8
BLAKE2b-256 8832a180618835da40a040d1f4ab92cb4c89e36d24be53819dfe1d95f2502a8a

See more details on using hashes here.

Provenance

The following attestation bundles were made for zonoopt-2.4.1-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: python_build.yml on psu-PAC-Lab/ZonoOpt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file zonoopt-2.4.1-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for zonoopt-2.4.1-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 2356e8cb6c7242fefba2a9abe1bc4e7ed54e3894060768f8b05666fed919ba9b
MD5 94f5863717f436758c513ff3f4a7918f
BLAKE2b-256 6f1b20084847b7b47279443389ea4d53d4dc75a0afbf16b841ac8eb32e26e697

See more details on using hashes here.

Provenance

The following attestation bundles were made for zonoopt-2.4.1-cp311-cp311-macosx_10_9_x86_64.whl:

Publisher: python_build.yml on psu-PAC-Lab/ZonoOpt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file zonoopt-2.4.1-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: zonoopt-2.4.1-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 2.9 MB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for zonoopt-2.4.1-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 f8a0f70d72ad51fa4179f9086868aff9b3745ad67b8cfdf441a20b68ceb4eab2
MD5 446070d2b31112f36b0326337d557c3e
BLAKE2b-256 e895591319a2f75ab5b2acc3b4df36854b889776ae510bfa9ac669f677d3a404

See more details on using hashes here.

Provenance

The following attestation bundles were made for zonoopt-2.4.1-cp310-cp310-win_amd64.whl:

Publisher: python_build.yml on psu-PAC-Lab/ZonoOpt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file zonoopt-2.4.1-cp310-cp310-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for zonoopt-2.4.1-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 fdc98401217e470985f89257d9cb569af243b44bc2eb5fbf9fa45a0c3a0ef7ea
MD5 23ebc21161a7d40c57ab92e23ec5b730
BLAKE2b-256 d03cc09011a8c7a5717395423587f6b9c4285250d9b29f59314b26ac47f7e52b

See more details on using hashes here.

Provenance

The following attestation bundles were made for zonoopt-2.4.1-cp310-cp310-musllinux_1_2_x86_64.whl:

Publisher: python_build.yml on psu-PAC-Lab/ZonoOpt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file zonoopt-2.4.1-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for zonoopt-2.4.1-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 603f8b8bdaed07f214a505ab11d194a78c913217c0070429352094bf2d853d63
MD5 44a4242c4a76ad9e09625aae6af9a891
BLAKE2b-256 c1297b33f86de0c9d8813ff2a233f7c9b55f4e17bef72730dc8b68b00b6ec656

See more details on using hashes here.

Provenance

The following attestation bundles were made for zonoopt-2.4.1-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: python_build.yml on psu-PAC-Lab/ZonoOpt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file zonoopt-2.4.1-cp310-cp310-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for zonoopt-2.4.1-cp310-cp310-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 0c0e9e0884cf848c26662e57f87ac6320dedec272869eff0ecec514b75d63024
MD5 f79e6473b2d250e36b4589e195073d8f
BLAKE2b-256 977e208f3097bd97761bce6b3d6796b4561a8ddb50622a4dc77e56d94bab7d10

See more details on using hashes here.

Provenance

The following attestation bundles were made for zonoopt-2.4.1-cp310-cp310-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl:

Publisher: python_build.yml on psu-PAC-Lab/ZonoOpt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file zonoopt-2.4.1-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for zonoopt-2.4.1-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f6f32aefc1e8c2bf3f63fb403de033d6bb1ecf18f667432d055c7726f02e51e3
MD5 345797f7e99b80c8267359fdc4784fba
BLAKE2b-256 e766451e2102a3346336201cf53e47f637bbfed42d472be355dda259ade55da2

See more details on using hashes here.

Provenance

The following attestation bundles were made for zonoopt-2.4.1-cp310-cp310-macosx_11_0_arm64.whl:

Publisher: python_build.yml on psu-PAC-Lab/ZonoOpt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file zonoopt-2.4.1-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for zonoopt-2.4.1-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 abefbcc82ac9d94be7bf1f82f8c2a8fed18d4ae0aa9cb8d9d108cd4c22fc612e
MD5 ebc6b5916b8e6c913a1e4ec9db4159d9
BLAKE2b-256 ea0b4ad4f8ddccd4a845587c750b18018d9a804888f31d9a72a276d2129c6489

See more details on using hashes here.

Provenance

The following attestation bundles were made for zonoopt-2.4.1-cp310-cp310-macosx_10_9_x86_64.whl:

Publisher: python_build.yml on psu-PAC-Lab/ZonoOpt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page