Skip to main content

Symbolic regression via the EML operator — find the math formula hidden in your data

Project description

VietNamese click here!

eml_sr: Primitivizing Continuous Mathematics in Rust

Crates.io PyPI License: MIT

System Installation Command Registry
Rust / Cargo cargo add eml_sr crates.io
Python / Pip pip install eml_sr pypi.org

Introduction

eml_sr is a high-performance Rust library built around one of the deepest structural discoveries in continuous mathematics: All elementary functions can be represented using the EML operator.

In the world of digital electronics, the NAND gate is the fundamental building block. Similarly, eml_sr provides the "EML operator" as a universal bridge for continuous mathematics. This library allows developers to represent complex formulas using either a uniform EML-only structure or a high-performance hybrid structure that combines EML with optimized standard operators.

Instead of relying solely on cumbersome Abstract Syntax Trees (AST), eml_sr gives you the power to streamline your mathematical architecture using EML as the unifying core.

Paradigm Shift with EML

eml_sr was not created to replace standard math libraries, but to provide a completely new approach to representing and discovering mathematical structures.

1. Data Structure Transformation: From Heterogeneous to Homogeneous

When building an Abstract Syntax Tree (AST) for a mathematical expression:

  • Traditional Method (Heterogeneous AST): Uses many different node types (Add, Mul, Sin, Exp...).

    • Pros: Direct description and extremely fast computation on current hardware.
    • Challenges: When writing formula transformation algorithms (like auto-differentiation or expression simplification), developers must handle countless branch cases (switch-case) for each operator.
  • The EML Approach (Homogeneous Binary Tree): Reduces the complexity of mathematical spaces by using EmlNode as a unifying structure.

    • Value Proposition: The diversity of mathematics is "compressed" into a streamlined graph structure. Whether using pure EML or optimized hybrids, your core code remains lean, predictable, and extremely safe.

2. Artificial Intelligence (Symbolic Regression): From Discrete Search to Continuous Optimization

In tasks where AI is required to automatically discover formulas from raw data:

  • Traditional Method (Combinatorial Search): AI must choose and combine from a "dictionary" containing dozens of different base operators (Base Set) through genetic algorithms.

    • Characteristics: Effective for short expressions, but the search space explodes exponentially as complexity increases.
  • The EML Approach (Continuous Optimization): Completely skips the function selection step. The AI is provided with a "Master Formula" – a massive EML tree containing all possibilities of elementary functions.

    • Value Proposition: EML turns the difficult "combinatorial search" problem into a smooth "Gradient Optimization" problem. By using standard optimizers (like Adam) on the tree branches and rounding weights (snapping), Neural Networks can automatically prune and reveal sharp, precise physical and mathematical laws, fundamentally solving the "black box" problem of AI.

3. The EML: Efficiency Meets Universality

To understand the unique value of eml_sr, think of the relationship between Standard Operators and the EML Operator:

  • Standard Operators (Sin, Cos, Pi, E...) are like "Lego Bricks": They are pre-shaped components. If you want to build a standard house, using Lego is fast and efficient. These are our "High-Speed Shortcuts" for discovering known mathematical laws.
  • The EML Operator is like "Clay": You can mold clay into any shape. While you can use clay to make a brick, its true power lies in creating complex, organic forms that no Lego brick could ever represent.

In eml_sr, we combine both. We provide standard constants and functions to ensure the engine is lightning-fast for common tasks. But we keep EML at the core to ensure the engine is never limited. When traditional mathematics encounters an unknown relationship, EML acts as the universal discovery engine to find laws that don't have a name yet.

[!NOTE] 💡 Note on Architecture & Trade-offs: The absolute uniformity of EML comes with trade-offs regarding expression tree depth and strict requirements for floating-point precision. To understand these issues better, please see my personal analysis and discussion in docs/WHATITHINK.txt.

Scientific Foundation and Authors

Andrzej Odrzywołek, a theoretical physicist at the Institute of Theoretical Physics at the Jagiellonian University (Krakow, Poland), is the author behind the groundbreaking discovery of the minimalism of continuous mathematics. Through personal research effort and a systematic exhaustive search method, he solved a problem that had no precedent: finding a single "atom" for all functions.

