Skip to main content

OTLiNGAM logo

OT-LiNGAM

Optimal Transport LiNGAM.
Scikit-learn-compatible causal discovery for linear non-Gaussian systems.

Documentation · PyPI

PyPI version Supported Python versions: 3.11–3.14 Lint status Coverage Documentation status License

otlingam is a Python package for causal discovery in linear non-Gaussian structural equation models. It learns causal orders by maximizing the Wasserstein non-Gaussianity of standardized regression residuals and estimates edge weights with adaptive Lasso.


✨ Features

  • Exhaustive causal-order learning: ExhaustiveOTLiNGAM uses subset dynamic programming to find a globally optimal order.
  • Scalable greedy learning: GreedyOTLiNGAM constructs an order by sequentially selecting the most non-Gaussian residual.
  • Optimal transport ICA: OTICALiNGAM uses OTICA with FastICA initialization in the classical ICA-LiNGAM pipeline.
  • Exact empirical criterion: Computes one-dimensional Wasserstein scores directly from ordered residuals and Gaussian quantiles.
  • LiNGAM integration: Exposes causal orders and weighted adjacency matrices through the established LiNGAM estimator API.
  • scikit-learn integration: Native BaseEstimator integration with familiar fit, get_params, set_params, and clone support.

⚡ Method

The estimators assume the linear structural equation model

$$ X_j = \sum_{k \in \mathrm{Pa}(j)} B_{jk} X_k + \varepsilon_j, $$

where the graph is acyclic and the structural noises are mutually independent, centered, and have finite nonzero variances. Causal-order identification additionally requires at most one Gaussian structural noise.

For a candidate order $\sigma$, let $R_j(\sigma)$ be the population residual obtained by regressing $X_j$ on its predecessors under $\sigma$. The oracle Wasserstein order objective is

$$ G(\sigma) = \sum_{j = 1}^{d} \mathcal{W}_2\left( \mathrm{std}(R_j(\sigma)), \mathcal{N}(0, 1) \right)^2. $$

Given $n$ observations, let $\widehat{R}_j^{(i)}(\sigma)$ be the ordinary least-squares residual for observation $i$. OTLiNGAM maximizes the empirical order objective

$$ \widehat{G}n(\sigma) = \sum{j = 1}^{d} \mathcal{W}2\left( \mathrm{std}\left( \frac{1}{n} \sum{i = 1}^{n} \delta_{\widehat{R}_j^{(i)}(\sigma)} \right), \mathcal{N}(0, 1) \right)^2. $$

At the population level, the maximizers of $G$ are exactly the topological orders under the stated assumptions. A topological order exposes the independent structural noises as regression residuals, whereas an incorrect order may mix several noises and reduce the total objective. Each empirical one-dimensional Wasserstein distance is evaluated exactly by sorting the standardized residuals and comparing them with the Gaussian reference quantiles.


🚀 Installation

python -m pip install otlingam

🔧 Usage

Example

The following example simulates a linear non-Gaussian structural equation model, learns a causal order with GreedyOTLiNGAM, and compares the true and estimated weighted adjacency matrices.

import matplotlib.pyplot as plt
import numpy as np
from otlingam import GreedyOTLiNGAM, disorder

rng = np.random.default_rng(42)
n_samples = 5000
adjacency_matrix = np.array(
    [
        [0.0, 0.0, 0.0, 0.0, 0.0],
        [0.8, 0.0, 0.0, 0.0, 0.0],
        [0.0, -0.7, 0.0, 0.0, 0.0],
        [0.5, 0.0, 0.9, 0.0, 0.0],
        [0.0, -0.6, 0.0, 0.7, 0.0],
    ]
)
noise = rng.uniform(-1.0, 1.0, size=(n_samples, 5))
X = noise @ np.linalg.inv(np.eye(5) - adjacency_matrix).T

model = GreedyOTLiNGAM().fit(X)

print("Estimated causal order:", model.causal_order_)
print("Disorder:", disorder(model.causal_order_, adjacency_matrix))

