Skip to main content

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.14.1
  • 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).

Metadata

Release files for eggp 2.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for eggp 2.1.1
File Size Uploaded Provenance
eggp-2.1.1.tar.gz 58.2 kB With provenance Details

Built distributions (wheels)

Table of built distributions (wheels) for eggp 2.1.1
File
eggp-2.1.1-cp314-cp314t-manylinux_2_34_x86_64.whl CPython 3.14 CPython 3.14 free-threading Linux glibc 2.34+ x86-64 Details
eggp-2.1.1-cp314-cp314t-manylinux_2_34_aarch64.whl CPython 3.14 CPython 3.14 free-threading Linux glibc 2.34+ ARM64 Details
eggp-2.1.1-cp314-cp314t-macosx_15_0_x86_64.whl CPython 3.14 CPython 3.14 free-threading macOS 15.0+ x86-64 Details
eggp-2.1.1-cp314-cp314t-macosx_15_0_arm64.whl CPython 3.14 CPython 3.14 free-threading macOS 15.0+ ARM64 Details
eggp-2.1.1-cp314-cp314-manylinux_2_34_x86_64.whl CPython 3.14 CPython 3.14 Linux glibc 2.34+ x86-64 Details
eggp-2.1.1-cp314-cp314-manylinux_2_34_aarch64.whl CPython 3.14 CPython 3.14 Linux glibc 2.34+ ARM64 Details
eggp-2.1.1-cp314-cp314-macosx_15_0_x86_64.whl CPython 3.14 CPython 3.14 macOS 15.0+ x86-64 Details
eggp-2.1.1-cp314-cp314-macosx_15_0_arm64.whl CPython 3.14 CPython 3.14 macOS 15.0+ ARM64 Details
eggp-2.1.1-cp313-cp313-manylinux_2_34_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.34+ x86-64 Details
eggp-2.1.1-cp313-cp313-manylinux_2_34_aarch64.whl CPython 3.13 CPython 3.13 Linux glibc 2.34+ ARM64 Details
eggp-2.1.1-cp313-cp313-macosx_15_0_x86_64.whl CPython 3.13 CPython 3.13 macOS 15.0+ x86-64 Details
eggp-2.1.1-cp313-cp313-macosx_15_0_arm64.whl CPython 3.13 CPython 3.13 macOS 15.0+ ARM64 Details
eggp-2.1.1-cp312-cp312-manylinux_2_34_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.34+ x86-64 Details
eggp-2.1.1-cp312-cp312-manylinux_2_34_aarch64.whl CPython 3.12 CPython 3.12 Linux glibc 2.34+ ARM64 Details
eggp-2.1.1-cp312-cp312-macosx_15_0_x86_64.whl CPython 3.12 CPython 3.12 macOS 15.0+ x86-64 Details
eggp-2.1.1-cp312-cp312-macosx_15_0_arm64.whl CPython 3.12 CPython 3.12 macOS 15.0+ ARM64 Details
eggp-2.1.1-cp311-cp311-manylinux_2_34_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.34+ x86-64 Details
eggp-2.1.1-cp311-cp311-manylinux_2_34_aarch64.whl CPython 3.11 CPython 3.11 Linux glibc 2.34+ ARM64 Details
eggp-2.1.1-cp311-cp311-macosx_15_0_x86_64.whl CPython 3.11 CPython 3.11 macOS 15.0+ x86-64 Details
eggp-2.1.1-cp311-cp311-macosx_15_0_arm64.whl CPython 3.11 CPython 3.11 macOS 15.0+ ARM64 Details
eggp-2.1.1-cp310-cp310-manylinux_2_34_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.34+ x86-64 Details
eggp-2.1.1-cp310-cp310-manylinux_2_34_aarch64.whl CPython 3.10 CPython 3.10 Linux glibc 2.34+ ARM64 Details
eggp-2.1.1-cp310-cp310-macosx_15_0_x86_64.whl CPython 3.10 CPython 3.10 macOS 15.0+ x86-64 Details
eggp-2.1.1-cp310-cp310-macosx_15_0_arm64.whl CPython 3.10 CPython 3.10 macOS 15.0+ ARM64 Details
eggp-2.1.1-cp39-cp39-manylinux_2_34_x86_64.whl CPython 3.9 CPython 3.9 Linux glibc 2.34+ x86-64 Details
eggp-2.1.1-cp39-cp39-manylinux_2_34_aarch64.whl CPython 3.9 CPython 3.9 Linux glibc 2.34+ ARM64 Details
eggp-2.1.1-cp39-cp39-macosx_15_0_x86_64.whl CPython 3.9 CPython 3.9 macOS 15.0+ x86-64 Details
eggp-2.1.1-cp39-cp39-macosx_15_0_arm64.whl CPython 3.9 CPython 3.9 macOS 15.0+ ARM64 Details