The core discovery of Andrzej Odrzywołek is the EML (Exp-Minus-Log) operator: eml(x, y) = e^(x) - ln(y) He has convincingly proven that this operator, when combined with only the constant 1, can reproduce the entire catalog of a standard scientific calculator. This includes:

  • Basic arithmetic operations (+, -, x, /).
  • All elementary functions (sin, cos, log, powers...).
  • Fundamental constants of mathematics such as e, pi, and the imaginary unit i.

Andrzej Odrzywołek's vision does not stop at pure theory. He has established a rigorous verification process, using independent transcendental constants to prove that all mathematical expressions can be converted into a uniform binary tree structure of EML nodes. His work opens up massive potential applications in creating minimalist analog computing circuits and enhancing the explainability of artificial intelligence through symbolic regression.

Full reference documentation: All elementary functions from a single operator

Practical Applications of EML

The power of the EML operator lies not only in its theoretical elegance. Below are the areas where the eml_sr library can become the core engine for next-generation software systems.

1. Artificial Intelligence (Machine Learning & Symbolic Regression)

This is the largest and most practical application of EML in software today:

  • Symbolic Regression: Instead of AI models searching over messy grammars containing many different operators, EML allows for the creation of a multi-parameter "master formula" using a binary tree structure. The entire search space is collapsed into weight optimization on a single uniform structure, instead of fumbling through billions of different structural combinations.

  • Breaking the AI "Black Box": You can use standard optimization algorithms (like Adam) to train neural networks based on this EML tree. Upon successful training, the system can snap weights to exact values (0 or 1), helping the AI output a clear mathematical formula (closed-form expressions) instead of just predicted numbers. This is the key to turning AI from a "black box" into a tool that humans can read, understand, and trust.

2. Building Compilers and Virtual Machines

EML provides an ideal foundation for developers to build ultra-minimalist execution systems:

  • EML Compiler: You can use the eml_sr library as a core engine to write compiler software capable of converting any mathematical formula (e.g., sin(x) + e^x) into pure EML form — a series of nested EML instructions containing only the constant 1.

  • Single Instruction Stack Machine: This pure EML form can be executed on a simulated stack machine that has exactly one single instruction. Imagine an RPN (Reverse Polish Notation) calculator with exactly one button — that is the essence of an EML virtual machine. This extreme simplicity makes formal verification more feasible and easier than ever.

3. VLSI Design and Analog Computing

EML acts as a bridge between software engineers and hardware engineers:

  • Because all elementary functions become uniform binary trees in EML notation, you can use the eml_sr library to write software that compiles formulas into circuit schematics.

  • This is very useful in analog computing, where engineers can create multivariate function computing circuits by connecting a binary tree topology structure of identical EML elements. Instead of designing separate circuits for each operation (+, x, sin...), you can mass-produce a single type of EML component and connect them according to the tree diagram.

4. Data Structure Design and Parsing

EML brings radical simplicity to the processing of mathematical expressions in software:

  • Instead of writing handling code for dozens of different operations (+, -, sin, cos...), your software only needs to handle one extremely simple context-free grammar: S -> 1|eml(S, S)

  • This makes systems for storage, parsing, or formal processing of mathematical expressions incredibly efficient. Every expression — no matter how complex — can be reduced to a highly uniform structure, simplifying evaluation logic and reducing architectural overhead.

Quick Start

1. Installation

Python Users:

pip install eml_sr

Rust Users:

cargo add eml_sr

2. Basic Usage (Python)

Discover the hidden formula in your data using the Scikit-Learn compatible API:

from eml_sr import Searcher

# Your data
X = [[1.0], [2.0], [3.0]]
y = [2.5, 4.5, 6.5]  # f(x) = 2x + 0.5

# Search for the formula
searcher = Searcher()
result = searcher.fit(X, y)

print(f"Formula: {result.formula}")
# Output: Formula: (v_{0} * 2.0) + 0.5

3. Basic Usage (Rust)

use eml_sr::{Searcher, SearchConfig};