fig, axes = plt.subplots(1, 2, figsize=(10, 4), layout="constrained")
matrices = (adjacency_matrix, model.adjacency_matrix_)
titles = ("True adjacency matrix", "Estimated adjacency matrix")
for ax, matrix, title in zip(axes, matrices, titles, strict=True):
    image = ax.imshow(matrix, cmap="RdBu_r", vmin=-1.0, vmax=1.0)
    ax.set_title(title)
    ax.set_xlabel("Parent")
    ax.set_ylabel("Child")
fig.colorbar(image, ax=axes, label="Edge weight")

plt.show()

ExhaustiveOTLiNGAM provides global order optimization at an exponential cost in the number of variables. GreedyOTLiNGAM provides a quadratic-time alternative. Set fit_intercept=False when the observations are already centered. The default fit_intercept=True centers the data and exposes the fitted intercepts through intercept_.


📊 Reproducing Results

Clone the repository, create and activate a virtual environment, then install the exact package versions used for the paper:

python -m pip install -r scripts/requirements.txt

Keep the repository folder layout unchanged: do not move, rename, or flatten its folders, because the experiment scripts resolve paths relative to their file locations.

Run the experiment scripts from the repository root:

python scripts/statistical-performance.py --nd
python scripts/statistical-performance.py --heterogeneity
python scripts/statistical-performance.py --k
python scripts/runtime-scaling.py

Alternatively, run all experiments sequentially on Windows, Linux, or macOS:

python run-all.py

The runner uses the active Python interpreter and stops if an experiment fails.

These commands write varying-nd-disorder.pdf, noise-heterogeneity-disorder.pdf, varying-k-performance.pdf, and runtime-scaling.pdf to figures/. The paper settings (including random seed 42, sample sizes, dimensions, graph configurations, and run counts) are defined as constants near the top of each script.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

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

otlingam-0.5.3-cp314-cp314t-win_arm64.whl (491.9 kB view details)

Uploaded CPython 3.14tWindows ARM64

otlingam-0.5.3-cp314-cp314t-win_amd64.whl (334.7 kB view details)

Uploaded CPython 3.14tWindows x86-64

otlingam-0.5.3-cp314-cp314t-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl (238.8 kB view details)

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

otlingam-0.5.3-cp314-cp314t-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl (188.5 kB view details)

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

otlingam-0.5.3-cp314-cp314t-macosx_11_0_arm64.whl (137.9 kB view details)

Uploaded CPython 3.14tmacOS 11.0+ ARM64

otlingam-0.5.3-cp314-cp314t-macosx_10_15_x86_64.whl (184.7 kB view details)

Uploaded CPython 3.14tmacOS 10.15+ x86-64

otlingam-0.5.3-cp314-cp314-win_arm64.whl (488.4 kB view details)

Uploaded CPython 3.14Windows ARM64

otlingam-0.5.3-cp314-cp314-win_amd64.whl (331.3 kB view details)

Uploaded CPython 3.14Windows x86-64

otlingam-0.5.3-cp314-cp314-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl (238.0 kB view details)

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

otlingam-0.5.3-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl (186.3 kB view details)

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

