Skip to main content

PRAXIS computes exact and approximate Rashomon sets of decision trees, individual high-quality trees, and variable importance over the full set of good models.

Project description

PRAXIS: Fast Rashomon Sets for Sparse Decision Trees

Installation and Usage

pip install tree-praxis

See examples/example.ipynb for a complete walkthrough of using the code.

What PRAXIS does

This code creates Rashomon sets of decision trees. The Rashomon set is the set of all almost-optimal models.

PRAXIS is designed to enumerate the Rashomon set for sparse decision trees. In other words, instead of returning a single optimal decision tree, it returns a set of decision trees whose objective values are all within a small factor of the best tree found. For a decision tree T, PRAXIS uses the objective:

L(T) = misclassifications(T)
     + lambda_reg * n_samples * number_of_leaves(T)

The Rashomon set is the set of all trees whose objective is within a multiplicative factor of a reference objective value. If T_reference is a reference tree, then for a given rashomon_mult, PRAXIS enumerates trees satisfying:

L(T) <= (1 + rashomon_mult) * L(T_reference)

To learn more about the algorithmic ideas behind PRAXIS, please see our ICML 2026 paper. At a high level, PRAXIS uses a proxy algorithm to estimate the best achievable objective within each subproblem and uses it to set L(T_reference), and then refines these estimates as enumeration proceeds. When the proxy algorithm is exact, PRAXIS performs exact Rashomon set enumeration, finding all trees with L(T) <= (1 + rashomon_mult) * L(T_opt), where T_opt is a tree that minimizes the objective. When the proxy is approximate, PRAXIS can trade a small amount of empirical approximation quality for substantially faster runtime.

PRAXIS also includes tools for computing feature importance over the Rashomon set through the Rashomon Importance Distribution (RID) and to directly use the proxy algorithms to return one tree, if desired.

Data requirements

PRAXIS expects the input matrix X to already be binary.

X[i, j] in {0, 1}

If your data has continuous, ordinal, or categorical features, binarize it first. The package includes ThresholdGuessBinarizer for this purpose.

from praxis import ThresholdGuessBinarizer

binarizer = ThresholdGuessBinarizer()
X_binary = binarizer.fit_transform(X, y)

The label vector y must contain integer class labels numbered consecutively:

0, 1, ..., num_classes - 1

For binary classification, this means labels must be:

0, 1

Basic example

from praxis import PRAXIS

model = PRAXIS()

model.fit(
    X_binary,
    y,
    lambda_reg=0.01,
    depth_budget=5,
    rashomon_mult=0.03,
    lookahead_k=1,
)

print("Number of trees:", model.count_trees())
print("Minimum objective:", model.get_min_objective())

See examples/example.ipynb for a complete walkthrough on binarization, fitting PRAXIS, and accessing information about the Rashomon set. We provide a comprehensive list of options and included methods below.

PRAXIS.fit(...)

model.fit(
    X,
    y,
    lambda_reg=0.01,
    depth_budget=5,
    rashomon_mult=0.01,
    multiplicative_slack=0.0,
    key_mode="hash",
    lookahead_k=1,
    proxy_style=0,
    root_budget=None,
    use_budget_refinement=True,
    guarantee_rule_list_recovery=False,
    majority_leaf_only=False,
    cache_early_exits=False,
    heuristic_for_greedy=1,
    proxy_caching=True,
    num_proxy_features=0,
    proxy_only=False,
)