Total release size: 676.1 MB

Release files / eggp-2.1.1.tar.gz

Download URL eggp-2.1.1.tar.gz
Size 58.2 kB
Tags Source
SHA-256 checksum
How to use checksums
292e5ab49ce926560b46575ac1ebc93219700a82cb25a2fc40955288cf7f9ec8
BLAKE2b-256 checksum
How to use checksums
908e51793fc6f355757b524d630ead35cb5e283262747892a99039bb4396905e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

Release files / eggp-2.1.1-cp314-cp314t-manylinux_2_34_x86_64.whl

Download URL eggp-2.1.1-cp314-cp314t-manylinux_2_34_x86_64.whl
Size 29.9 MB
Tags CPython 3.14 CPython 3.14 free-threading Linux glibc 2.34+ x86-64
SHA-256 checksum
How to use checksums
d1b1304ccc4d5ec54b3a9a468c018602413367c7abff852ee5b4994e337527f6
BLAKE2b-256 checksum
How to use checksums
4484f4fcc5de06e48ac8ca8e81d825e6b75084bdb04fd2bb7124b34369bc349e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

Release files / eggp-2.1.1-cp314-cp314t-manylinux_2_34_aarch64.whl

Download URL eggp-2.1.1-cp314-cp314t-manylinux_2_34_aarch64.whl
Size 31.7 MB
Tags CPython 3.14 CPython 3.14 free-threading Linux glibc 2.34+ ARM64
SHA-256 checksum
How to use checksums
974d7b5de70cd9dfabdcbfc99e4a8416e8fa20ff40e55a2ad15ae856ab1a7a8a
BLAKE2b-256 checksum
How to use checksums
00a20e7555d5a6dc3306afd1c54f213b3f74189dc1c322485979fc322d4ada20
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

Release files / eggp-2.1.1-cp314-cp314t-macosx_15_0_x86_64.whl

Download URL eggp-2.1.1-cp314-cp314t-macosx_15_0_x86_64.whl
Size 18.2 MB
Tags CPython 3.14 CPython 3.14 free-threading macOS 15.0+ x86-64
SHA-256 checksum
How to use checksums
21603d5c811c06e32ecf78b7610d7ca922dbf264ebbef399b4b8dd71267a1348
BLAKE2b-256 checksum
How to use checksums
f2a5e92b76e85188d808be89739f2d459a6205fd87005e73befd91cf86e0ae7f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

Release files / eggp-2.1.1-cp314-cp314t-macosx_15_0_arm64.whl

Download URL eggp-2.1.1-cp314-cp314t-macosx_15_0_arm64.whl
Size 16.8 MB
Tags CPython 3.14 CPython 3.14 free-threading macOS 15.0+ ARM64
SHA-256 checksum
How to use checksums
656bb9bcbc55c694b83630f030b6a392427fcb5848bc380d504a64ed27b7f5b1
BLAKE2b-256 checksum
How to use checksums
f7f3099f742c2778a14d2239e6d84b9cd7d9aeac69589fdfd36eada201bea4d8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

Release files / eggp-2.1.1-cp314-cp314-manylinux_2_34_x86_64.whl

Download URL eggp-2.1.1-cp314-cp314-manylinux_2_34_x86_64.whl
Size 29.9 MB
Tags CPython 3.14 Linux glibc 2.34+ x86-64
SHA-256 checksum
How to use checksums
1f98efb09621f0d29a94c4f90fb808d33560b3afe369a01e0e51d255da908b10
BLAKE2b-256 checksum
How to use checksums
d8d3ad02aa8c52228a8a9035c0a554b644594f4b55ecfc0bb5347b7764e44f03
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

Release files / eggp-2.1.1-cp314-cp314-manylinux_2_34_aarch64.whl

Download URL eggp-2.1.1-cp314-cp314-manylinux_2_34_aarch64.whl
Size 31.7 MB
Tags CPython 3.14 Linux glibc 2.34+ ARM64
SHA-256 checksum
How to use checksums
497de2a90280da918865badce8bcd2a157cc1574a5334b9354192119edecebd2
BLAKE2b-256 checksum
How to use checksums
de29a2e5a1e57c441ddc2b5bd9128978a1b3489f11c08f8b9a7f959f80a28dd7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

