Skip to main content

Python Wheels for eggp algorithm.

Project description

eggp - e-graph GP

eggp (e-graph genetic programming), follows the same structure as the traditional GP. The initial population is created using ramped half-and-half respecting a maximum size and maximum depth parameter and, for a number of generations, it will choose two parents using tournament selection, apply the subtree crossover with probability $pc$ followed by the subtree mutation with probability $pm$, when the offsprings replace the current population following a dominance criteria.

The key differences of eggp are:

- new solutions are inserted into the e-graph followed by one step of equality saturation to find and store some of the  equivalent expressions of the new offspring.
- the current population is replaced by the set of individuals formed by: the Pareto front, the next front after excluding the first Pareto-front, and a selection of the last offspring at random until it reaches the desired population size.
- the subtree crossover and mutation are modified to try to generate an unvisited exp

This repository provides a CLI and a Python package for eggp with a scikit-learn compatible API for symbolic regression.

Instructions:

CLI

How to use

eggp - E-graph Genetic Programming for Symbolic Regression.

Usage: eggp (-d|--dataset INPUT-FILE) [-t|--test ARG] [-g|--generations GENS]
            (-s|--maxSize ARG) [-k|--split ARG] [--print-pareto] [--trace] 
            [--loss ARG] [--opt-iter ARG] [--opt-retries ARG] 
            [--number-params ARG] [--nPop ARG] [--tournament-size ARG] 
            [--pc ARG] [--pm ARG] [--non-terminals ARG] [--dump-to ARG] 
            [--load-from ARG] [--moo]

  An implementation of GP with modified crossover and mutation operators
  designed to exploit equality saturation and e-graphs.
  https://arxiv.org/abs/2501.17848

Available options:
  -d,--dataset INPUT-FILE  CSV dataset.
  -t,--test ARG            test data (default: "")
  -g,--generations GENS    Number of generations. (default: 100)
  -s,--maxSize ARG         max-size.
  -k,--split ARG           k-split ratio training-validation (default: 1)
  --print-pareto           print Pareto front instead of best found expression
  --trace                  print all evaluated expressions.
  --loss ARG               loss function: MSE, Gaussian, Poisson, Bernoulli.
                           (default: MSE)
  --opt-iter ARG           number of iterations in parameter optimization.
                           (default: 30)
  --opt-retries ARG        number of retries of parameter fitting. (default: 1)
  --number-params ARG      maximum number of parameters in the model. If this
                           argument is absent, the number is bounded by the
                           maximum size of the expression and there will be no
                           repeated parameter. (default: -1)
  --nPop ARG               population size (Default: 100). (default: 100)
  --tournament-size ARG    tournament size. (default: 2)
  --pc ARG                 probability of crossover. (default: 1.0)
  --pm ARG                 probability of mutation. (default: 0.3)
  --non-terminals ARG      set of non-terminals to use in the search.
                           (default: "Add,Sub,Mul,Div,PowerAbs,Recip")
  --dump-to ARG            dump final e-graph to a file. (default: "")
  --load-from ARG          load initial e-graph from a file. (default: "")
  --moo                    replace the current population with the pareto front
                           instead of replacing it with the generated children.
  -h,--help                Show this help text

The dataset file must contain a header with each features name, and the --dataset and --test arguments can be accompanied by arguments separated by ':' following the format:

filename.ext:start_row:end_row:target:features

where each ':' field is optional. The fields are:

  • start_row:end_row is the range of the training rows (default 0:nrows-1). every other row not included in this range will be used as validation
  • target is either the name of the (if the datafile has headers) or the index of the target variable
  • features is a comma separated list of names or indices to be used as input variables of the regression model.

Example of valid names: dataset.csv, mydata.tsv, dataset.csv:20:100, dataset.tsv:20:100:price:m2,rooms,neighborhood, dataset.csv:::5:0,1,2.

The format of the file will be determined by the extension (e.g., csv, tsv,...). To use multi-view, simply pass multiple filenames in double-quotes:

eggp --dataset "dataset1.csv dataset2.csv dataset3.csv" ...