Parameters

  • X
    Binary feature matrix of shape (n_samples, n_features). All entries must be 0 or 1. If your dataset is not binary, use ThresholdGuessBinarizer first.

  • y
    Class-label vector of shape (n_samples,). Labels must be integers numbered 0, 1, ..., num_classes - 1.

  • lambda_reg=0.01
    Regularization strength for tree complexity. This controls the penalty on leaves in the objective. Larger values favor smaller trees.

  • depth_budget=5
    Maximum depth of the decision trees.

  • rashomon_mult=0.01
    Multiplicative slack for the Rashomon set. A tree is included if its objective is within this factor of the proxy algorithm. For example, rashomon_mult=0.03 means to search for trees within 3% of the proxy's objective. After the algorithm returns, one may want to only consider trees within 3% of the minimum objective tree, which can be done easily as the trees are returned in sorted order of best-to-worst objective.

  • multiplicative_slack=0.0
    An extra amount of slack applied to the objective bound. Most users can leave this at 0.0.

  • key_mode="hash"
    Cache-key representation used internally.

    Options:

    • "hash": use a 64-bit hash of the subproblem bitvector. Fast and memory efficient.
    • "exact" or "bitvector": use exact bitvector keys. More memory, no hash collisions.
    • "literal", "lits", "lits_exact", or "itemset": slower, but avoids hash collisions without needing more memory.

    Most users should use "hash".

  • lookahead_k=1
    Lookahead used by the proxy algorithm. Larger values usually make the proxy stronger but slower. We recommend lookahead_k = 1 for most users. If lookahead_k = 0, PRAXIS uses the a greedy tree algorithm as the proxy. If lookahead_k = 1, PRAXIS uses a modified version of the LicketySPLIT algorithm. lookahead_k = depth_budget-1, then the proxy is optimal and the Rashomon set returned will be exact. lookahead_k should always be set in 0,1,2,..depth_budget-1.

  • proxy_style=0
    Which proxy/oracle style to use.

    Nearly all users should use the default 0.

  • root_budget=None
    Optional manual objective bound. If None, PRAXIS computes a reference objective and sets the Rashomon bound automatically using rashomon_mult. If you pass an integer, PRAXIS uses that objective bound directly. The loss optimized is number of misclassifications + lambda_reg * n_samples * number_of_leaves.

  • use_budget_refinement=True
    Enables the iterative budget refinement procedure. This is usually helpful and should nearly always stay True.

  • guarantee_rule_list_recovery=False
    Enables a special rule-list recovery mode. Most users should leave this False.

  • majority_leaf_only=False
    If True, only keeps the majority-class leaf prediction when constructing trees. If False, PRAXIS may keep multiple valid leaf predictions when they fit within the objective budget.

  • cache_early_exits=False
    Caches cheap subproblems and early exits. This can speed up some runs at the expense of more memory consumption.

  • heuristic_for_greedy=1
    Split heuristic used by the greedy routine.

    Options:

    • 0, "entropy", "info_gain", "information_gain", "ig": entropy / information-gain style splitting.
    • 1, "entropy_depth1_exact", "depth1_exact", "default": entropy-style splitting with a depth-1 exact evaluation. This is the default.
    • 2, "best_split_for_leaves", "misclassification_minimizing": choose splits based on minimizing child leaf objectives / misclassification.
  • proxy_caching=True
    Enables caching for proxy subproblems. This should almost always be left on as it will speed up PRAXIS by orders of magnitude.

  • num_proxy_features=0
    Restricts the proxy algorithm to the first num_proxy_features features. If 0 or negative, all features are used. If the first num_proxy_features features are chosen well (such as via a feature selection procedure), this can speed up runtime. We recommend not changing this for the vast majority of users.

  • proxy_only=False
    Controls whether PRAXIS builds the full Rashomon set or only returns the proxy tree.

    Options:

    • False: build the Rashomon set.
    • True: run only the proxy/single-tree algorithm and skip Rashomon enumeration. This tree is stored at index 0 of the data structures.

Main methods

count_trees()

model.count_trees()

Returns the number of trees in the Rashomon set.

get_min_objective()

model.get_min_objective()

Returns the minimum objective value among the enumerated trees.

get_root_histogram()

model.get_root_histogram()

Returns a histogram of objective values at the root:

[(objective_value, number_of_trees), ...]

This is useful for seeing how many trees exist at each objective value.

get_tree_objective(tree_index)

obj, obj_norm = model.get_tree_objective(tree_index)

Returns the unnormalized and normalized objective value of a specific tree.

  • obj: integer objective value.
  • obj_norm: objective divided by the number of samples.

count_trees_within_mult(mult)

model.count_trees_within_mult(0.03)