otlingam-0.5.3-cp314-cp314-macosx_11_0_arm64.whl (133.9 kB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

otlingam-0.5.3-cp314-cp314-macosx_10_15_x86_64.whl (181.0 kB view details)

Uploaded CPython 3.14macOS 10.15+ x86-64

otlingam-0.5.3-cp313-cp313-win_arm64.whl (472.2 kB view details)

Uploaded CPython 3.13Windows ARM64

otlingam-0.5.3-cp313-cp313-win_amd64.whl (321.9 kB view details)

Uploaded CPython 3.13Windows x86-64

otlingam-0.5.3-cp313-cp313-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl (237.9 kB view details)

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

otlingam-0.5.3-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl (186.0 kB view details)

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

otlingam-0.5.3-cp313-cp313-macosx_11_0_arm64.whl (133.8 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

otlingam-0.5.3-cp313-cp313-macosx_10_13_x86_64.whl (180.8 kB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

otlingam-0.5.3-cp312-cp312-win_arm64.whl (472.2 kB view details)

Uploaded CPython 3.12Windows ARM64

otlingam-0.5.3-cp312-cp312-win_amd64.whl (321.9 kB view details)

Uploaded CPython 3.12Windows x86-64

otlingam-0.5.3-cp312-cp312-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl (237.6 kB view details)

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

otlingam-0.5.3-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl (185.9 kB view details)

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

otlingam-0.5.3-cp312-cp312-macosx_11_0_arm64.whl (133.8 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

otlingam-0.5.3-cp312-cp312-macosx_10_13_x86_64.whl (180.8 kB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

otlingam-0.5.3-cp311-cp311-win_arm64.whl (471.1 kB view details)

Uploaded CPython 3.11Windows ARM64

otlingam-0.5.3-cp311-cp311-win_amd64.whl (319.5 kB view details)

Uploaded CPython 3.11Windows x86-64

otlingam-0.5.3-cp311-cp311-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl (235.7 kB view details)

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

otlingam-0.5.3-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl (184.4 kB view details)

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

otlingam-0.5.3-cp311-cp311-macosx_11_0_arm64.whl (131.6 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

otlingam-0.5.3-cp311-cp311-macosx_10_9_x86_64.whl (181.1 kB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

File details

Details for the file otlingam-0.5.3-cp314-cp314t-win_arm64.whl.

File metadata

  • Download URL: otlingam-0.5.3-cp314-cp314t-win_arm64.whl
  • Upload date:
  • Size: 491.9 kB
  • Tags: CPython 3.14t, Windows ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for otlingam-0.5.3-cp314-cp314t-win_arm64.whl
Algorithm Hash digest
SHA256 8d20551b85de427597dd89b1fac5594b65821f3577d77a15d54359ac7f2a9a96
MD5 bc69dcd1a53f9cc9637dae8a6068428a
BLAKE2b-256 98a28b2ef5b1c7948a54c218f91826c167617bba1e97fde46ee95b44dc1bde29

See more details on using hashes here.

File details

Details for the file otlingam-0.5.3-cp314-cp314t-win_amd64.whl.

File metadata

  • Download URL: otlingam-0.5.3-cp314-cp314t-win_amd64.whl
  • Upload date:
  • Size: 334.7 kB
  • Tags: CPython 3.14t, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for otlingam-0.5.3-cp314-cp314t-win_amd64.whl
Algorithm Hash digest
SHA256 8c706bd3dfdf843a72ebfa859df9a9a2d8a9a8fc46d41538d712a16b08640fdc
MD5 213244fc46e6f69eb64f55b8d06468b7
BLAKE2b-256 f59f6cf54bf2c6ae55ff2084a515716907360757e7f14548561e36eeb476647c

See more details on using hashes here.

File details

Details for the file otlingam-0.5.3-cp314-cp314t-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for otlingam-0.5.3-cp314-cp314t-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 d5c979d75dd2581c5d2467d5f0bdab90069a1b1f5bd7ab3976635ca62e368f26
MD5 ee7ce864f0cf7eec1458654bcb9b2431
BLAKE2b-256 0939b927963a2dca1aaedf14837e29d646048fc72b5b13760f01fc7961a4cfec

See more details on using hashes here.

File details

Details for the file otlingam-0.5.3-cp314-cp314t-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for otlingam-0.5.3-cp314-cp314t-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 7148258f1428a4a895fefc3e8dd29fbf0c2569d286b87f618371f6627f9609aa
MD5 2396890021076fdce407d5d0d8845aad
BLAKE2b-256 1f3a96d378d709f167b7fe60a6b63635ad2f2cd620fbaf1d1a83383e23badf7b

See more details on using hashes here.

File details

Details for the file otlingam-0.5.3-cp314-cp314t-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for otlingam-0.5.3-cp314-cp314t-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ee123112bcc7a3437fa1be18c8fdf7e3be93f933a37ba06020dc180a12592f24
MD5 b135fecf30b5d18d0d995ccc5ead4e9f
BLAKE2b-256 eb287071497907aa248fb0c3417f2dc7b9a55f37ad36496b19340ef5f6a98389

See more details on using hashes here.

File details

Details for the file otlingam-0.5.3-cp314-cp314t-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for otlingam-0.5.3-cp314-cp314t-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 e46825572efa911e772d4ae5cfe19fdc03679038fe3279d9171bf92fe1536b59
MD5 14fcc028e97216b766b1e1f420e3b107
BLAKE2b-256 96912238b2b5651c5cbc04eb9be738f39039596aa062853fe76b816f9cdf1c13

See more details on using hashes here.

File details

Details for the file otlingam-0.5.3-cp314-cp314-win_arm64.whl.

File metadata

  • Download URL: otlingam-0.5.3-cp314-cp314-win_arm64.whl
  • Upload date:
  • Size: 488.4 kB
  • Tags: CPython 3.14, Windows ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for otlingam-0.5.3-cp314-cp314-win_arm64.whl
Algorithm Hash digest
SHA256 fe7f5d6becdef71dfa02fe80487ae6addeab62a14185dc352daa11098cbd3d55
MD5 6b5e9640f37310e1767a2eb7d5a64ae6
BLAKE2b-256 e54bfabacbf070c0311313d6ee52afd5106ef8d17d231dd289e073508e3258e5

See more details on using hashes here.

File details

Details for the file otlingam-0.5.3-cp314-cp314-win_amd64.whl.

File metadata

  • Download URL: otlingam-0.5.3-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 331.3 kB
  • Tags: CPython 3.14, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for otlingam-0.5.3-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 ec5422c03fda416af3ff818b08923e24bc5c09cf361ab1490cddb61d57759f2f
MD5 0825522129f8c4778549d6293a5d9a29
BLAKE2b-256 afef22439e0884243a6c15fa08c76f4af8c4e4eba47598a04ce29bfbae597798

See more details on using hashes here.

File details

Details for the file otlingam-0.5.3-cp314-cp314-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for otlingam-0.5.3-cp314-cp314-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 35e0022d786d0f6eb623a0313ab6b8e95836331e28c24c0842e2ad4be1cfa617
MD5 6f7105872d78c294ba40277b1f4ccd6b
BLAKE2b-256 45e03496d7df875e81ca162ebd9beba67b93e575dbb021c8c1060a9bdfaaa003

See more details on using hashes here.

File details

Details for the file otlingam-0.5.3-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for otlingam-0.5.3-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 3fa380fbf9d16f57eb91e4cf4e32b7ee0ac8a9599e9fa0df1ab60c08d37ce948
MD5 159f71e985a9c6574c7ba641c66acd3d
BLAKE2b-256 a983d3b120af6f04698f69ce4e3f9ebbb40031fa2ad4c6477344461efcc6d3b9

See more details on using hashes here.

File details

Details for the file otlingam-0.5.3-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for otlingam-0.5.3-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e0a5ac8a3ad6905485273e5deaebd79fd351848c5501cf3627f34c33a60be1ea
MD5 4b2c3dcdf770919377c288a6acf39cf9
BLAKE2b-256 d294eecad5445ce5579fa13bb1370961d16fb35bb85e086af7e00ec0a545d8ea

See more details on using hashes here.

File details

Details for the file otlingam-0.5.3-cp314-cp314-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for otlingam-0.5.3-cp314-cp314-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 dc6a4e6389ac56791ebafff008d42382599b33f847b9b7f797a0ad048fc8692f
MD5 c613e1759ef1d09c660b7e4d2066fae7
BLAKE2b-256 2b1d123a7f81e4fe5eee60784c424df7bb041fe3f7829424b7fb148d03987185

See more details on using hashes here.

File details

Details for the file otlingam-0.5.3-cp313-cp313-win_arm64.whl.

File metadata

  • Download URL: otlingam-0.5.3-cp313-cp313-win_arm64.whl
  • Upload date:
  • Size: 472.2 kB
  • Tags: CPython 3.13, Windows ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for otlingam-0.5.3-cp313-cp313-win_arm64.whl
Algorithm Hash digest
SHA256 7fdfd4c5d7f47160a5227c889749ccdec782b24f7e6738e2d0055ad896decf3f
MD5 a59c6d9bc0178320204140fa1a17791b
BLAKE2b-256 07f28bfd017aeadad637f06363ea729692718c5def9853c3931f337f9e266b39

See more details on using hashes here.

File details

Details for the file otlingam-0.5.3-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: otlingam-0.5.3-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 321.9 kB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for otlingam-0.5.3-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 60e5cca2e9bc62cc13e5824e1c933253484ad7b0f09e9ba7ed04417db482f90c
MD5 b9057d672c80c57fe7df38d7ca1e4fa0
BLAKE2b-256 f35653e8629ba8a355a9b8582b0aaf6603e6890f5006e750baa05b0dc0b453a6

See more details on using hashes here.

File details

Details for the file otlingam-0.5.3-cp313-cp313-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for otlingam-0.5.3-cp313-cp313-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 49e16384344d58ed9ce9c2c7bf53a27ad342a8334a2f17d09f50462898df6390
MD5 ae279848d83933eebac4d05455a7009b
BLAKE2b-256 3f0e12a785c4d8cdafd4a5119a816a3a7f6be5fc38ce3f8cee1a3dbb8dab0471

See more details on using hashes here.

File details

Details for the file otlingam-0.5.3-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for otlingam-0.5.3-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 1ce7e18a2828cc10dba5d01bcd5818e1d8db8134001ad6e8843d2cbec8dd3e70
MD5 81e260b759d7a77f35c3d8487f32e307
BLAKE2b-256 0ed39a0fdf53b082323e99e04d02f2ef79053e467b76ebee29aa75906bfc7817

See more details on using hashes here.

File details

Details for the file otlingam-0.5.3-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for otlingam-0.5.3-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 fc7ebe948b2ecdaeb762e4ad2d74cc3f10cb75a2f796156459c9708e195300a6
MD5 c19dadc8e8de4954bd024613661ac046
BLAKE2b-256 8a997f9a3f6ebc9e75f1ac0858dc1fcc4e494661f3b7e337cf40891b7aa562be

See more details on using hashes here.

File details

Details for the file otlingam-0.5.3-cp313-cp313-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for otlingam-0.5.3-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 8e5188fdbc4effb7f1966ff347e10217bac1e42820e5847d772a3acc203398e1
MD5 d7dd5d2ed82f66bb12b41eb7736e4b22
BLAKE2b-256 34ba9a1f72f36e1af28e5d3ce36c52dbf1cafcde4323034fad7cd62a46bc3683

See more details on using hashes here.

File details

Details for the file otlingam-0.5.3-cp312-cp312-win_arm64.whl.

File metadata

  • Download URL: otlingam-0.5.3-cp312-cp312-win_arm64.whl
  • Upload date:
  • Size: 472.2 kB
  • Tags: CPython 3.12, Windows ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for otlingam-0.5.3-cp312-cp312-win_arm64.whl
Algorithm Hash digest
SHA256 bcbab59db6513625c517bf554c03f459e22a4d3aaef3f8133980db250c4e63c2
MD5 0b5cd24317b9262084fc1c7b5ec1eac8
BLAKE2b-256 a73d741949084e2c80a145894aebf44bdad6e557e67879c594c7414f69b5f352

See more details on using hashes here.

File details

Details for the file otlingam-0.5.3-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: otlingam-0.5.3-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 321.9 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for otlingam-0.5.3-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 5a28483a2ec83081a6e5e10faf8239a75bb767518a88cfc712376232aaa4e826
MD5 db7be2588e88960efa7fdf3c9c273213
BLAKE2b-256 3472b61008ff6ed2ffd8b8438441dc29e236c742099452cf1c66b7a53610b46b

See more details on using hashes here.

File details

Details for the file otlingam-0.5.3-cp312-cp312-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for otlingam-0.5.3-cp312-cp312-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 2dac7d2c19ef400351a7a01846168bd0fa08a2b2dca2d8b162116762d332f211
MD5 14c1ffb7df388937d7a8c7c4a69eae17
BLAKE2b-256 f4e457195e5a69f11d51de364d2745ed5e16170d628403f7d5f80bce2ce4bebc

See more details on using hashes here.

File details

Details for the file otlingam-0.5.3-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for otlingam-0.5.3-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 425d8c8f67407d590a235951ed2ecf5271747982cbc567e9dac6d3fb71ad373b
MD5 a0f5880335a750aca725cf2859df23fc
BLAKE2b-256 9f38d08922c5fd584e06fa33bc2c2decc517d6704cbf32cdab9a049c82813f2d

See more details on using hashes here.

File details

Details for the file otlingam-0.5.3-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for otlingam-0.5.3-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ab9d2508a91fa243c9a01756bbb28c0d7f5f9aa0e66649596aef497dd7b0ef95
MD5 6123d49013856865d255ef4f44fb3f48
BLAKE2b-256 84f69b9629e4a43e68d99b57da5cc45320c35dfad9d7ec50e1e98877685bd87b

See more details on using hashes here.

File details

Details for the file otlingam-0.5.3-cp312-cp312-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for otlingam-0.5.3-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 b545bea7cb32db9ded119780f6575e7b0a16189e555bd488e5232a292daa6449
MD5 c0f6e7b88460c3618e7dbca9745ca4f5
BLAKE2b-256 66ed05f9f5a5eec64d5e38439788d47c0843c61d73f4916a88cde20169a66e03

See more details on using hashes here.

File details

Details for the file otlingam-0.5.3-cp311-cp311-win_arm64.whl.

File metadata

  • Download URL: otlingam-0.5.3-cp311-cp311-win_arm64.whl
  • Upload date:
  • Size: 471.1 kB
  • Tags: CPython 3.11, Windows ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for otlingam-0.5.3-cp311-cp311-win_arm64.whl
Algorithm Hash digest
SHA256 e7448657903dac1fe3cd74e64ca7c5b27ee86805d74c628b005157b22e50c5ac
MD5 b61502b822d11373210f65b8da8cdee8
BLAKE2b-256 febb66723ad3540f74b56ea751f4115e878ddd0250c8c0be6e7d96f039e51a53

See more details on using hashes here.

File details

Details for the file otlingam-0.5.3-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: otlingam-0.5.3-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 319.5 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for otlingam-0.5.3-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 0d8296017b50b88092c1da74000e3bd954c810f851b8e563b986120861cb56c4
MD5 ed2838ad55fd424be6563b682472233a
BLAKE2b-256 2eaffb3e1d77fa6ab8c0a2ae504dbe6123bbd91d5331d8d3502a963c4caca43e

See more details on using hashes here.

File details

Details for the file otlingam-0.5.3-cp311-cp311-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for otlingam-0.5.3-cp311-cp311-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 096cb8bef6634d93ced7c6dca82da57a7024fc31789cf443a56d9200e9376d67
MD5 dfaa318605ae36b3e1d6b91b33aa588c
BLAKE2b-256 57d5813982b4cc9b565d20dcda348f5d3d59b7984fe105151c054da22a4de3ff

See more details on using hashes here.

File details

Details for the file otlingam-0.5.3-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for otlingam-0.5.3-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 91e0902dda2b1bee663c19e268390915cdf235f2e605c57c43f84ff78d6c9e71
MD5 a815ff4b7f0ce56991a3839fc14992a9
BLAKE2b-256 4aa87a0f45baf21b3a1e8f487a94902f0ecaf38ce1b48e23c6c2bef641d84865

See more details on using hashes here.

File details

Details for the file otlingam-0.5.3-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for otlingam-0.5.3-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 57f2cd905a88e377f9f42ad838f042574bc9f7e1e64c9d10de98ae260caaa900
MD5 bc66655bb63b727813827c3f87ac0930
BLAKE2b-256 9ed66c73d99178cb13c7885a15b09b14425679325370baf36bb67585d1afa420

See more details on using hashes here.

File details

Details for the file otlingam-0.5.3-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for otlingam-0.5.3-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 9e832f5fc17c5beb5a71d51f1db9291fe6f51a1127660002aa85d446f20431f5
MD5 46ea365595285e3b87f37d591eb808ee
BLAKE2b-256 1a11d74c4d5f3c2c38e6297cab0ddb58a9e2a6a0ccfc807a5a2100ff0d585b48

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.5.3 This release

30 files

0.5.2

30 files

0.5.1

30 files

0.5.0

30 files

0.4.3

2 files

0.3.1

2 files

0.3.0

2 files

0.2.6

2 files

0.2.5

2 files

0.2.4

2 files

0.2.3

2 files

0.2.2

2 files

0.2.1

2 files

0.2.0

2 files

0.1.0

2 files

Supported by

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