fn main() {
    let searcher = Searcher::new(SearchConfig::default());
    let xs = vec![1.0, 2.0, 3.0];
    let ys = vec![2.5, 4.5, 6.5];
    
    if let Ok(result) = searcher.find_function(&xs, &ys) {
        println!("Found formula: {}", result.formula);
    }
}

Project Status & Safety

For detailed information about current capabilities, supported platforms, and critical safety warnings regarding memory usage (OOM), please see docs/STATUS.md.

Development & Contributing

If you want to build from source, run benchmarks, or contribute to the core engine, please see docs/CONTRIBUTING.md.


Note: The eml_sr library is a production-ready implementation of the EML operator theory.

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

eml_sr-0.1.3.tar.gz (46.6 kB view details)

Uploaded Source

Built Distributions

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

eml_sr-0.1.3-cp314-cp314-win_amd64.whl (269.6 kB view details)

Uploaded CPython 3.14Windows x86-64

eml_sr-0.1.3-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (393.5 kB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ x86-64

eml_sr-0.1.3-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (387.7 kB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ ARM64

eml_sr-0.1.3-cp314-cp314-macosx_11_0_arm64.whl (351.5 kB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

eml_sr-0.1.3-cp314-cp314-macosx_10_12_x86_64.whl (362.8 kB view details)

Uploaded CPython 3.14macOS 10.12+ x86-64

eml_sr-0.1.3-cp313-cp313-win_amd64.whl (269.6 kB view details)

Uploaded CPython 3.13Windows x86-64

eml_sr-0.1.3-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (393.4 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

eml_sr-0.1.3-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (387.7 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

eml_sr-0.1.3-cp313-cp313-macosx_11_0_arm64.whl (351.5 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

eml_sr-0.1.3-cp313-cp313-macosx_10_12_x86_64.whl (362.8 kB view details)

Uploaded CPython 3.13macOS 10.12+ x86-64

eml_sr-0.1.3-cp312-cp312-win_amd64.whl (269.7 kB view details)

Uploaded CPython 3.12Windows x86-64

eml_sr-0.1.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (393.6 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

eml_sr-0.1.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (387.8 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

eml_sr-0.1.3-cp312-cp312-macosx_11_0_arm64.whl (351.7 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

eml_sr-0.1.3-cp312-cp312-macosx_10_12_x86_64.whl (363.1 kB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

eml_sr-0.1.3-cp311-cp311-win_amd64.whl (269.0 kB view details)

Uploaded CPython 3.11Windows x86-64

eml_sr-0.1.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (393.3 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

eml_sr-0.1.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (387.7 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

eml_sr-0.1.3-cp311-cp311-macosx_11_0_arm64.whl (351.8 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

eml_sr-0.1.3-cp311-cp311-macosx_10_12_x86_64.whl (363.2 kB view details)

Uploaded CPython 3.11macOS 10.12+ x86-64

eml_sr-0.1.3-cp310-cp310-win_amd64.whl (271.8 kB view details)

Uploaded CPython 3.10Windows x86-64

eml_sr-0.1.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (395.9 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

eml_sr-0.1.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (388.0 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64

eml_sr-0.1.3-cp310-cp310-macosx_11_0_arm64.whl (353.9 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

eml_sr-0.1.3-cp310-cp310-macosx_10_12_x86_64.whl (365.4 kB view details)

Uploaded CPython 3.10macOS 10.12+ x86-64

eml_sr-0.1.3-cp39-cp39-win_amd64.whl (270.9 kB view details)

Uploaded CPython 3.9Windows x86-64

eml_sr-0.1.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (397.4 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

eml_sr-0.1.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (388.7 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ ARM64

eml_sr-0.1.3-cp39-cp39-macosx_11_0_arm64.whl (354.4 kB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

eml_sr-0.1.3-cp39-cp39-macosx_10_12_x86_64.whl (365.5 kB view details)

Uploaded CPython 3.9macOS 10.12+ x86-64

eml_sr-0.1.3-cp38-cp38-win_amd64.whl (270.8 kB view details)

Uploaded CPython 3.8Windows x86-64

eml_sr-0.1.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (396.9 kB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ x86-64

eml_sr-0.1.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (388.7 kB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ ARM64

eml_sr-0.1.3-cp38-cp38-macosx_11_0_arm64.whl (354.3 kB view details)

Uploaded CPython 3.8macOS 11.0+ ARM64

eml_sr-0.1.3-cp38-cp38-macosx_10_12_x86_64.whl (365.1 kB view details)

Uploaded CPython 3.8macOS 10.12+ x86-64

File details

Details for the file eml_sr-0.1.3.tar.gz.

File metadata

  • Download URL: eml_sr-0.1.3.tar.gz
  • Upload date:
  • Size: 46.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.13.1

File hashes

Hashes for eml_sr-0.1.3.tar.gz
Algorithm Hash digest
SHA256 262abc9796ea4b57d777fc25f5071380a3e1835a4a804431f7b12e7e013cdcf0
MD5 1b04fb9b184a0f6caf366c03305ce5dc
BLAKE2b-256 51252158efab76ec02a13840b69409ecbd56cf5e5745c633ef7f81800b581321

See more details on using hashes here.

File details

Details for the file eml_sr-0.1.3-cp314-cp314-win_amd64.whl.

File metadata

  • Download URL: eml_sr-0.1.3-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 269.6 kB
  • Tags: CPython 3.14, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.13.1

File hashes

Hashes for eml_sr-0.1.3-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 79bec357708152af4512ea5c9d28ab0dd90b1398b0720a72cfada93459f8de56
MD5 ac76826f071799bbb3fc00798cc3c602
BLAKE2b-256 902c782bf7e0598eb9ac201c4b95bbbdcd2772b83fdf97c1dd46b33a40b98e5c

See more details on using hashes here.

File details

Details for the file eml_sr-0.1.3-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for eml_sr-0.1.3-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 0a69c71cea1849cf52f4a92ade6b6c16b021109479a06f4c33f4de574f9a58a5
MD5 0699b4b942c94f47522bf28dfef1a3dc
BLAKE2b-256 31898c0938280316d22a36c03fc695abb6881f7cd065fe7127140cc25672115b

See more details on using hashes here.

File details

Details for the file eml_sr-0.1.3-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for eml_sr-0.1.3-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 511cdf8c8dd9150dc1ef11d477c663a6436f4833fbcde17d5cd1fdbf0517eb14
MD5 1b9ea3051f8d3c649d96890acd15b902
BLAKE2b-256 2a9586a9c20c21ebf853557215ba68529fca6a32b9e575ee730244a429a31ba3

See more details on using hashes here.

File details

Details for the file eml_sr-0.1.3-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for eml_sr-0.1.3-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 1221700fa2a6579ef694751cedb245d0c49d7f3dbc842e6aa73b8164636c9d0f
MD5 0ea7c7742fbe89f13326ae6169489f92
BLAKE2b-256 adb925af0bd705f3d97e7030bd5ac29e30858f1f0f06dc9bb734434f15e0287a

See more details on using hashes here.

File details

Details for the file eml_sr-0.1.3-cp314-cp314-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for eml_sr-0.1.3-cp314-cp314-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 c87d2dc33e39c72e6ca64016ba341136eda2425f40083118f66a9f0543a34910
MD5 1cc6740e5f5ebf2bb50d4fdca88f0278
BLAKE2b-256 7f801be43cca632b656b1f16c8cbd4b93bc9856e83438caf10d70057c96ff6d6

See more details on using hashes here.

File details

Details for the file eml_sr-0.1.3-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: eml_sr-0.1.3-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 269.6 kB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.13.1

File hashes

Hashes for eml_sr-0.1.3-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 d913871712f6557b6ca64f3549272990a316457f2bd2fef9a32e69346daaba46
MD5 320150d2fa79f8daad7a9eb902c608ad
BLAKE2b-256 6facc0126b92b73283a28fa491971480ca9fc77dd431edf032e6b2c61f8fa4f6

See more details on using hashes here.

File details

Details for the file eml_sr-0.1.3-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for eml_sr-0.1.3-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 dd124f4575d667741e27f35b5e4ca985a1d8aa5c8c6678c91f8a6cd1033a3ce5
MD5 fbcc3103e1783f5404d9a8c6f9110b2d
BLAKE2b-256 b3dc629ad29b242177348b4d500195dd27e0b6b5fe3ebd839ab8e84296a283ac

See more details on using hashes here.

File details

Details for the file eml_sr-0.1.3-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for eml_sr-0.1.3-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 db5fffa643b5d14493aae980a6ff5ec7118ed6c3b6191289a0db3cdbba6d1399
MD5 9c706aed9b95748ea4db67801deccbf7
BLAKE2b-256 f4fd56d99b5a9eb658c406466b61a70405b8457bb7e55e27bee708dfbc6ed542

See more details on using hashes here.

File details

Details for the file eml_sr-0.1.3-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for eml_sr-0.1.3-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 a11541421cea5647721a9ae27d5876464951945356a7253e853d4d60e02639b0
MD5 11d3e283475f77f3fcaf63debefa47a8
BLAKE2b-256 0c42cf8d8f48369e126dac8c00e1eb1eee3305f0520aa03a0fbce86cd9fcd1ea

See more details on using hashes here.

File details

Details for the file eml_sr-0.1.3-cp313-cp313-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for eml_sr-0.1.3-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 a9a86e01193dc9cf21e5c19bcdc10ab6d52be3e5285beb256b10eb5cc97d20c8
MD5 bddbb764393ee107191aa131cbf94865
BLAKE2b-256 2b7d78aa303a8e9bedadc6aa1762367eabe48641b512253949e6bdb5515bfbc4

See more details on using hashes here.

File details

Details for the file eml_sr-0.1.3-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: eml_sr-0.1.3-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 269.7 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.13.1

File hashes

Hashes for eml_sr-0.1.3-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 7bd0ad808abe84378bb52e5bf3c8a0322ebc14aba542dfac7ede90a877442c5c
MD5 0073d694c117012211f15c0a1ea6ae52
BLAKE2b-256 2fb0b640bcd381e44b7a974cce15f601e094069eb8473db81740d187f1b2f8d8

See more details on using hashes here.

File details

Details for the file eml_sr-0.1.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for eml_sr-0.1.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 cf1166842af2aea5fe8ce3c91dcb3691f46fdf0bc402ce7edec838ebd325da67
MD5 133af2c6f879e29cf19544583e969d00
BLAKE2b-256 810a94af56978a7813e63923c991955d5edd1e2904893df4d813eb5189070d74

See more details on using hashes here.

File details

Details for the file eml_sr-0.1.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for eml_sr-0.1.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 74d717fe8f2724e6aa1a3bca6626f46d3cfb43792f502dbb585de3c4ed2bc713
MD5 1d552230af3269417018f8b04981ee45
BLAKE2b-256 bdd0dffc24e3987917ac239518f66f2491c96e5246f1993913c00d093feb3020

See more details on using hashes here.

File details

Details for the file eml_sr-0.1.3-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for eml_sr-0.1.3-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 5d09540f3bb63d5d596e2845711a52410fbb862fd13eac2c1d1674859ff4437d
MD5 e612a32f2af8763e13ce5f21c66ed198
BLAKE2b-256 5ca277930b0a1df2731230c8aa1cfdd8ec545931e26c9529976f961da9bf017f

See more details on using hashes here.

File details

Details for the file eml_sr-0.1.3-cp312-cp312-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for eml_sr-0.1.3-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 709f8989611375b3bc207e4328c302f0d62301afb1e02ccb77fe99864754e5ca
MD5 0844a0d3e27ed50b19877984c3e65c93
BLAKE2b-256 305f75d04202d197e862b4197030dad406a0404f34ad5a93a0a1df4437f73195

See more details on using hashes here.

File details

Details for the file eml_sr-0.1.3-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: eml_sr-0.1.3-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 269.0 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.13.1

File hashes

Hashes for eml_sr-0.1.3-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 3bdb769321c30ce165f6ae21bda12f2bff731cfd995a1af84ef2fc39e8c1aa52
MD5 518ebbd8ee8c8bcc45f80a26a7aefc25
BLAKE2b-256 663c4bb3e8c7caa6923766a82fe0854a8b6cee2b727fed4ff593c4623af62542

See more details on using hashes here.

File details

Details for the file eml_sr-0.1.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for eml_sr-0.1.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 c22022ec97d860720bfb7d754234178a521d60515759edb3d637735b4f6395b9
MD5 e4cb8b0d639b43f2c06605ee69224ef7
BLAKE2b-256 084d35b2734e3963140a6e05f23df9b2f60e8553aa30362591879c0cfb848cec

See more details on using hashes here.

File details

Details for the file eml_sr-0.1.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for eml_sr-0.1.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 ea2a773b0006a3584b83c0e66bad680e8944e4134148c1015bfa451eabd991e5
MD5 a7d0ff041700685eef23fe28d97fc323
BLAKE2b-256 0be62c22e9be057cf85e32cd269cb5bcabcfd4bf12da60f25dced8f53b43cb5d

See more details on using hashes here.

File details

Details for the file eml_sr-0.1.3-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for eml_sr-0.1.3-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 8ff2db8f226c9fc16c601472831b5a73d214598b150e3cf715b32719b5109651
MD5 11fb7e3f80190c3c1eb7977cb1751706
BLAKE2b-256 d09cf9520791c17d639f97b148540919ea369da9ce6cab37f670b9f686085fe8

See more details on using hashes here.

File details

Details for the file eml_sr-0.1.3-cp311-cp311-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for eml_sr-0.1.3-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 60be805c766a64e978f5c25ab2505fe0b778346b24e6fdd50256a4eab2b08edc
MD5 055642f6d22dee8f37b1d96648b79559
BLAKE2b-256 17acd54d414b057933804a362146b3189bb4f38e69cb56b32e9fd2dce0e21069

See more details on using hashes here.

File details

Details for the file eml_sr-0.1.3-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: eml_sr-0.1.3-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 271.8 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.13.1

File hashes

Hashes for eml_sr-0.1.3-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 3e58d97d32ab20310e8a67ef6cd1c3437eb401cfca248de4aaebfd6610d895fe
MD5 82b3221c0c05af2538981b834f0bce2d
BLAKE2b-256 1e9f2140988187f0562d5bc26478bcf38986a3792b7fec82e807541266beb5c3

See more details on using hashes here.

File details

Details for the file eml_sr-0.1.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for eml_sr-0.1.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 8dc174b01b2ba524a012b113c9ecf29cd2e0a591452536ab2dec22cb5a3bf891
MD5 4bcc932412c2ec1096d888d6e6deafe3
BLAKE2b-256 83202dbc75a9c6c854976cd05fb580613766951f0118740764a68e187245bd94

See more details on using hashes here.

File details

Details for the file eml_sr-0.1.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for eml_sr-0.1.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 535ebb89828640dbce3164df014bbb948416030bfe2acb42842f7652aa2bef22
MD5 6b581f85846b4d52a54532b4b2bc9429
BLAKE2b-256 5f2dc909af00fd76f82afe24c9b83f12dee6b7ebe78ade5ff698fdc53a13513f

See more details on using hashes here.

File details

Details for the file eml_sr-0.1.3-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for eml_sr-0.1.3-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 002f1c50a5077e1e0743ba7b21d718808c9e897d9b11e7b237972b3e12300734
MD5 e656834468a5515fa8e433584c7744f4
BLAKE2b-256 b359b35c668849bc05d428243c836d8b33ded967869a1f28383f2a05dba0fa4a

See more details on using hashes here.

File details

Details for the file eml_sr-0.1.3-cp310-cp310-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for eml_sr-0.1.3-cp310-cp310-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 88dcf8ccc913023c7c2da8188d5604fe53917ffa2f9988b179ec0beeff4965df
MD5 0bbe346d31067ec1032b7e648e9ef20f
BLAKE2b-256 ca608c98458dbaa5404807eaba697aa955c4ef6bdf777b2f9dc1575b4411d4b5

See more details on using hashes here.

File details

Details for the file eml_sr-0.1.3-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: eml_sr-0.1.3-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 270.9 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.13.1

File hashes

Hashes for eml_sr-0.1.3-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 75a249134bb24898d5a2aeead4f59188641aebf186f3161eb6c8e15f9b39f0a1
MD5 025df6fa5eb1e3dd751f98cea0d434f8
BLAKE2b-256 5c4da69662ef3711b4eff986ee0d7c047eda8fabc8caba1252ed21743a3481ab

See more details on using hashes here.

File details

Details for the file eml_sr-0.1.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for eml_sr-0.1.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 43e4d1806d71e627f5d073b3c798ba668893af7711e5bd49cb984c21a7926e79
MD5 d6bf652ee90676dae76f903a89b18179
BLAKE2b-256 50ddf9d514f414c721f156ee7a868d62393110f2b4f2cfce9a3e2f88cd347c3b

See more details on using hashes here.

File details

Details for the file eml_sr-0.1.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for eml_sr-0.1.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 9e930d526e658ea8ee491dc8cad993821e20003b43b9ecf3bc13b437f529f5b9
MD5 d9ce6165273561654ee11fc41fd884f0
BLAKE2b-256 0df433f7aaf583d53d4daabd5abddaf90ae905bc65557fd0dd35d216a2f8b1f2

See more details on using hashes here.

File details

Details for the file eml_sr-0.1.3-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for eml_sr-0.1.3-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 594d36ee6296d61e8b61747496b451ed85788ae8994c754c86d6ae026a7a3f49
MD5 4ad2b48e0b1abbadd54344f6891cdf2c
BLAKE2b-256 de1307b54007c6228ea616b902c09e3067f57d08016fd565cba0902729f0e348

See more details on using hashes here.

File details

Details for the file eml_sr-0.1.3-cp39-cp39-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for eml_sr-0.1.3-cp39-cp39-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 15eaeda259a171a5aa6577aee72de3c1701d27a49dda635b80d72749df156a2d
MD5 349576bd79d2e2e84ca393b4c0165374
BLAKE2b-256 37ea7cad5a9642e5bb75cd83523a9677e16443b16536b78d527afb0bd82d21ac

See more details on using hashes here.

File details

Details for the file eml_sr-0.1.3-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: eml_sr-0.1.3-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 270.8 kB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.13.1

File hashes

Hashes for eml_sr-0.1.3-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 f0fa7bed1071c78feaf1b36b45ae127b2615c75cf98b16fe2f781705da340938
MD5 b7cbff458a4e5c022ba58ae5414ca619
BLAKE2b-256 59c7d756ae8439a0ed85e95d224829c54c88105197f5eb5531111a1a026d1c2d

See more details on using hashes here.

File details

Details for the file eml_sr-0.1.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for eml_sr-0.1.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 36a0f1ff65371e6746bdda27d9ff6778582bc248bfacbc458419e1d92b29e0a5
MD5 5eb1a6097aeeeccae32bb9f56de58885
BLAKE2b-256 7ca96b80a34b55fe9e688167faad1587966d9059acc95370662dc4ddc143d3be

See more details on using hashes here.

File details

Details for the file eml_sr-0.1.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for eml_sr-0.1.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 455b147e9d03e3ef4a27c6fb844186d4d4165039d445c96c53527d6282e2e60e
MD5 46d694beec1b5968fcdbacec0eaa7281
BLAKE2b-256 b655c598b97c4dbb4bb0c188607c8b8c3932590195aa69d73c0b97f3e5a5cad7

See more details on using hashes here.

File details

Details for the file eml_sr-0.1.3-cp38-cp38-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for eml_sr-0.1.3-cp38-cp38-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 86ba58e86849e2d15b4c084cb11c5796f853de946f818d0a5b000e7450605690
MD5 74f94f4e79111835cf0a3f2d007a87c9
BLAKE2b-256 c47f4ed13b8cdc04769ca820be068d8eb986209c207d32d0f55dd70976a41b96

See more details on using hashes here.

File details

Details for the file eml_sr-0.1.3-cp38-cp38-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for eml_sr-0.1.3-cp38-cp38-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 8db95a9fafeecc9658e24ce022b6c848efcf06da84be2ed3062382cc40730905
MD5 952f2ae556ea33e2c7b5938282b1aaf6
BLAKE2b-256 e2fffd2df328afcafe4cdca3def91513ccf4435fa7fbc2e801f09574c192dde0

See more details on using hashes here.

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