Counts how many enumerated trees have objective at most:

round((1 + mult) * minimum_objective)

This is a post-hoc way to ask how many trees are within a different multiplicative slack of the best enumerated tree.

get_tree_paths(tree_index)

paths, predictions = model.get_tree_paths(tree_index)

Returns the selected tree as paths and leaf predictions.

The path representation uses signed, 1-indexed feature IDs:

  • +f means go left / feature f - 1 is true.
  • -f means go right / feature f - 1 is false.

The feature IDs are 1-indexed in this raw method, so subtract 1 to recover normal Python feature indices.

get_tree_paths_str(tree_index)

paths, predictions = model.get_tree_paths_str(tree_index)

Returns a more readable 0-indexed string representation of the paths.

Example output:

["[+0, -3]", "[-0, +2]"]

This is usually easier to inspect than get_tree_paths(...).

get_predictions(tree_index, X)

preds = model.get_predictions(tree_index, X_binary)

Returns predictions from one tree.

If the model was fit with proxy_only=True, only tree_index=0 is supported.

get_all_predictions(X, stack=False)

preds = model.get_all_predictions(X_binary)

Returns predictions from all trees in the Rashomon set.

If stack=False, returns a list of prediction arrays.

If stack=True, returns a 2D array:

(n_trees, n_samples)

plot_tree(tree_index, feature_names=None, figsize=(8, 6), ax=None, title=None, show=True)

fig, ax = model.plot_tree(0, feature_names=feature_names)

Plots one tree using matplotlib.

Parameters:

  • tree_index: which tree to plot.
  • feature_names: optional names for the binary features.
  • figsize: matplotlib figure size.
  • ax: optional existing matplotlib axis.
  • title: optional plot title.
  • show: whether to call plt.show().

Returns:

(fig, ax)

Rashomon disagreement methods

These methods summarize disagreement across the Rashomon set. They assume binary predictions in {0, 1}.

get_p_per_sample(X, tree_indices=None)

p = model.get_p_per_sample(X_binary)

Returns one value per sample:

proportion of selected trees predicting class 1

If tree_indices=None, all trees are used. Otherwise, only the specified tree indices are used.

get_variance_per_sample(X, tree_indices=None)

v = model.get_variance_per_sample(X_binary)

Returns the variance of hard predictions across trees for each sample.

For binary predictions, this is equivalent to:

p_i * (1 - p_i)

where p_i is the proportion of trees predicting class 1 for sample i.

get_avg_variance_across_samples(X, tree_indices=None)

avg_v = model.get_avg_variance_across_samples(X_binary)

Returns the average disagreement variance across samples.

plot_disagreement_cdf(...)

fig, ax = model.plot_disagreement_cdf(X_binary)

Plots the empirical CDF of per-sample prediction variances.

Parameters:

  • X: binary feature matrix.
  • tree_indices: optional subset of trees.
  • ax: optional matplotlib axis.
  • figsize: figure size.
  • title: plot title.
  • show: whether to call plt.show().
  • label: optional plot label.

Returns:

(fig, ax)

Rashomon Importance Distribution methods

PRAXIS includes tools for estimating feature importance over the Rashomon set using subtractive model reliance.

compute_rid(...)

rid_out = model.compute_rid(
    X_binary,
    y,
    n_boot=10,
    lambda_reg=0.01,
    depth_budget=5,
    rashomon_mult=0.03,
    lookahead_k=1,
    seed=0,
    memory_efficient=False,
    binning_map=None,
)

Computes Rashomon Importance Distribution output.

Parameters:

  • X: binary feature matrix.
  • y: integer labels.
  • n_boot: number of bootstrap samples.
  • lambda_reg: tree complexity regularization.
  • depth_budget: maximum tree depth.
  • rashomon_mult: Rashomon slack.
  • lookahead_k: proxy lookahead.
  • seed: random seed.
  • memory_efficient: whether to use the lower-memory implementation path.
  • binning_map: optional map from original features to binarized columns. This is useful when multiple binary threshold features came from the same original variable.

Returns and stores the RID output dictionary.