Release files / eggp-2.1.1-cp314-cp314-macosx_15_0_x86_64.whl

Download URL eggp-2.1.1-cp314-cp314-macosx_15_0_x86_64.whl
Size 18.2 MB
Tags CPython 3.14 macOS 15.0+ x86-64
SHA-256 checksum
How to use checksums
a4ed110011293651d0f33b0fd241b18cbefee999776f50c683995257b9283b6a
BLAKE2b-256 checksum
How to use checksums
9bafce97983c924a93b9f34091a267cd56a228e15c947771bd6842af88b306d3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

Release files / eggp-2.1.1-cp314-cp314-macosx_15_0_arm64.whl

Download URL eggp-2.1.1-cp314-cp314-macosx_15_0_arm64.whl
Size 16.8 MB
Tags CPython 3.14 macOS 15.0+ ARM64
SHA-256 checksum
How to use checksums
91e7069aa7ca8aa0863a30e571b42149a294b0c2ef817323ed9b6c62f15a55d5
BLAKE2b-256 checksum
How to use checksums
83b8f16ebaa61f65575fa369da983236825671d49f57164b057de95b63a123ce
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

Release files / eggp-2.1.1-cp313-cp313-manylinux_2_34_x86_64.whl

Download URL eggp-2.1.1-cp313-cp313-manylinux_2_34_x86_64.whl
Size 29.9 MB
Tags CPython 3.13 Linux glibc 2.34+ x86-64
SHA-256 checksum
How to use checksums
2c56c3a4dff58f18ca3d2cb1fe3a656b174f9f59db95bb048b211e86ed8a6433
BLAKE2b-256 checksum
How to use checksums
bc6159ec7566fac4c07fd83be9154a3b886d2d82fd81dce9eac44a788d2db09e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

Release files / eggp-2.1.1-cp313-cp313-manylinux_2_34_aarch64.whl

Download URL eggp-2.1.1-cp313-cp313-manylinux_2_34_aarch64.whl
Size 31.7 MB
Tags CPython 3.13 Linux glibc 2.34+ ARM64
SHA-256 checksum
How to use checksums
ed58e43e28d668c50f76b91737cc3c967e14ac84585aacdc37d842ec74864d0e
BLAKE2b-256 checksum
How to use checksums
167f15b8e3fffdb4f32d6fa52b2ba237bd1665b7bf5931a44fb109e476bbcb1c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

Release files / eggp-2.1.1-cp313-cp313-macosx_15_0_x86_64.whl

Download URL eggp-2.1.1-cp313-cp313-macosx_15_0_x86_64.whl
Size 18.2 MB
Tags CPython 3.13 macOS 15.0+ x86-64
SHA-256 checksum
How to use checksums
d3a6d3dfe103b0db1b23fd46869a016b35013134169f45fd3e5087ba8fcbbaef
BLAKE2b-256 checksum
How to use checksums
2a826f246fecef538afd355139aec670dd30b8d0d8d7f72f452580945cbaf278
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

Release files / eggp-2.1.1-cp313-cp313-macosx_15_0_arm64.whl

Download URL eggp-2.1.1-cp313-cp313-macosx_15_0_arm64.whl
Size 16.8 MB
Tags CPython 3.13 macOS 15.0+ ARM64
SHA-256 checksum
How to use checksums
79d341e801982cf4442eee229a8504d6c7c18b6e409d2385746e4f568152d4af
BLAKE2b-256 checksum
How to use checksums
c2a363f13a6c1cb3a4fb4fe04eecaf5ecc71aeb1aa2555f31a4792ac9c99261f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

Release files / eggp-2.1.1-cp312-cp312-manylinux_2_34_x86_64.whl

Download URL eggp-2.1.1-cp312-cp312-manylinux_2_34_x86_64.whl
Size 29.9 MB
Tags CPython 3.12 Linux glibc 2.34+ x86-64
SHA-256 checksum
How to use checksums
48ababfe557bd91f671e7865efce8a9e5ade21450c532b23f9c8e41c51b29da4
BLAKE2b-256 checksum
How to use checksums
580b23bd12bef1202494c7b9de8909003d80cdbbc87b1ff73685437e22a02920
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

Release files / eggp-2.1.1-cp312-cp312-manylinux_2_34_aarch64.whl