Installation

To install eggp you'll need:

  • libz
  • libnlopt
  • libgmp
  • ghc-9.6.6
  • cabal or stack

Method 1: PIP

Simply run:

pip install eggp 

under your Python environment.

Method 2: cabal

After installing the dependencies (e.g., apt install libz libnlopt libgmp), install ghcup

For Linux, macOS, FreeBSD or WSL2:

curl --proto '=https' --tlsv1.2 -sSf https://get-ghcup.haskell.org | sh

For Windows, run the following in a PowerShell:

Set-ExecutionPolicy Bypass -Scope Process -Force;[System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; try { & ([ScriptBlock]::Create((Invoke-WebRequest https://www.haskell.org/ghcup/sh/bootstrap-haskell.ps1 -UseBasicParsing))) -Interactive -DisableCurl } catch { Write-Error $_ }

After the installation, run ghcup tui and install the latest stack or cabal together with ghc-9.6.6 (select the items and press i). To install srsimplify simply run:

cabal install

Python

Features

  • Scikit-learn compatible API with fit() and predict() methods
  • Genetic programming approach with e-graph representation
  • Support for multi-view symbolic regression see here
  • Customizable evolutionary parameters (population size, tournament selection, etc.)
  • Flexible function set selection
  • Various loss functions for different problem types
  • Parameter optimization with multiple restarts
  • Optional expression simplification through equality saturation
  • Ability to save and load e-graphs

Usage

Basic Example

from eggp import EGGP
import numpy as np

# Create sample data
X = np.linspace(-10, 10, 100).reshape(-1, 1)
y = 2 * X.ravel() + 3 * np.sin(X.ravel()) + np.random.normal(0, 1, 100)

# Create and fit the model
model = EGGP(gen=100, nonterminals="add,sub,mul,div,sin,cos")
model.fit(X, y)

# Make predictions
y_pred = model.predict(X)

# Examine the results
print(model.results)

Multi-View Symbolic Regression

from eggp import EGGP
import numpy as np

# Create multiple views of data
X1 = np.linspace(-5, 5, 50).reshape(-1, 1)
y1 = np.sin(X1.ravel()) + np.random.normal(0, 0.1, 50)

X2 = np.linspace(0, 10, 100).reshape(-1, 1)
y2 = np.sin(X2.ravel()) + np.random.normal(0, 0.2, 100)

# Create and fit multi-view model
model = EGGP(gen=150, nPop=200)
model.fit_mvsr([X1, X2], [y1, y2])

# Make predictions for each view
y_pred1 = model.predict_mvsr(X1, view=0)
y_pred2 = model.predict_mvsr(X2, view=1)

Integration with scikit-learn

from sklearn.model_selection import train_test_split
from sklearn.metrics import mean_squared_error
from eggp import EGGP

# Split data
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2)

# Create and fit model
model = EGGP(gen=150, nPop=150, optIter=100)
model.fit(X_train, y_train)

# Evaluate on test set
y_pred = model.predict(X_test)
mse = mean_squared_error(y_test, y_pred)
print(f"Test MSE: {mse}")

Parameters

Parameter Type Default Description
gen int 100 Number of generations to run
nPop int 100 Population size
maxSize int 15 Maximum allowed size for expressions (max 100)
nTournament int 3 Tournament size for parent selection
pc float 0.9 Probability of performing crossover
pm float 0.3 Probability of performing mutation
nonterminals str "add,sub,mul,div" Comma-separated list of allowed functions
loss str "MSE" Loss function: "MSE", "Gaussian", "Bernoulli", or "Poisson"
optIter int 50 Number of iterations for parameter optimization
optRepeat int 2 Number of restarts for parameter optimization
nParams int -1 Maximum number of parameters (-1 for unlimited)
split int 1 Data splitting ratio for validation
simplify bool False Whether to apply equality saturation to simplify expressions
dumpTo str "" Filename to save the final e-graph
loadFrom str "" Filename to load an e-graph to resume search

Available Functions

The following functions can be used in the nonterminals parameter:

  • Basic operations: add, sub, mul, div
  • Powers: power, powerabs, square, cube
  • Roots: sqrt, sqrtabs, cbrt
  • Trigonometric: sin, cos, tan, asin, acos, atan
  • Hyperbolic: sinh, cosh, tanh, asinh, acosh, atanh
  • Others: abs, log, logabs, exp, recip, aq (analytical quotient)

Methods

Core Methods

  • fit(X, y): Fits the symbolic regression model
  • predict(X): Generates predictions using the best model
  • score(X, y): Computes R² score of the best model

Multi-View Methods

  • fit_mvsr(Xs, ys): Fits a multi-view regression model
  • predict_mvsr(X, view): Generates predictions for a specific view
  • evaluate_best_model_view(X, view): Evaluates the best model on a specific view
  • evaluate_model_view(X, ix, view): Evaluates a specific model on a specific view

Utility Methods

  • evaluate_best_model(X): Evaluates the best model on the given data
  • evaluate_model(ix, X): Evaluates the model with index ix on the given data
  • get_model(idx): Returns a model function and its visual representation

Results

After fitting, the results attribute contains a pandas DataFrame with details about the discovered models, including:

  • Mathematical expressions
  • Model complexity
  • Parameter values
  • Error metrics
  • NumPy-compatible expressions

License

[LICENSE]

Citation

If you use EGGP in your research, please cite:

@inproceedings{eggp,
author = {de Franca, Fabricio Olivetti and Kronberger, Gabriel},
title = {Improving Genetic Programming for Symbolic Regression with Equality Graphs},
year = {2025},
isbn = {9798400714658},
publisher = {Association for Computing Machinery},
address = {New York, NY, USA},
url = {https://doi.org/10.1145/3712256.3726383},
doi = {10.1145/3712256.3726383},
booktitle = {Proceedings of the Genetic and Evolutionary Computation Conference},
pages = {},
numpages = {9},
keywords = {Symbolic regression, Genetic programming, Equality saturation, Equality graphs},
location = {Malaga, Spain},
series = {GECCO '25},
archivePrefix = {arXiv},
       eprint = {2501.17848},
 primaryClass = {cs.LG}, 
}

Acknowledgments

The bindings were created following the amazing example written by wenkokke

Fabricio Olivetti de Franca is supported by Conselho Nacional de Desenvolvimento Cient'{i}fico e Tecnol'{o}gico (CNPq) grant 301596/2022-0.

Gabriel Kronberger is supported by the Austrian Federal Ministry for Climate Action, Environment, Energy, Mobility, Innovation and Technology, the Federal Ministry for Labour and Economy, and the regional government of Upper Austria within the COMET project ProMetHeus (904919) supported by the Austrian Research Promotion Agency (FFG).

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

eggp-1.0.11.tar.gz (56.9 kB view details)

Uploaded Source

Built Distributions

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

eggp-1.0.11-cp313-cp313-manylinux_2_28_x86_64.whl (24.7 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ x86-64

eggp-1.0.11-cp313-cp313-manylinux_2_28_aarch64.whl (26.7 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ ARM64

eggp-1.0.11-cp313-cp313-macosx_14_0_x86_64.whl (13.0 MB view details)

Uploaded CPython 3.13macOS 14.0+ x86-64

eggp-1.0.11-cp313-cp313-macosx_14_0_arm64.whl (12.0 MB view details)

Uploaded CPython 3.13macOS 14.0+ ARM64

eggp-1.0.11-cp312-cp312-manylinux_2_28_x86_64.whl (24.7 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ x86-64

eggp-1.0.11-cp312-cp312-manylinux_2_28_aarch64.whl (26.7 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ ARM64

eggp-1.0.11-cp312-cp312-macosx_14_0_x86_64.whl (13.0 MB view details)

Uploaded CPython 3.12macOS 14.0+ x86-64

eggp-1.0.11-cp312-cp312-macosx_14_0_arm64.whl (12.0 MB view details)

Uploaded CPython 3.12macOS 14.0+ ARM64

eggp-1.0.11-cp311-cp311-manylinux_2_28_x86_64.whl (24.7 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ x86-64

eggp-1.0.11-cp311-cp311-manylinux_2_28_aarch64.whl (26.7 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ ARM64

eggp-1.0.11-cp311-cp311-macosx_14_0_x86_64.whl (13.0 MB view details)

Uploaded CPython 3.11macOS 14.0+ x86-64

eggp-1.0.11-cp311-cp311-macosx_14_0_arm64.whl (12.0 MB view details)

Uploaded CPython 3.11macOS 14.0+ ARM64

eggp-1.0.11-cp310-cp310-manylinux_2_28_x86_64.whl (24.7 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ x86-64

eggp-1.0.11-cp310-cp310-manylinux_2_28_aarch64.whl (26.7 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ ARM64

eggp-1.0.11-cp310-cp310-macosx_14_0_x86_64.whl (13.0 MB view details)

Uploaded CPython 3.10macOS 14.0+ x86-64

eggp-1.0.11-cp310-cp310-macosx_14_0_arm64.whl (12.0 MB view details)

Uploaded CPython 3.10macOS 14.0+ ARM64

eggp-1.0.11-cp39-cp39-manylinux_2_28_x86_64.whl (24.7 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.28+ x86-64

eggp-1.0.11-cp39-cp39-manylinux_2_28_aarch64.whl (26.7 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.28+ ARM64

eggp-1.0.11-cp39-cp39-macosx_14_0_x86_64.whl (13.0 MB view details)

Uploaded CPython 3.9macOS 14.0+ x86-64

eggp-1.0.11-cp39-cp39-macosx_14_0_arm64.whl (12.0 MB view details)

Uploaded CPython 3.9macOS 14.0+ ARM64

File details

Details for the file eggp-1.0.11.tar.gz.

File metadata

  • Download URL: eggp-1.0.11.tar.gz
  • Upload date:
  • Size: 56.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for eggp-1.0.11.tar.gz
Algorithm Hash digest
SHA256 da5196e59daadb32620697d5cca44c964ad9de1c66b69b5bd9e77d1c0fcef587
MD5 4347c0841be6eaae3081a5132d2930a7
BLAKE2b-256 fbd876f8effd81009900aebce522353e887e74ea2bfe4e205032f0e36d5f6c78

See more details on using hashes here.

Provenance

The following attestation bundles were made for eggp-1.0.11.tar.gz:

Publisher: release.yml on folivetti/eggp

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

File details

Details for the file eggp-1.0.11-cp313-cp313-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for eggp-1.0.11-cp313-cp313-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 b890d00f93bae2198d895b782b65b607138968d9a70f2fbb5bb5edb2f4655004
MD5 8968061cc420f23839547b5bceba42aa
BLAKE2b-256 17011d0f0f637960643baf2beaa22024c4399271dc43dfde273942f0f0d3f7f5

See more details on using hashes here.

Provenance

The following attestation bundles were made for eggp-1.0.11-cp313-cp313-manylinux_2_28_x86_64.whl:

Publisher: release.yml on folivetti/eggp

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

File details

Details for the file eggp-1.0.11-cp313-cp313-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for eggp-1.0.11-cp313-cp313-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 4965a1e449851c9046cb93c9d21fec2265dcc7ee2a3b86c704ff2f723a15a8fc
MD5 5067809887f89f99fc5b49f5ff8dc40d
BLAKE2b-256 454214f515108ad6655d3c57a97de2c28297ac89f45b5b6f925a77e54e643f70

See more details on using hashes here.

Provenance

The following attestation bundles were made for eggp-1.0.11-cp313-cp313-manylinux_2_28_aarch64.whl:

Publisher: release.yml on folivetti/eggp

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

File details

Details for the file eggp-1.0.11-cp313-cp313-macosx_14_0_x86_64.whl.

File metadata

File hashes

Hashes for eggp-1.0.11-cp313-cp313-macosx_14_0_x86_64.whl
Algorithm Hash digest
SHA256 ed1fd844026e0bc3fef13c50837bd249a2aa3ab6368e4435d36f153a0dd51dff
MD5 6790a9bfb5c540ef8c7e73673d8cbe56
BLAKE2b-256 9a97d90c35a3e0847bd1e43d6b29f350948e9d7410c8b9a08bd1f870892f4877

See more details on using hashes here.

Provenance

The following attestation bundles were made for eggp-1.0.11-cp313-cp313-macosx_14_0_x86_64.whl:

Publisher: release.yml on folivetti/eggp

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

File details

Details for the file eggp-1.0.11-cp313-cp313-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for eggp-1.0.11-cp313-cp313-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 bb8c42f02145813537e0ea2924c2b37885e75020727386e30050224d54acc299
MD5 c91bc694beab2020d43d26cef811111c
BLAKE2b-256 b962ae7c1b90ac7307e6ee281c307d2ec40de78b8412b4f5a55fbd3eef356862

See more details on using hashes here.

Provenance

The following attestation bundles were made for eggp-1.0.11-cp313-cp313-macosx_14_0_arm64.whl:

Publisher: release.yml on folivetti/eggp

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

File details

Details for the file eggp-1.0.11-cp312-cp312-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for eggp-1.0.11-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 bb831f38855b41e4c1e346b081aa53aabd1a8e19b40a7276cabcbf253cfccd7a
MD5 cb50e58084c0e8fa64cae9f1b58c8e09
BLAKE2b-256 8c4b22047981407472bc1074fcce862d4a9e9c1cd24ae8cfb0e69e45708c845c

See more details on using hashes here.

Provenance

The following attestation bundles were made for eggp-1.0.11-cp312-cp312-manylinux_2_28_x86_64.whl:

Publisher: release.yml on folivetti/eggp

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

File details

Details for the file eggp-1.0.11-cp312-cp312-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for eggp-1.0.11-cp312-cp312-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 8bdc458b6008081f9181c29aa892e7df3681b0b6ced24b56a4a5d6d9fe85032b
MD5 105e073ae9921c15c3f0f9e9ee47a6a2
BLAKE2b-256 321b406d7da900ef16e380fb992a99ad9bcb104552dce518c94cbd8237120ca2

See more details on using hashes here.

Provenance

The following attestation bundles were made for eggp-1.0.11-cp312-cp312-manylinux_2_28_aarch64.whl:

Publisher: release.yml on folivetti/eggp

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

File details

Details for the file eggp-1.0.11-cp312-cp312-macosx_14_0_x86_64.whl.

File metadata

File hashes

Hashes for eggp-1.0.11-cp312-cp312-macosx_14_0_x86_64.whl
Algorithm Hash digest
SHA256 a8b2e0764c27ae902ab9aee9309c3a0bc9e25cb5fc4b55d5b8cf98c5228a3f5e
MD5 cc02dabac2e85a131af8f5ec5aa00056
BLAKE2b-256 ea94325cf4a61fff3a04237ac03a5a4f1a9b02135d72f100b4141507174f9dcf

See more details on using hashes here.

Provenance

The following attestation bundles were made for eggp-1.0.11-cp312-cp312-macosx_14_0_x86_64.whl:

Publisher: release.yml on folivetti/eggp

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

File details

Details for the file eggp-1.0.11-cp312-cp312-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for eggp-1.0.11-cp312-cp312-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 437a7258157b39584ab373f08fac1057c1e8be5306e0d57cbd2cf4fd8d1302e7
MD5 5ead2f1fab6c10541a6c810c53a37e80
BLAKE2b-256 9bb7acb9709a496812ea17d672cae82e958f4d708c6ecd27db6454065b9619aa

See more details on using hashes here.

Provenance

The following attestation bundles were made for eggp-1.0.11-cp312-cp312-macosx_14_0_arm64.whl:

Publisher: release.yml on folivetti/eggp

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

File details

Details for the file eggp-1.0.11-cp311-cp311-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for eggp-1.0.11-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 51b65f03e21c56cf0538414bf158d31dff45e5d967055dd4268abdfcbd924619
MD5 2025547f9b8b3fcb6928b86d578411d6
BLAKE2b-256 43073349df2a4b2f4b32a61a7a4d23efa69a72833322cfcc34cb0460f9f0d2d8

See more details on using hashes here.

Provenance

The following attestation bundles were made for eggp-1.0.11-cp311-cp311-manylinux_2_28_x86_64.whl:

Publisher: release.yml on folivetti/eggp

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

File details

Details for the file eggp-1.0.11-cp311-cp311-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for eggp-1.0.11-cp311-cp311-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 891cece4f30a0e4970ad5418f49ab3d5be262aa9d7ed7808566c72c1855af908
MD5 d2441c072458d30cf45833b6e64dea13
BLAKE2b-256 2b9908fe7f4f484a8d8dac150e63b49b9ee5dec3da7439a1f1404708e28916eb

See more details on using hashes here.

Provenance

The following attestation bundles were made for eggp-1.0.11-cp311-cp311-manylinux_2_28_aarch64.whl:

Publisher: release.yml on folivetti/eggp

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

File details

Details for the file eggp-1.0.11-cp311-cp311-macosx_14_0_x86_64.whl.

File metadata

File hashes

Hashes for eggp-1.0.11-cp311-cp311-macosx_14_0_x86_64.whl
Algorithm Hash digest
SHA256 e9af3565666122750fa647777e4aa1d52cc6312ce054e3eff494fdabab9a2f82
MD5 7b4606586a57106e9d4ec39285928668
BLAKE2b-256 f81c357b5291edb78d302c72f670ce851d129cd4ff81c0cb7813f741c142013c

See more details on using hashes here.

Provenance

The following attestation bundles were made for eggp-1.0.11-cp311-cp311-macosx_14_0_x86_64.whl:

Publisher: release.yml on folivetti/eggp

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

File details

Details for the file eggp-1.0.11-cp311-cp311-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for eggp-1.0.11-cp311-cp311-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 4c3243c71c99dc7e3e69f1d694d17565b0581487fe8d2efd7791e69997db258a
MD5 691a0d72f9b2b5b0f80d683545c4cb44
BLAKE2b-256 93a2be804b4550a0a95a29cc1059b841ef49eea00bb43b60c85a4e504f027cd7

See more details on using hashes here.

Provenance

The following attestation bundles were made for eggp-1.0.11-cp311-cp311-macosx_14_0_arm64.whl:

Publisher: release.yml on folivetti/eggp

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

File details

Details for the file eggp-1.0.11-cp310-cp310-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for eggp-1.0.11-cp310-cp310-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 b0a6a6cf5aa4958ff745138b8d791ba296db5574bcbd31fefb4dbd71971b517f
MD5 389a5e516c3fff1223bf876310bd898b
BLAKE2b-256 45692b4b4c91fe5f0d0b35f1d54c4d0ba2f81bf818a8314af0fec52815bb98ed

See more details on using hashes here.

Provenance

The following attestation bundles were made for eggp-1.0.11-cp310-cp310-manylinux_2_28_x86_64.whl:

Publisher: release.yml on folivetti/eggp

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

File details

Details for the file eggp-1.0.11-cp310-cp310-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for eggp-1.0.11-cp310-cp310-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 2ac399c06fbf103c227b91ca783b5379b00abda5cb1eeb435f0e44479a55acd1
MD5 925bbb645d4b4fed4e0c37d0df0fc0e0
BLAKE2b-256 887d62633fcffd1b3cd9af1a18a9c8064e2f64649158a5c6cfefeb3310b8c2a1

See more details on using hashes here.

Provenance

The following attestation bundles were made for eggp-1.0.11-cp310-cp310-manylinux_2_28_aarch64.whl:

Publisher: release.yml on folivetti/eggp

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

File details

Details for the file eggp-1.0.11-cp310-cp310-macosx_14_0_x86_64.whl.

File metadata

File hashes

Hashes for eggp-1.0.11-cp310-cp310-macosx_14_0_x86_64.whl
Algorithm Hash digest
SHA256 afb7a7d4805f8caf1401854cb32d773ee96582c0a839f9c08c4a9d94c45c3f5e
MD5 6168367f39c651b72a2ca7c33dc15b21
BLAKE2b-256 c659f09ffae1674ec34278912240835453457460388e3c701504e43d13543a04

See more details on using hashes here.

Provenance

The following attestation bundles were made for eggp-1.0.11-cp310-cp310-macosx_14_0_x86_64.whl:

Publisher: release.yml on folivetti/eggp

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

File details

Details for the file eggp-1.0.11-cp310-cp310-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for eggp-1.0.11-cp310-cp310-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 3c2c59ff5729a5a45d5e3b6bbcbc716a76d87ba95c3ba17085066f512022093f
MD5 cdb112eb6d2fadec795685ad021b54f3
BLAKE2b-256 9d3a675b9ac25f71ee6180bff5c2233dbcb0b07322d5a1684385df0dd490b5d1

See more details on using hashes here.

Provenance

The following attestation bundles were made for eggp-1.0.11-cp310-cp310-macosx_14_0_arm64.whl:

Publisher: release.yml on folivetti/eggp

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

File details

Details for the file eggp-1.0.11-cp39-cp39-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for eggp-1.0.11-cp39-cp39-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 5dcdfb00179b92e1e0f6f8cbb254da127cbf3583989b47fcc11864faf5e8841a
MD5 e40a0d39b93e5144142a7359a3ce5c03
BLAKE2b-256 8a496dc0cea4c691c5683a48516139ac37ef60d6a2bc9627c2fc1a19fd21f12f

See more details on using hashes here.

Provenance

The following attestation bundles were made for eggp-1.0.11-cp39-cp39-manylinux_2_28_x86_64.whl:

Publisher: release.yml on folivetti/eggp

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

File details

Details for the file eggp-1.0.11-cp39-cp39-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for eggp-1.0.11-cp39-cp39-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 4952ab3463445a481385d6729698a903c4772711ba3f33d388d177a5118f7399
MD5 6145458fc43bed5b8c248e94a60e0664
BLAKE2b-256 6d29ae60e31e893cda96cb990c9c763f9e40d368ad6a7b4460b09a62827235aa

See more details on using hashes here.

Provenance

The following attestation bundles were made for eggp-1.0.11-cp39-cp39-manylinux_2_28_aarch64.whl:

Publisher: release.yml on folivetti/eggp

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

File details

Details for the file eggp-1.0.11-cp39-cp39-macosx_14_0_x86_64.whl.

File metadata

File hashes

Hashes for eggp-1.0.11-cp39-cp39-macosx_14_0_x86_64.whl
Algorithm Hash digest
SHA256 3432ff70f9981212d815b1aa8650ecd4ecbd798e306bf44c80a21fdda423e9cd
MD5 e170fa0d68450987c94833289020f081
BLAKE2b-256 859e0104173d3017d870f9c6c01f59881b654f4484f554c6955ef907b79b6753

See more details on using hashes here.

Provenance

The following attestation bundles were made for eggp-1.0.11-cp39-cp39-macosx_14_0_x86_64.whl:

Publisher: release.yml on folivetti/eggp

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

File details

Details for the file eggp-1.0.11-cp39-cp39-macosx_14_0_arm64.whl.

File metadata

  • Download URL: eggp-1.0.11-cp39-cp39-macosx_14_0_arm64.whl
  • Upload date:
  • Size: 12.0 MB
  • Tags: CPython 3.9, macOS 14.0+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for eggp-1.0.11-cp39-cp39-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 f0a3f0de2a71708d0fba9e714e9d2df93941937534b070d31d994341bd67bac5
MD5 d6cc5aee816a2672a364e2f7937a326d
BLAKE2b-256 e410403df95f584511d69348e5353d233384df812eeb78a55969ac59c5604f28

See more details on using hashes here.

Provenance

The following attestation bundles were made for eggp-1.0.11-cp39-cp39-macosx_14_0_arm64.whl:

Publisher: release.yml on folivetti/eggp

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