rid_plot_mean(feature_names=None, **kwargs)

model.rid_plot_mean(feature_names=feature_names)

Plots the mean reliance score for each feature.

rid_plot_violin(feature_names=None, **kwargs)

model.rid_plot_violin(feature_names=feature_names)

Plots the distribution of reliance scores for each feature.

rid_plot_cdfs(feature_names=None, **kwargs)

model.rid_plot_cdfs(feature_names=feature_names)

Plots the CDF of reliance scores for each feature.

Recommended starting configuration

For most users, start with:

model = PRAXIS()

model.fit(
    X_binary,
    y,
    lambda_reg=0.01,
    depth_budget=5,
    rashomon_mult=0.03,
    lookahead_k=1,
    key_mode="hash",
)

If your original data is not binary, use ThresholdGuessBinarizer before fitting.

See examples/example.ipynb for a complete walkthrough on binarization, fitting PRAXIS, and accessing information about the Rashomon set.

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

tree_praxis-0.0.24.tar.gz (224.1 kB view details)

Uploaded Source

Built Distributions

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

tree_praxis-0.0.24-cp313-cp313-win_amd64.whl (590.3 kB view details)

Uploaded CPython 3.13Windows x86-64

tree_praxis-0.0.24-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (3.2 MB view details)

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

tree_praxis-0.0.24-cp313-cp313-macosx_11_0_arm64.whl (432.5 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

tree_praxis-0.0.24-cp313-cp313-macosx_10_13_x86_64.whl (446.3 kB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

tree_praxis-0.0.24-cp312-cp312-win_amd64.whl (590.3 kB view details)

Uploaded CPython 3.12Windows x86-64

tree_praxis-0.0.24-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (3.2 MB view details)

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

tree_praxis-0.0.24-cp312-cp312-macosx_11_0_arm64.whl (432.5 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

tree_praxis-0.0.24-cp312-cp312-macosx_10_13_x86_64.whl (446.3 kB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

tree_praxis-0.0.24-cp311-cp311-win_amd64.whl (587.9 kB view details)

Uploaded CPython 3.11Windows x86-64

tree_praxis-0.0.24-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (3.1 MB view details)

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

tree_praxis-0.0.24-cp311-cp311-macosx_11_0_arm64.whl (431.1 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

tree_praxis-0.0.24-cp311-cp311-macosx_10_9_x86_64.whl (444.6 kB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

tree_praxis-0.0.24-cp310-cp310-win_amd64.whl (586.8 kB view details)

Uploaded CPython 3.10Windows x86-64

tree_praxis-0.0.24-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (3.1 MB view details)

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

tree_praxis-0.0.24-cp310-cp310-macosx_11_0_arm64.whl (430.0 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

tree_praxis-0.0.24-cp310-cp310-macosx_10_9_x86_64.whl (443.4 kB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

tree_praxis-0.0.24-cp39-cp39-win_amd64.whl (590.4 kB view details)

Uploaded CPython 3.9Windows x86-64

tree_praxis-0.0.24-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (3.1 MB view details)

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

tree_praxis-0.0.24-cp39-cp39-macosx_11_0_arm64.whl (430.2 kB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

tree_praxis-0.0.24-cp39-cp39-macosx_10_9_x86_64.whl (443.5 kB view details)

Uploaded CPython 3.9macOS 10.9+ x86-64

File details

Details for the file tree_praxis-0.0.24.tar.gz.

File metadata

  • Download URL: tree_praxis-0.0.24.tar.gz
  • Upload date:
  • Size: 224.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for tree_praxis-0.0.24.tar.gz
Algorithm Hash digest
SHA256 0285faaf02d543926ea13bcbbe466341d4573d26e5927bc7ba85f0e2ca7adaf9
MD5 3d79a19b103656dd8c31afd3c17134ab
BLAKE2b-256 8d46d8ed801dda6b621ca435cec4f36bd3c947e882e4a1681dd1fd47359e07af

See more details on using hashes here.

Provenance

The following attestation bundles were made for tree_praxis-0.0.24.tar.gz:

Publisher: wheels.yml on zakk-h/PRAXIS

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

File details

Details for the file tree_praxis-0.0.24-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for tree_praxis-0.0.24-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 95d929914e9ed1a118dddd16309ef4f565203602f5a41f3508a7d6b85c4541f3
MD5 1c79252b8d48ac09e66245ad24509d3a
BLAKE2b-256 d1d63580f75b49b2c79fb00bb8f9784b52f175ee8cfb5f363461e294b520ce86

See more details on using hashes here.

Provenance

The following attestation bundles were made for tree_praxis-0.0.24-cp313-cp313-win_amd64.whl:

Publisher: wheels.yml on zakk-h/PRAXIS

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

File details

Details for the file tree_praxis-0.0.24-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for tree_praxis-0.0.24-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 cc3f40a3c150172063cc49dc6e15888b4e1a838c8f73a536edfbe86ae49e724c
MD5 e38ecbc64ea26470d8eada3432d75d84
BLAKE2b-256 4ee29633b2b692e001581f0b2217e4a680f4e83588644b17bbcbed24828afd3d

See more details on using hashes here.

Provenance

The following attestation bundles were made for tree_praxis-0.0.24-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: wheels.yml on zakk-h/PRAXIS

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

File details

Details for the file tree_praxis-0.0.24-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for tree_praxis-0.0.24-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d3aaeaf0472b2be49d16f5c0d0899aaeb64009c636f2bbc0d451f9250503301a
MD5 acaff9949835bbf019e3ec860b10c9ab
BLAKE2b-256 f2dfe68fe2054bf434a79f78434b972ad47adfef2ce2ac216f542c84415debd3

See more details on using hashes here.

Provenance

The following attestation bundles were made for tree_praxis-0.0.24-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: wheels.yml on zakk-h/PRAXIS

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

File details

Details for the file tree_praxis-0.0.24-cp313-cp313-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for tree_praxis-0.0.24-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 5ee1f6d6668dff96fac7da5e06c18286472995f42abfd83213b6275ca03d33fa
MD5 3f31faaa38e60e9ce2709a114a0d55b2
BLAKE2b-256 b3a0a83d8ca71529483c741a5a17fb053e261272ee43223724f5bfe15bb89a6c

See more details on using hashes here.

Provenance

The following attestation bundles were made for tree_praxis-0.0.24-cp313-cp313-macosx_10_13_x86_64.whl:

Publisher: wheels.yml on zakk-h/PRAXIS

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

File details

Details for the file tree_praxis-0.0.24-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for tree_praxis-0.0.24-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 bd30f1ddbcbc31814f840062a8db619b6539994fc234e78e9755ddb72cf76a87
MD5 a349d60ff1438251fee7357b20bf7313
BLAKE2b-256 e5ebf50cc05042c8365b3d5413f6286c90c3dc2e4390bc0102726c7d3769281a

See more details on using hashes here.

Provenance

The following attestation bundles were made for tree_praxis-0.0.24-cp312-cp312-win_amd64.whl:

Publisher: wheels.yml on zakk-h/PRAXIS

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

File details

Details for the file tree_praxis-0.0.24-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for tree_praxis-0.0.24-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 be7fb92ba3f9f5392ccf419c31661757460fac592686025829ab9035b3c15aa9
MD5 01d0e1d405531b27968eb2b7dde3732f
BLAKE2b-256 3952c12bd167a319163eb8b1f0638f1c51b232d92414454d38a3900e6735dd91

See more details on using hashes here.

Provenance

The following attestation bundles were made for tree_praxis-0.0.24-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: wheels.yml on zakk-h/PRAXIS

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

File details

Details for the file tree_praxis-0.0.24-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for tree_praxis-0.0.24-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 6bbdcd341a297e54b16bbff41ad90209f209822468a54c520eaa49347754db8b
MD5 7e5332d2017f23796613b20ceda398e6
BLAKE2b-256 567051657bea563ebe0dbfe7c185d4d6bc11cee70e425c32c64db4b44d0540c2

See more details on using hashes here.

Provenance

The following attestation bundles were made for tree_praxis-0.0.24-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: wheels.yml on zakk-h/PRAXIS

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

File details

Details for the file tree_praxis-0.0.24-cp312-cp312-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for tree_praxis-0.0.24-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 d21db1519ca6f4ebf91334637e920ad42c40fec8fbdb0eab694e105ec3e96ce3
MD5 17ab1845dbb7bc0e6c20f373abd3ac37
BLAKE2b-256 9abc3c670381fa2ca9f35dfc4a41da699aa0265608f25deca76d125fb7cf0f47

See more details on using hashes here.

Provenance

The following attestation bundles were made for tree_praxis-0.0.24-cp312-cp312-macosx_10_13_x86_64.whl:

Publisher: wheels.yml on zakk-h/PRAXIS

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

File details

Details for the file tree_praxis-0.0.24-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for tree_praxis-0.0.24-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 b707ce0944dcfd7fc3b1ac4b8a105f19201225efbe28f531740d0d7971a0eb92
MD5 d11f71cef0f8988500db6a7d00e1de49
BLAKE2b-256 8b7393f4c6aefc75df39a4b325c52b37b6b47f9909356d54befc6334f7b89e3c

See more details on using hashes here.

Provenance

The following attestation bundles were made for tree_praxis-0.0.24-cp311-cp311-win_amd64.whl:

Publisher: wheels.yml on zakk-h/PRAXIS

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

File details

Details for the file tree_praxis-0.0.24-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for tree_praxis-0.0.24-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 ab7c66781e7fa6f0fc6bb525d9084bac2a4e9bb2bbe4c72629dd59e1ff10edd9
MD5 361d47f40f0899580fd96cb2cf354773
BLAKE2b-256 561df718cc299658a0ed1ce410cee74fcb37acaf3233bb0b77dbf26b32ac0b5f

See more details on using hashes here.

Provenance

The following attestation bundles were made for tree_praxis-0.0.24-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: wheels.yml on zakk-h/PRAXIS

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

File details

Details for the file tree_praxis-0.0.24-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for tree_praxis-0.0.24-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 2aaa4da8f092b010558b057d1124bf8cdcdee921ae4fcde5e815906cc00b3118
MD5 50020d0501bdcdcce8411a40fa418b0d
BLAKE2b-256 2692b4081b61286874fed6f42579b46db3cca4dbefdb24576a07f0b66f53a05d

See more details on using hashes here.

Provenance

The following attestation bundles were made for tree_praxis-0.0.24-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: wheels.yml on zakk-h/PRAXIS

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

File details

Details for the file tree_praxis-0.0.24-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for tree_praxis-0.0.24-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 31a3e127baf3d8b25286332d24fac8ff9212a2981a28c1578433c58c21437e72
MD5 b484d773e353348d30fecf0ee0dcd042
BLAKE2b-256 2f7718cf30b2d7844de963cbc9e82fd46a6674d0557778021c548fef3b25aed1

See more details on using hashes here.

Provenance

The following attestation bundles were made for tree_praxis-0.0.24-cp311-cp311-macosx_10_9_x86_64.whl:

Publisher: wheels.yml on zakk-h/PRAXIS

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

File details

Details for the file tree_praxis-0.0.24-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for tree_praxis-0.0.24-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 134c217d639df0510d4005d6ff2643afcff5bc4e62c161328641f29eb6a29d2c
MD5 7a1fbd3b826c70249961d37f40f7257e
BLAKE2b-256 18290cbb397a9c59bb8057cdceb61e3ffa69bf9f07841d61cd1ed0a6cc280296

See more details on using hashes here.

Provenance

The following attestation bundles were made for tree_praxis-0.0.24-cp310-cp310-win_amd64.whl:

Publisher: wheels.yml on zakk-h/PRAXIS

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

File details

Details for the file tree_praxis-0.0.24-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for tree_praxis-0.0.24-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 c3196535255b49b968c2e98a95c09cf1b92a8f29b072b6e8a10e35c9f377ccd8
MD5 41b844017b723b6e12cb259378fbf8ec
BLAKE2b-256 c66352cc9aa8de4dc451e7cee29e67c820a9d0196bc8a5461718b5db58dd546c

See more details on using hashes here.

Provenance

The following attestation bundles were made for tree_praxis-0.0.24-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: wheels.yml on zakk-h/PRAXIS

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

File details

Details for the file tree_praxis-0.0.24-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for tree_praxis-0.0.24-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 88d02cad6d8b3ca8f00f4f16aad3ad19484623f362f7ef64081f6e248bf43c01
MD5 aaeff0c85247ab2091f2421c9fa6b174
BLAKE2b-256 8ae82065b5b82182ff308f095895bcbef31eedd32ed5b14256c665fb52d96ea5

See more details on using hashes here.

Provenance

The following attestation bundles were made for tree_praxis-0.0.24-cp310-cp310-macosx_11_0_arm64.whl:

Publisher: wheels.yml on zakk-h/PRAXIS

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

File details

Details for the file tree_praxis-0.0.24-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for tree_praxis-0.0.24-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 c8fe45b4966b41a289f7884de8724f14654d35a29915c29eb389c9863b04d44d
MD5 cf3696f1b66cd33b6db1db03bc18d251
BLAKE2b-256 6dff1a474d04d2b8f1c47bb77ad2dca6d2f7e4e47d2bb5d772303c172c5eeb66

See more details on using hashes here.

Provenance

The following attestation bundles were made for tree_praxis-0.0.24-cp310-cp310-macosx_10_9_x86_64.whl:

Publisher: wheels.yml on zakk-h/PRAXIS

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

File details

Details for the file tree_praxis-0.0.24-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: tree_praxis-0.0.24-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 590.4 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for tree_praxis-0.0.24-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 70438981dd880727be32b3ec6d3fe56221079e2fd0725958625192172195bc53
MD5 00921970b507cc4785898d962e7393f7
BLAKE2b-256 a7cf20aaefa00de8e3f1f575033aa6cfc89ccede233d755b1bf7292e8cb44bd6

See more details on using hashes here.

Provenance

The following attestation bundles were made for tree_praxis-0.0.24-cp39-cp39-win_amd64.whl:

Publisher: wheels.yml on zakk-h/PRAXIS

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

File details

Details for the file tree_praxis-0.0.24-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for tree_praxis-0.0.24-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 e04a0fa28aec3e24bf24ad15c3aad9b65b366d1a9584a0bf63a45258f1920a62
MD5 9e4cb01f89d90db0668d03c5cfe52beb
BLAKE2b-256 d5784aac7d2bee105d1a6fbd616565043ed7e3c178d0149a54475df3062f7c5d

See more details on using hashes here.

Provenance

The following attestation bundles were made for tree_praxis-0.0.24-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: wheels.yml on zakk-h/PRAXIS

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

File details

Details for the file tree_praxis-0.0.24-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for tree_praxis-0.0.24-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 61296195bf6de059cc00e70f2785ab5c6d9f218f2e645be166b2faa7394091bb
MD5 e3489ce35c9056e6bf64d6b2f44d1b9b
BLAKE2b-256 739ef2821b015e039431a275705a8f2985a6713440a1f3f9bb917b88d44be125

See more details on using hashes here.

Provenance

The following attestation bundles were made for tree_praxis-0.0.24-cp39-cp39-macosx_11_0_arm64.whl:

Publisher: wheels.yml on zakk-h/PRAXIS

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

File details

Details for the file tree_praxis-0.0.24-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for tree_praxis-0.0.24-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 4659b7c28404c96bda48bf5f7d3f9bede5692bd730799173a3016c28f2bcd8b6
MD5 2578ae33fb7316f3d127fd1d433b108f
BLAKE2b-256 2ef543db89ca9b9410fea93c5b45f7f2607c3cf1ba68f008ae4d3810d39790ff

See more details on using hashes here.

Provenance

The following attestation bundles were made for tree_praxis-0.0.24-cp39-cp39-macosx_10_9_x86_64.whl:

Publisher: wheels.yml on zakk-h/PRAXIS

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

Supported by

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