Download URL eggp-2.1.1-cp312-cp312-manylinux_2_34_aarch64.whl
Size 31.7 MB
Tags CPython 3.12 Linux glibc 2.34+ ARM64
SHA-256 checksum
How to use checksums
df3e4347bf522cd5c083072bdb627b5475f85501d1aa599208374658c7bac8d1
BLAKE2b-256 checksum
How to use checksums
e5b80febab9ef210e0207824260493128cdeeb563b0ce2c9e86575aedc1c13c9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

Release files / eggp-2.1.1-cp312-cp312-macosx_15_0_x86_64.whl

Download URL eggp-2.1.1-cp312-cp312-macosx_15_0_x86_64.whl
Size 18.2 MB
Tags CPython 3.12 macOS 15.0+ x86-64
SHA-256 checksum
How to use checksums
d240d918ae642915124d5f43fe98d9b55449984a88598912d3af1fba460c2a07
BLAKE2b-256 checksum
How to use checksums
af5aa031fcd7c325634149ba40557ca32c37fe0a302f43cc99e5ca808b316ffa
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

Release files / eggp-2.1.1-cp312-cp312-macosx_15_0_arm64.whl

Download URL eggp-2.1.1-cp312-cp312-macosx_15_0_arm64.whl
Size 16.8 MB
Tags CPython 3.12 macOS 15.0+ ARM64
SHA-256 checksum
How to use checksums
718ad05724af7af2cc953a1d3c8d38c0c29eaefd7c5457f183197faef114b015
BLAKE2b-256 checksum
How to use checksums
217cdfa73f0fc51519ca91722c1807e308bb110c3a96a815a4ae87f90be01cdd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

Release files / eggp-2.1.1-cp311-cp311-manylinux_2_34_x86_64.whl

Download URL eggp-2.1.1-cp311-cp311-manylinux_2_34_x86_64.whl
Size 29.9 MB
Tags CPython 3.11 Linux glibc 2.34+ x86-64
SHA-256 checksum
How to use checksums
1f3e7769ffcb7ff66f5bb6de26968b5aa63564a026dd1033139df0352cd63f2c
BLAKE2b-256 checksum
How to use checksums
8027e3e3703ca509a3db0e48ce20b55d009629aa4a0902f4ecc79c4aca3a2e31
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

Release files / eggp-2.1.1-cp311-cp311-manylinux_2_34_aarch64.whl

Download URL eggp-2.1.1-cp311-cp311-manylinux_2_34_aarch64.whl
Size 31.7 MB
Tags CPython 3.11 Linux glibc 2.34+ ARM64
SHA-256 checksum
How to use checksums
61c39b026ba3dbe4b6fb1e873473e916e46822ba87fcb5486f88bb3bbd0ea862
BLAKE2b-256 checksum
How to use checksums
cd62eee819f647cdfa889076c7526e4c0b836263751b626a38d0295f91510a4c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

Release files / eggp-2.1.1-cp311-cp311-macosx_15_0_x86_64.whl

Download URL eggp-2.1.1-cp311-cp311-macosx_15_0_x86_64.whl
Size 18.2 MB
Tags CPython 3.11 macOS 15.0+ x86-64
SHA-256 checksum
How to use checksums
16947c12583a575a9eb34f9dd7061bd253e9813db3208491a369832705e71ae5
BLAKE2b-256 checksum
How to use checksums
ea306057488d9590bf9af4c0002a4458bc4d0ef77d5714992b92347306b23580
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

Release files / eggp-2.1.1-cp311-cp311-macosx_15_0_arm64.whl

Download URL eggp-2.1.1-cp311-cp311-macosx_15_0_arm64.whl
Size 16.8 MB
Tags CPython 3.11 macOS 15.0+ ARM64
SHA-256 checksum
How to use checksums
0559776ac4b5c2eacae5e545ef5ba75b426b0ba88cfee87e8f80f6670386838c
BLAKE2b-256 checksum
How to use checksums
71ef872d06ec7d44dfa1ed26e1db15f862de5c32dbc176abd583d528ffaa0de9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

Release files / eggp-2.1.1-cp310-cp310-manylinux_2_34_x86_64.whl

Download URL eggp-2.1.1-cp310-cp310-manylinux_2_34_x86_64.whl
Size 29.9 MB
Tags CPython 3.10 Linux glibc 2.34+ x86-64
SHA-256 checksum
How to use checksums
75f9badf9d2090bf6680f08449b65fa09ba0cbaa2888637baaa33b3ca428b4cd
BLAKE2b-256 checksum
How to use checksums
db3f10fb09e0aac98382a7ffaf029cbf779c4c74aca0d24b418a1c2ca8bc81e7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

Release files / eggp-2.1.1-cp310-cp310-manylinux_2_34_aarch64.whl

Download URL eggp-2.1.1-cp310-cp310-manylinux_2_34_aarch64.whl
Size 31.7 MB
Tags CPython 3.10 Linux glibc 2.34+ ARM64
SHA-256 checksum
How to use checksums
aec62d47af579a55f6d32183b06b4b97805e53c2d8184f4e2b47e1613b019d87
BLAKE2b-256 checksum
How to use checksums
114a8a8af9d2e3a8f5f0ed8ad6c2fb41fb2f32f51e3fa329d043b0fdd59bd0ed
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

Release files / eggp-2.1.1-cp310-cp310-macosx_15_0_x86_64.whl

Download URL eggp-2.1.1-cp310-cp310-macosx_15_0_x86_64.whl
Size 18.2 MB
Tags CPython 3.10 macOS 15.0+ x86-64
SHA-256 checksum
How to use checksums
a4a659c4df86548cb648302bd29ca0fb904c0651a4c80e573ec5c6a6555f217f
BLAKE2b-256 checksum
How to use checksums
dbd8a97ac8676e6098ccd4ffe3b9d2d7e4ef10992173f46e36ead739dfd88585
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

Release files / eggp-2.1.1-cp310-cp310-macosx_15_0_arm64.whl

Download URL eggp-2.1.1-cp310-cp310-macosx_15_0_arm64.whl
Size 16.8 MB
Tags CPython 3.10 macOS 15.0+ ARM64
SHA-256 checksum
How to use checksums
38709c856d6a01a22b94ae669ca99520a08a483e71812c8b5769641a95782ff9
BLAKE2b-256 checksum
How to use checksums
ec4e468e3e8a5621b57665d046122476cec3cf4d196126ccc0d52c502cb018d4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

Release files / eggp-2.1.1-cp39-cp39-manylinux_2_34_x86_64.whl

Download URL eggp-2.1.1-cp39-cp39-manylinux_2_34_x86_64.whl
Size 29.9 MB
Tags CPython 3.9 Linux glibc 2.34+ x86-64
SHA-256 checksum
How to use checksums
2eb4b88bf2e11cfa71884d6193d87d04c27ed87da1faf12849cb561b1d478eb1
BLAKE2b-256 checksum
How to use checksums
409a7e9360eb298dc8dfcfd5df8b87097a204886541e60faa8ec7a7ac3d15d2c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

Release files / eggp-2.1.1-cp39-cp39-manylinux_2_34_aarch64.whl

Download URL eggp-2.1.1-cp39-cp39-manylinux_2_34_aarch64.whl
Size 31.7 MB
Tags CPython 3.9 Linux glibc 2.34+ ARM64
SHA-256 checksum
How to use checksums
7cb91786b6704a7385ae89bca41c312a85ceb0bd7c91449db464c0ca0955f1eb
BLAKE2b-256 checksum
How to use checksums
6324ef7d9732e6602b0ee33129d13729c87805f17af2e40e5e22f20d5484b798
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

Release files / eggp-2.1.1-cp39-cp39-macosx_15_0_x86_64.whl

Download URL eggp-2.1.1-cp39-cp39-macosx_15_0_x86_64.whl
Size 18.2 MB
Tags CPython 3.9 macOS 15.0+ x86-64
SHA-256 checksum
How to use checksums
9af2cd1640ad829c6609deba75c8a16341c98f0d871573a22bf56a2aed0d101d
BLAKE2b-256 checksum
How to use checksums
83ce2272acedcc5db860302f5a91b6d04a5592bc7ee7e841b07bd0cffcb20288
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

Release files / eggp-2.1.1-cp39-cp39-macosx_15_0_arm64.whl

Download URL eggp-2.1.1-cp39-cp39-macosx_15_0_arm64.whl
Size 16.8 MB
Tags CPython 3.9 macOS 15.0+ ARM64
SHA-256 checksum
How to use checksums
46c59af0e3f9e6a6a6165e3905e140487adb14974389ba80644bc76e0aaf1549
BLAKE2b-256 checksum
How to use checksums
fe982a7e12f1ce1be3b80bc5168c59959df243059ad541287651eea8780e7472
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

Security for eggp 2.1.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 29 files in this release have been uploaded with provenance metadata.

Select from 29 files

Attestation for eggp-2.1.1.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 21, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page