Skip to main content

An interface to some 4ti2 functions

Project description

Py4ti2 - An interface to 4ti2

What is Py4ti2

Py4ti2 provides a Python interface to some of the computations performed by 4ti2 (https://4ti2.github.io/).

By now, it is possible to use:

  • minimize,
  • groebner,
  • normalform,
  • markov,
  • zbasis,
  • walk,
  • hilbert,
  • graver,
  • zsolve,
  • circuits,
  • rays,
  • qsolve

This software is inspired in PyNormaliz (https://github.com/Normaliz/PyNormaliz) and reuses some of its data transformation code.

Requirements and installation

First, 4ti2 is required with the groebner and zsolve components enabled. As well, GLPK (https://www.gnu.org/software/glpk/) is needed by 4ti2. GMP (https://gmplib.org/) is recommended. 4ti2 library folder should be specified to build Py4ti2, GLPK and GMP are expected to be installed in a default path, otherwise, use CPPFLAGS and LDFLAGS to specify compiler and linker information on those libraries.

For GNU/Linux or OSX users, open a ``terminal window'', select Py4ti2 as working directory to introduce the command to build the Py4ti2 modules.

your_prompt$ cd WHERE_Py4ti2_IS_LOCATED

The variable FTI2_DIR is used to provide the path where 4ti2 libraries are installed.

Then execute the following to build:

prompt...Py4ti2$ FTI2_DIR=ROOT_OF_4ti2_INSTALLATION_HIERARCHY python3 -m build .

On success, use this to install the package:

prompt...Py4ti2$ pip install dist/dist/py4ti2-0.5.tar.gz

Documentation

There is a module Py4ti2int64 for 64 bit precision architecture, Py4ti2int32 for 32 bits, and Py4ti2gmp for arbitrary precision computations.

It is recommended to read the manual page of the corresponding 4ti2 command to know which parameters are valid. Here, we show how to execute some examples that can be found in the 4ti2 source tree folder test.

Important: note that command line options cannot be specified at this moment. Py4ti2 interface allows the specification of matrix/vector input data.

We present some cases of use using 4ti2's distribution test data.

Minimal solution of an integer linear program

from Py4ti2int32 import *

g=groebner(mat=[[3,5,7]])
print(minimize(lat=g, cost=[[1,1,1]], zsol=[3,6,9], sign=[1,1,1]))

[2, 1, 13]

Gröbner bases

# cuww1.1
from Py4ti2int32 import *
r=groebner("mat", [[12223, 12224, 36674, 61119, 85569]],\
           "mar", [[12224, -12223, 0, 0, 0], [2, -5, 1, 0, 0],\
                   [1, -9, 1, 1, 0], [1, -8, 0, 0, 1]], "sign", [1, 0, 1, 1, 1])

print([e for e in r])
[[-4075, -8155, 4074, 0, 1], [-4074, -8152, 4075, 0, 0], [-1, -4, 0, 1, 0], [0, -11, -1, 0, 2], [1, -8, 0, 0, 1], [1, 3, 1, 0, -1], [4076, 8147, -4074, 0, 0]]
# cuww2.trunc1
from Py4ti2int64 import *
mar=[[-7339, 2444, 0, 2, 0, 0], [-7334, 2446, -1, 0, 0, 0], [-7333, 2445, 0, 1, -1, 0],\
     [-7, 0, -1, 0, 2, 0], [-7, 0, 0, -1, 1, 1], [-6, -1, 0, 1, 1, 0], [-6, -1, 1, 0, 0, 1],\
     [-5, -2, 1, 2, 0, 0], [-5, 0, -1, -1, 0, 2], [-4, -1, -1, 1, 0, 1], [-3, -2, -1, 3, 0, 0],\
     [-2, 0, 1, 0, 1, -1], [-2, 0, 2, -1, 0, 0], [-1, 1, -1, -1, 1, 0], [-1, 1, 0, -2, 0, 1]]

r=groebner("mat",[[12228, 36679, 36682, 48908, 61139, 73365]], "cost", [[1, 0, 0, 0, 0, 0]],\
          "lat", [[8, 4, 0, -5, 0, 0], [3, 2, 1, -3, 0, 0], [12221, 12224, 0, -12223, 0, 0],\
                  [2, 3, 0, -4, 1, 0], [-1, 1, 0, -2, 0, 1]], "mar", mar,\
           "weights", [[12228, 36679, 36682, 48908, 61139, 73365]], "weightsmax", [[1000000]])

print([e for e in r])
[[0, -3, -2, 5, -1, 0], [0, -2, 2, 3, 0, -2], [0, -2, 3, 2, -1, -1], [0, -2, 4, 1, -2, 0], [0, -2, 5, 0, -3, 1], [0, -1, -5, 3, 0, 1], [0, -1, -4, 2, -1, 2], [0, -1, -3, 1, -2, 3], [0, -1, -2, 0, -3, 4], [0, -1, 7, 0, 0, -3], [0, 0, -1, 1, 1, -1], [1, -1, 0, 2, 0, -1], [1, -1, 1, 1, -1, 0], [1, -1, 2, 0, -2, 1], [1, 0, 4, 0, 1, -3], [1, 0, 5, -1, 0, -2], [1, 1, -3, 0, 1, 0], [1, 1, -2, -1, 0, 1], [1, 2, 3, -4, 0, 0], [2, 0, -2, 1, 0, 0], [2, 0, -1, 0, -1, 1], [2, 1, 3, -2, 0, -1], [3, 0, 3, 0, 0, -2], [3, 2, 1, -3, 0, 0], [4, 1, 1, -1, 0, -1], [5, 0, 2, 0, -1, -1], [5, 2, -1, -2, 0, 0], [6, 1, -1, 0, 0, -1], [7, 0, 1, 0, -2, 0]]

Normal form

# 4coins
from Py4ti2gmp import *

nf=normalform("mat", [[1, 1, 1, 1], [1, 5, 10, 25]], 
              "cost", [[0, 1, 0, 1]],
              "gro", [[-5, 3, 4, -2], [-5, 6, 0, -1],[0, 3, -4, 1], [5, 0, -8, 3]],
              "feas", [[4, 1232534646456456456389274293472974242374234729743, 0, 3]])
print([e for e in nf])

[[684741470253586920216263496373874579096797072079, 2, 547793176202869536173010797099099663277437657668, 1]]

Markov basis

# grin10900.1

lat = [[-3, 2, -2, 0, 0, 0, -1, 1, 0, 1, 1, 3, 0], [1, 1, 2, 0, 1, -1, -1, 1, -2, 0, -2, -3, 1], [-3, 1, -4, 1, 0, -1, 2, 2, 2, 0, 2, 1, -1], [21, -21, 8, -2, -4, 5, 14, -15, 9, -8, -1, -10, -3], [42, -43, 15, -2, -7, 10, 25, -25, 17, -18, 1, -24, -6], [-1, 0, 4, -1, 3, -2, 1, -1, 0, -1, 0, -2, 1], [-83, 63, -41, 6, 9, -8, -44, 45, -17, 28, 17, 59, 5], [1, -1, -1, 2, 3, -1, -1, -2, 3, -2, 1, -1, 0], [-5, 3, -1, 1, -4, 3, 1, 1, 2, 0, 1, 2, -1]]
zsol = [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]

from Py4ti2int64 import *

mar = markov("lat", lat, "zsol", zsol)
print([e for e in mar])

[[0, 0, 0, 2, 1, -3, -5, 0, -2, 3, 2, 4, -3], [0, 0, 0, 2, 2, -1, 0, -4, 2, 2, -7, 1, 0], .... [7, -4, -1, 1, 0, 0, -5, 0, -3, 1, 0, 0, -1], [8, -6, -3, 0, 0, 0, 0, -2, 0, 0, 0, 0, -1]]
# prob16

mat = [[35113, 36869, 46647, 53560, 81518, 85287, 102780, 115459, 146791, 147097]]
lat = [[-1, 1, 2, -1, 1, 2, 0, 0, -2, 0], [0, 1, -2, -2, -1, 1, -1, 1, 0, 1], [0, 0, -1, 1, -2, 1, 1, 1, 1, -2], [-2, 1, -1, -1, 0, -1, 1, 1, -2, 2], [-1, -1, -2, 2, 0, 1, -2, -1, 1, 1], [3, 1, -2, 1, 0, 0, -1, 0, -1, 1], [-2, 2, 2, 0, 0, 0, 1, -3, 1, 0], [-3, 0, 0, 1, 2, -1, 2, -2, 2, -2], [1, 5, 0, 2, 0, -3, -6, 6, -1, 0]]

from Py4ti2int64 import *

mar = markov("lat", lat, "mat", mat)
print([e for e in mar])

[[0, 0, 1, 0, 0, -5, 4, 1, -1, 0], [0, 0, 1, 4, -3, 2, -1, -2, 1, 0], [0, 0, 4, -5, 1, 0, 0, 0, 1, -1], .... [25, -7, -1, -4, 1, 0, 0, 0, -3, 0], [26, -8, -3, -3, 0, -2, 0, 0, -1, 0]]

Integer lattice basis

# cuww4

mat = [[13211, 13212, 39638, 52844, 66060, 79268, 92482]]

from Py4ti2int64 import *

lat = zbasis("mat", mat)
print([e for e in lat])

Integer linear program minimal solution

Notes:

  • cost input is needed according to 4ti2 source code.
  • zsol input is optional according to the examples and 4ti2 source code.
# cuww1

mat = [[12223, 12224, 36674, 61119, 85569]]
cost = [[1, 1, 0, 0, 0]]
cost_start = [[-1, 0, 0, 0, 0]]
gro_start = [[-7336, 3, 2444, 0, 0], [-7334, -2, 2445, 0, 0], [-2, 5, -1, 0, 0], [-1, -4, 0, 1, 0], [-1, -3, -1, 0, 1]]

from Py4ti2int64 import *

gro = walk("mat", mat, "cost", cost, "cost.start", cost_start, "gro.start", gro_start)
print([e for e in gro])

[[-2, 2, 2, 3, -3], [-2, 3, 1, 2, -2], [-2, 4, 0, 1, -1], .... [7334, 2, -2445, 0, 0], [7336, -3, -2444, 0, 0]]

Hilbert bases

# 44.mat

from Py4ti2int64 import *
mat=[[1, 1, 1, 1, -1, -1, -1, -1, 0, 0, 0, 0, 0, 0, 0, 0], 
     [1, 1, 1, 1, 0, 0, 0, 0, -1, -1, -1, -1, 0, 0, 0, 0],
     [1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, -1, -1, -1, -1],
     [0, 1, 1, 1, -1, 0, 0, 0, -1, 0, 0, 0, -1, 0, 0, 0],
     [1, 0, 1, 1, 0, -1, 0, 0, 0, -1, 0, 0, 0, -1, 0, 0],
     [1, 1, 0, 1, 0, 0, -1, 0, 0, 0, -1, 0, 0, 0, -1, 0],
     [1, 1, 1, 0, 0, 0, 0, -1, 0, 0, 0, -1, 0, 0, 0, -1],
     [0, 1, 1, 1, 0, -1, 0, 0, 0, 0, -1, 0, 0, 0, 0, -1],
     [1, 1, 1, 0, 0, 0, -1, 0, 0, -1, 0, 0, -1, 0, 0, 0]]
r=hilbert("mat", mat)

print([e for e in r])
['zhom', [[0, 1, 0, 1, 2, 0, 0, 0, 0, 1, 1, 0, 0, 0, 1, 1], [1, 0, 1, 0, 0, 0, 0, 2, 0, 1, 1, 0, 1, 1, 0, 0], [0, 0, 1, 1, 0, 1, 1, 0, 2, 0, 0, 0, 0, 1, 0, 1], [1, 1, 0, 0, 0, 1, 1, 0, 0, 0, 0, 2, 1, 0, 1, 0], [0, 0, 1, 1, 0, 1, 0, 1, 1, 0, 1, 0, 1, 1, 0, 0], [1, 0, 0, 1, 0, 0, 1, 1, 1, 0, 1, 0, 0, 2, 0, 0], [0, 0, 0, 1, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0], [0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 1], [0, 0, 2, 0, 0, 1, 0, 1, 1, 1, 0, 0, 1, 0, 0, 1], [1, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0], [0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1], [0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0], [0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 1, 0, 0, 0], [1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0], [0, 2, 0, 0, 1, 0, 1, 0, 0, 0, 1, 1, 1, 0, 0, 1], [0, 1, 0, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 0, 1, 0], [0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0], [1, 1, 0, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 0, 1, 1], [1, 0, 1, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 1, 0, 1], [1, 0, 0, 1, 1, 1, 0, 0, 0, 1, 0, 1, 0, 0, 2, 0]], 'zfree', []]
# a1.mat

from Py4ti2int64 import *
mat=[[ 0,  0, -1,  1,  0,  0,  0,  0, -2,  0,  0,  1,  0,  1,  2,  0,  0,  1,  0, -1, -1, -1,  0, -1],
[ 0,  0,  1, -1,  0,  0, -2, -2,  0,  2,  2,  1,  2,  1,  0,  2,  2,  1, -2, -1, -1, -1, -2, -1],
[ 0,  0, -1, -1,  0, -2,  0,  0,  0,  0,  0,  1,  0, -1,  0,  0,  0,  1,  0,  1,  1,  1,  0,  1],
[ 0,  0,  1, -1, -2,  0,  0,  0,  0,  0,  0, -1,  0,  1,  0,  0,  0, -1,  0,  1, -1,  1,  0,  1],
[ 0, -2, -1,  1,  0,  0,  0, -2,  0,  0,  2,  1,  0,  1,  0,  0,  2,  1,  0, -1,  1, -1,  0, -1],
[-2,  0, -1, -1,  0,  0,  0,  2,  0,  0, -2, -1,  0, -1,  0,  0, -2, -1,  2,  1,  1,  1,  2,  1],
[ 0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, -1, -1, -1,  0,  0,  0,  0,  1,  1],
[ 0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, -1],
[ 0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, -1,  0,  0,  0,  0,  0,  0],
[ 0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, -1,  0,  0,  0,  0,  0,  0,  0],
[ 0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  1,  1,  0,  0,  0,  0, -1,  0],
[ 0,  0,  1, -1,  0,  0,  0,  0,  0,  0,  0, -1,  0, -1, -2,  0,  0, -1,  0,  1,  1,  1,  0,  1],
[ 0,  0, -1,  1,  0,  0,  0,  0,  0,  0,  0,  1, -2, -1,  0,  0,  0,  1,  0, -1,  1,  1,  0, -1],
[ 0,  0, -1,  1,  0,  0,  0,  0,  0,  0,  0,  1,  0, -1,  0,  0,  0,  1,  0, -1,  1, -1,  0, -1],
[ 0,  0,  1, -1,  0,  0,  0,  0,  0,  0,  0, -1,  0,  1,  0,  0,  0, -1,  0,  1, -1, -1,  0,  1],
[ 0,  0, -1,  1,  0,  0,  0,  0,  0,  0,  0,  1,  0,  1,  0,  0,  0,  1,  0, -1, -1, -1,  0, -1],
[ 0,  0,  1, -1,  0,  0,  0,  0,  0,  0,  0, -1,  0, -1,  0,  0,  0, -1,  0,  1, -1,  1,  0,  1],
[ 0,  0,  0,  0,  0,  0,  0, -1,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0],
[ 0,  0,  0,  0,  0,  0,  0,  1,  0, -1, -1, -1,  0,  0,  0,  0,  0,  0,  1,  1,  0,  0,  0,  0],
[ 0,  0,  1,  1,  0,  0,  0,  0,  0,  0,  0, -1,  0,  1,  0,  0,  0, -1,  0, -1, -1, -1,  0, -1],
[ 0,  0, -1, -1,  0,  0,  0,  0,  0,  0,  0,  1,  0, -1,  0,  0,  0,  1,  0, -1,  1,  1,  0,  1],
[ 0,  0, -1, -1,  0,  0,  0,  0,  0,  0,  0, -1,  0, -1,  0,  0,  0,  1,  0,  1,  1,  1,  0,  1],
[ 0,  0,  0,  0,  0,  0,  0,  1,  0,  0, -1,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0],
[ 0,  0,  1,  1,  0,  0,  0, -2,  0,  0,  2,  1,  0,  1,  0,  0,  0, -1, -2, -1, -1, -1,  0, -1]]
rel=[-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1]
sign=[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
r=hilbert("mat", mat, "rel", rel, "sign", sign)

print([e for e in r])
['zhom', [[1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0], [0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0], [0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0], [0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0], [0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0], [0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0], [1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0], [0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0], [0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0], [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0], [0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1], [1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 0, 1, 1, 1, 1, 0, 0, 0, 1, 1, 1, 1, 0, 0]], 'zfree', []]

Graver bases

# small

from Py4ti2int64 import *

r=graver("mat", [[1, 1, 1, 1, 1], [1, 2, 3, 4, 5]], "sign", [-1, 2, 1, 1, 0])

print([e for e in r])
[[0, -1, 0, 3, -2], [0, -2, 3, 0, -1], [-1, 0, 2, 0, -1], [-3, 4, 0, 0, -1], [-2, 2, 1, 0, -1], [-1, 1, 0, 1, -1], [0, -1, 1, 1, -1], [-1, 0, 1, 2, -2], [-1, 0, 0, 4, -3]]

Zsolve

# affine

from Py4ti2int64 import *

r=zsolve("lat",[[1, -1, 1, 0], [2, -3, 0, 1]],"sign",[1, 2, 2, 0])

print([e for e in r])
['zinhom', [[0, 0, 0, 0]], 'zhom', [[1, 0, 3, -1], [0, -1, -2, 1], [0, 1, 2, -1], [1, -1, 1, 0], [1, -2, -1, 1], [2, -3, 0, 1]], 'zfree', []]
# hppi6

from Py4ti2int32 import *

zsolve("mat",[[1, 1, 1, 1, 1, 1], [1, 2, 3, 4, 5, 6]],"sign",[1, 1, 1, 2, 2, 2], "rel", [-1, -1], 
      "lb", [0, 0, 0, 1, -1, -1], "ub", [1, 4, -1, -1, 2, 1])

print([e for e in r])
['zinhom', [[0, 0, 0, 0]], 'zhom', [[1, 0, 3, -1], [0, -1, -2, 1], [0, 1, 2, -1], [1, -1, 1, 0], [1, -2, -1, 1], [2, -3, 0, 1]], 'zfree', []]
# m33

from Py4ti2gmp import *

problem=["mat",[[0, 0, 0, 0, 0, 3, -4, -1, 2], [0, 0, 0, 0, 1, -1, 1, 0, -1], [0, 0, 0, 1, 2, 0, 0, -1, -2], 
                 [0, 0, 1, 0, 1, 0, 0, -1, -1], [0, 1, 2, 0, 0, 0, 0, -1, -2], [1, 0, 2, 0, 0, 0, 0, -2, -1], 
                 [-2, 0, -2, 0, 0, 0, 0, 3, 0], [-2, 0, 0, 0, 0, 0, 0, 1, 0], [0, 0, -2, 0, 0, 0, 0, 1, 0], 
                 [0, 0, 0, 0, 0, 0, 0, -1, 0]], 
          "rel", [0, 0, 0, 0, 0, 0, -1, -1, -1, -1], 
          "sign", [0, 0, 0, 0, 0, 0, 0, 0, 0]]

r=zsolve(*problem)

print([e for e in r])
['zinhom', [[0, 0, 0, 0, 0, 0, 0, 0, 0]], 'zhom', [[1, 0, 2, 2, 1, 0, 0, 2, 1], [2, 0, 1, 0, 1, 2, 1, 2, 0], [1, 2, 0, 0, 1, 2, 2, 0, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1], [0, 2, 1, 2, 1, 0, 1, 0, 2]], 'zfree', []]

Circuits

from Py4ti2int64 import *

# 33.1

data=[[1, 1, 1, -1, -1, -1, 0, 0, 0], 
      [1, 1, 1, 0, 0, 0, -1, -1, -1], 
      [0, 1, 1, -1, 0, 0, -1, 0, 0], 
      [1, 0, 1, 0, -1, 0, 0, -1, 0], 
      [1, 1, 0, 0, 0, -1, 0, 0, -1], 
      [0, 1, 1, 0, -1, 0, 0, 0, -1], 
      [1, 1, 0, 0, -1, 0, -1, 0, 0]]

#r=circuits("mat", data, "sign", [1, 2, 2, 2, 2, 2, 2, 2, 2])

r=circuits(mat=data, sign=[1, 2, 2, 2, 2, 2, 2, 2, 2])

print([e for e in r])
['cir', [[1, -4, 0, -2, -1, 0, -2, 2, -3], [1, -2, -2, -4, -1, 2, 0, 0, -3], [1, -2, 1, 0, 0, 0, -1, 2, -1], [1, -1, 0, -1, 0, 1, 0, 1, -1], [1, 0, -1, -2, 0, 2, 1, 0, -1], [1, 0, 2, 2, 1, 0, 0, 2, 1], [1, 2, 0, 0, 1, 2, 2, 0, 1], [2, -2, 3, 2, 1, 0, -1, 4, 0], [2, -1, 2, 1, 1, 1, 0, 3, 0], [2, 0, 1, 0, 1, 2, 1, 2, 0], [2, 1, 0, -1, 1, 3, 2, 1, 0], [2, 2, -1, -2, 1, 4, 3, 0, 0], [3, -2, 2, 0, 1, 2, 0, 4, -1], [3, 0, 0, -2, 1, 4, 2, 2, -1], [0, 0, 3, 4, 1, -2, -1, 2, 2], [0, 1, -1, -1, 0, 1, 1, -1, 0], [0, 1, 2, 3, 1, -1, 0, 1, 2], [0, 2, 1, 2, 1, 0, 1, 0, 2], [0, 3, 0, 1, 1, 1, 2, -1, 2], [0, 4, -1, 0, 1, 2, 3, -2, 2]], 'qfree', []]

Rays

from Py4ti2gmp import *

# 55.r

data=[[1, 1, 1, 1, 1, -1, -1, -1, -1, -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [1, 1, 1, 1, 1, 0, 0, 0, 0, 0, -1, -1, -1, -1, -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
[1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1, -1, -1, -1, -1, 0, 0, 0, 0, 0],
[1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1, -1, -1, -1, -1],
[0, 1, 1, 1, 1, -1, 0, 0, 0, 0, -1, 0, 0, 0, 0, -1, 0, 0, 0, 0, -1, 0, 0, 0, 0],
[1, 0, 1, 1, 1, 0, -1, 0, 0, 0, 0, -1, 0, 0, 0, 0, -1, 0, 0, 0, 0, -1, 0, 0, 0],
[1, 1, 0, 1, 1, 0, 0, -1, 0, 0, 0, 0, -1, 0, 0, 0, 0, -1, 0, 0, 0, 0, -1, 0, 0],
[1, 1, 1, 0, 1, 0, 0, 0, -1, 0, 0, 0, 0, -1, 0, 0, 0, 0, -1, 0, 0, 0, 0, -1, 0],
[1, 1, 1, 1, 0, 0, 0, 0, 0, -1, 0, 0, 0, 0, -1, 0, 0, 0, 0, -1, 0, 0, 0, 0, -1],
[0, 1, 1, 1, 1, 0, -1, 0, 0, 0, 0, 0, -1, 0, 0, 0, 0, 0, -1, 0, 0, 0, 0, 0, -1],
[1, 1, 1, 1, 0, 0, 0, 0, -1, 0, 0, 0, -1, 0, 0, 0, -1, 0, 0, 0, -1, 0, 0, 0, 0]]

r=rays(mat=data)

print([e for e in r])
['ray', [[0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0], [0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0], ..., [6, 0, 0, 0, 3, 0, 1, 0, 2, 6, 0, 8, 1, 0, 0, 0, 0, 8, 1, 0, 3, 0, 0, 6, 0], [6, 0, 0, 0, 3, 0, 1, 8, 0, 0, 0, 0, 1, 8, 0, 0, 2, 0, 1, 6, 3, 6, 0, 0, 0]], 'qfree', []]

QSolve

from Py4ti2int32 import *

# 33.c

data=[[1, 1, 1, -1, -1, -1, 0, 0, 0], 
 [1, 1, 1, 0, 0, 0, -1, -1, -1], 
 [0, 1, 1, -1, 0, 0, -1, 0, 0], 
 [1, 0, 1, 0, -1, 0, 0, -1, 0], 
 [1, 1, 0, 0, 0, -1, 0, 0, -1], 
 [0, 1, 1, 0, -1, 0, 0, 0, -1], 
 [1, 1, 0, 0, -1, 0, -1, 0, 0]]

print(qsolve(mat=data, sign=[2, 2, 2, 2, 2, 2, 2, 2, 2]))
('qhom', [[0, 0, 3, 4, 1, -2, -1, 2, 2], [0, 1, -1, -1, 0, 1, 1, -1, 0], [0, 1, 2, 3, 1, -1, 0, 1, 2], [0, 2, 1, 2, 1, 0, 1, 0, 2], [0, 3, 0, 1, 1, 1, 2, -1, 2], [0, 4, -1, 0, 1, 2, 3, -2, 2], [1, -4, 0, -2, -1, 0, -2, 2, -3], [1, -2, -2, -4, -1, 2, 0, 0, -3], [1, -2, 1, 0, 0, 0, -1, 2, -1], [1, -1, 0, -1, 0, 1, 0, 1, -1], [1, 0, -1, -2, 0, 2, 1, 0, -1], [1, 0, 2, 2, 1, 0, 0, 2, 1], [1, 2, 0, 0, 1, 2, 2, 0, 1], [2, -2, 3, 2, 1, 0, -1, 4, 0], [2, -1, 2, 1, 1, 1, 0, 3, 0], [2, 0, 1, 0, 1, 2, 1, 2, 0], [2, 1, 0, -1, 1, 3, 2, 1, 0], [2, 2, -1, -2, 1, 4, 3, 0, 0], [3, -2, 2, 0, 1, 2, 0, 4, -1], [3, 0, 0, -2, 1, 4, 2, 2, -1], [0, 0, -3, -4, -1, 2, 1, -2, -2], [0, -1, 1, 1, 0, -1, -1, 1, 0], [0, -1, -2, -3, -1, 1, 0, -1, -2], [0, -2, -1, -2, -1, 0, -1, 0, -2], [0, -3, 0, -1, -1, -1, -2, 1, -2], [0, -4, 1, 0, -1, -2, -3, 2, -2], [-1, 4, 0, 2, 1, 0, 2, -2, 3], [-1, 2, 2, 4, 1, -2, 0, 0, 3], [-1, 2, -1, 0, 0, 0, 1, -2, 1], [-1, 1, 0, 1, 0, -1, 0, -1, 1], [-1, 0, 1, 2, 0, -2, -1, 0, 1], [-1, 0, -2, -2, -1, 0, 0, -2, -1], [-1, -2, 0, 0, -1, -2, -2, 0, -1], [-2, 2, -3, -2, -1, 0, 1, -4, 0], [-2, 1, -2, -1, -1, -1, 0, -3, 0], [-2, 0, -1, 0, -1, -2, -1, -2, 0], [-2, -1, 0, 1, -1, -3, -2, -1, 0], [-2, -2, 1, 2, -1, -4, -3, 0, 0], [-3, 2, -2, 0, -1, -2, 0, -4, 1], [-3, 0, 0, 2, -1, -4, -2, -2, 1]], 'qfree', [])

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

py4ti2-0.5.1.tar.gz (29.3 kB view details)

Uploaded Source

Built Distributions

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

py4ti2-0.5.1-cp313-cp313-musllinux_1_2_x86_64.whl (14.0 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ x86-64

py4ti2-0.5.1-cp313-cp313-musllinux_1_2_i686.whl (13.6 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ i686

py4ti2-0.5.1-cp313-cp313-musllinux_1_2_aarch64.whl (13.4 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ ARM64

py4ti2-0.5.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (13.6 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

py4ti2-0.5.1-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl (13.0 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ i686

py4ti2-0.5.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (13.2 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

py4ti2-0.5.1-cp313-cp313-macosx_11_0_arm64.whl (1.6 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

py4ti2-0.5.1-cp313-cp313-macosx_10_13_x86_64.whl (1.9 MB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

py4ti2-0.5.1-cp312-cp312-musllinux_1_2_x86_64.whl (14.0 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

py4ti2-0.5.1-cp312-cp312-musllinux_1_2_i686.whl (13.6 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ i686

py4ti2-0.5.1-cp312-cp312-musllinux_1_2_aarch64.whl (13.4 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ARM64

py4ti2-0.5.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (13.6 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

py4ti2-0.5.1-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl (13.0 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ i686

py4ti2-0.5.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (13.2 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

py4ti2-0.5.1-cp312-cp312-macosx_11_0_arm64.whl (1.6 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

py4ti2-0.5.1-cp312-cp312-macosx_10_13_x86_64.whl (1.9 MB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

py4ti2-0.5.1-cp311-cp311-musllinux_1_2_x86_64.whl (14.0 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

py4ti2-0.5.1-cp311-cp311-musllinux_1_2_i686.whl (13.6 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ i686

py4ti2-0.5.1-cp311-cp311-musllinux_1_2_aarch64.whl (13.4 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ ARM64

py4ti2-0.5.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (13.6 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

py4ti2-0.5.1-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl (13.0 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ i686

py4ti2-0.5.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (13.2 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

py4ti2-0.5.1-cp311-cp311-macosx_11_0_arm64.whl (1.6 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

py4ti2-0.5.1-cp311-cp311-macosx_10_9_x86_64.whl (1.9 MB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

py4ti2-0.5.1-cp310-cp310-musllinux_1_2_x86_64.whl (14.0 MB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ x86-64

py4ti2-0.5.1-cp310-cp310-musllinux_1_2_i686.whl (13.6 MB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ i686

py4ti2-0.5.1-cp310-cp310-musllinux_1_2_aarch64.whl (13.4 MB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ ARM64

py4ti2-0.5.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (13.6 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

py4ti2-0.5.1-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl (13.0 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ i686

py4ti2-0.5.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (13.2 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64

py4ti2-0.5.1-cp310-cp310-macosx_11_0_arm64.whl (1.6 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

py4ti2-0.5.1-cp310-cp310-macosx_10_9_x86_64.whl (1.9 MB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

py4ti2-0.5.1-cp39-cp39-musllinux_1_2_x86_64.whl (14.0 MB view details)

Uploaded CPython 3.9musllinux: musl 1.2+ x86-64

py4ti2-0.5.1-cp39-cp39-musllinux_1_2_i686.whl (13.6 MB view details)

Uploaded CPython 3.9musllinux: musl 1.2+ i686

py4ti2-0.5.1-cp39-cp39-musllinux_1_2_aarch64.whl (13.4 MB view details)

Uploaded CPython 3.9musllinux: musl 1.2+ ARM64

py4ti2-0.5.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (13.6 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

py4ti2-0.5.1-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl (13.0 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ i686

py4ti2-0.5.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (13.2 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ ARM64

py4ti2-0.5.1-cp39-cp39-macosx_11_0_arm64.whl (1.6 MB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

py4ti2-0.5.1-cp39-cp39-macosx_10_9_x86_64.whl (1.9 MB view details)

Uploaded CPython 3.9macOS 10.9+ x86-64

File details

Details for the file py4ti2-0.5.1.tar.gz.

File metadata

  • Download URL: py4ti2-0.5.1.tar.gz
  • Upload date:
  • Size: 29.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for py4ti2-0.5.1.tar.gz
Algorithm Hash digest
SHA256 37cfc3b495ac4e2cca0d1925062b774ff0f32ed131e1380b9d332e919f710f64
MD5 79df791dfdc762b73d9fdfa0af7845a0
BLAKE2b-256 c8c0a054735ce221525aa9c1cee77345dbb990356196cb285afafdd575d23eaf

See more details on using hashes here.

Provenance

The following attestation bundles were made for py4ti2-0.5.1.tar.gz:

Publisher: dist.yml on alfsan/Py4ti2

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

File details

Details for the file py4ti2-0.5.1-cp313-cp313-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for py4ti2-0.5.1-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 286e2c6256f8fe85ecd736aac741128cfe0bc2b24b249d09d3fb389f5c2ace07
MD5 add47d38e732540dd35a02160ae95a25
BLAKE2b-256 424670b62e1efbb606505958af630f65e17021adaeccdc881dee1cab87c455f0

See more details on using hashes here.

Provenance

The following attestation bundles were made for py4ti2-0.5.1-cp313-cp313-musllinux_1_2_x86_64.whl:

Publisher: dist.yml on alfsan/Py4ti2

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

File details

Details for the file py4ti2-0.5.1-cp313-cp313-musllinux_1_2_i686.whl.

File metadata

File hashes

Hashes for py4ti2-0.5.1-cp313-cp313-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 8662501fc1dc8fe857c1d85cbd5e58ca752b25e44f47e145a663adea0f54cdfe
MD5 03be7673b12a77fa514463194389c7ee
BLAKE2b-256 43f614e1f208e4244dc8f0f4d6f27d29fa7d4cf4b8b28b87544b47d410c25af4

See more details on using hashes here.

Provenance

The following attestation bundles were made for py4ti2-0.5.1-cp313-cp313-musllinux_1_2_i686.whl:

Publisher: dist.yml on alfsan/Py4ti2

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

File details

Details for the file py4ti2-0.5.1-cp313-cp313-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for py4ti2-0.5.1-cp313-cp313-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 3389184f8eff0a1799074e99fba302aeeb083b0033ab2869d3baecba41cec4e4
MD5 1602cedb264d99bc7d69a8296cab4c34
BLAKE2b-256 7682d1e6524f9857bb48a0a668c1748c1198f6f757635c4440f47a23ecd3b18f

See more details on using hashes here.

Provenance

The following attestation bundles were made for py4ti2-0.5.1-cp313-cp313-musllinux_1_2_aarch64.whl:

Publisher: dist.yml on alfsan/Py4ti2

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

File details

Details for the file py4ti2-0.5.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for py4ti2-0.5.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 d915aa009380144aba8972980ae0214f21ce4a18c0371aa947863aa82509c5ee
MD5 3c220b08667cb48b1e356dbcc68f73f1
BLAKE2b-256 08c270a6cd9d59c3d95d4f3b3d848e8f9ede01269db59d059cc033175cf1e9b9

See more details on using hashes here.

Provenance

The following attestation bundles were made for py4ti2-0.5.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: dist.yml on alfsan/Py4ti2

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

File details

Details for the file py4ti2-0.5.1-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for py4ti2-0.5.1-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 0bac2393da3e59151c775b339b3c34f4979de4135bbe0c4e7e9373b8199387cc
MD5 4119c990d5a8d4625234d69cfc7a85d8
BLAKE2b-256 c09fec6caa54a357d64054d8086a6fcee5330e85fe71ce67382ce84ad7c8b8e5

See more details on using hashes here.

Provenance

The following attestation bundles were made for py4ti2-0.5.1-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl:

Publisher: dist.yml on alfsan/Py4ti2

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

File details

Details for the file py4ti2-0.5.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for py4ti2-0.5.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 3629a4841d013be408e4606b51031d7db60ff6bd5d816311a8b291a25f6a47c5
MD5 1e011ea0fe6362b7cd49d608474da97e
BLAKE2b-256 cc0da0ec193582602e50c56b6551a3ebf95419f25e3dfea08b90ddd6048e00cb

See more details on using hashes here.

Provenance

The following attestation bundles were made for py4ti2-0.5.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: dist.yml on alfsan/Py4ti2

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

File details

Details for the file py4ti2-0.5.1-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for py4ti2-0.5.1-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 1f8f7538c0a722210119540b3995c98d4210524c9c51a933a9ece77807f7abd4
MD5 722c5ead05682706a82ac664bb02d8ab
BLAKE2b-256 04401ede75e80a882e0adef3d35420cb504b3bf1e40a11ef4dc86a464070fc54

See more details on using hashes here.

Provenance

The following attestation bundles were made for py4ti2-0.5.1-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: dist.yml on alfsan/Py4ti2

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

File details

Details for the file py4ti2-0.5.1-cp313-cp313-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for py4ti2-0.5.1-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 0ad0de7d99c1b7154cd51bb24a06487272503d0d2b51fc1c84bda945dc958742
MD5 df35022d5f141e49ce8654e48703ceea
BLAKE2b-256 ea79ae52a33d40fccc05c46e61e07247ece08c5055973dd5f89a01bfc73b43ab

See more details on using hashes here.

Provenance

The following attestation bundles were made for py4ti2-0.5.1-cp313-cp313-macosx_10_13_x86_64.whl:

Publisher: dist.yml on alfsan/Py4ti2

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

File details

Details for the file py4ti2-0.5.1-cp312-cp312-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for py4ti2-0.5.1-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 c3d89289b26617c0614167dbd23500d211937b14f6b00d4f6202c6eb111c7fa5
MD5 bbc74321e99926b66754b42548f2a258
BLAKE2b-256 a5e9eabb4cc974f0067fd570a4cda9e049bf4a46fe539cc1765799ee932f03fa

See more details on using hashes here.

Provenance

The following attestation bundles were made for py4ti2-0.5.1-cp312-cp312-musllinux_1_2_x86_64.whl:

Publisher: dist.yml on alfsan/Py4ti2

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

File details

Details for the file py4ti2-0.5.1-cp312-cp312-musllinux_1_2_i686.whl.

File metadata

File hashes

Hashes for py4ti2-0.5.1-cp312-cp312-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 b2c3b14b358116dc5662bca2cabccb4b9ddedbf84cd35dc0488aea79ae64c27c
MD5 3e0518b912ee3339e49da5fc51e43d34
BLAKE2b-256 17dabd3d9f5a7afd4900308abcffdf55cd98f697dff1477877dfdad2019acc8f

See more details on using hashes here.

Provenance

The following attestation bundles were made for py4ti2-0.5.1-cp312-cp312-musllinux_1_2_i686.whl:

Publisher: dist.yml on alfsan/Py4ti2

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

File details

Details for the file py4ti2-0.5.1-cp312-cp312-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for py4ti2-0.5.1-cp312-cp312-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 a60f2c752aff29e175965ec7e27e63baa96d5ba9bf275104642ee3a3fa282ccd
MD5 3bf5fae8c7fb3817d918fe36fc166c10
BLAKE2b-256 d2480b20e3c2c51ca072a7e600979a8047a9a11db9361bfd3c8eb02211cb216b

See more details on using hashes here.

Provenance

The following attestation bundles were made for py4ti2-0.5.1-cp312-cp312-musllinux_1_2_aarch64.whl:

Publisher: dist.yml on alfsan/Py4ti2

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

File details

Details for the file py4ti2-0.5.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for py4ti2-0.5.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 39d6901c3a858f0e50224b86e3828117596cd9631442e152aff7c077a37dcf7e
MD5 e0e3783374dc72458c2653bce1290267
BLAKE2b-256 6eac64a93d73803cab23efd241f6c1fadd4faaa257fd8c83389c39e8db750754

See more details on using hashes here.

Provenance

The following attestation bundles were made for py4ti2-0.5.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: dist.yml on alfsan/Py4ti2

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

File details

Details for the file py4ti2-0.5.1-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for py4ti2-0.5.1-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 ef19c8467a23c03233ab1fbba7cc73fd34d70d1e0e1a64e82ae4f17488d7dea2
MD5 8e3c3c6c3b90ef93eea666d118073243
BLAKE2b-256 584d89ce81f42bc07741b8e9459418f8cb44e8710962062c9224cca7c5b04f3f

See more details on using hashes here.

Provenance

The following attestation bundles were made for py4ti2-0.5.1-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl:

Publisher: dist.yml on alfsan/Py4ti2

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

File details

Details for the file py4ti2-0.5.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for py4ti2-0.5.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 fc28becd0a1c3346fdf24e32fccbf1a0b56670a76d1c6fab6d78a6d3825ea2c9
MD5 c82b3a2a14806e41c67b0cee179b5ff0
BLAKE2b-256 9f7575dd8da6a5daecf4a7041938c896da90acb0b82fceea7245d08fa585c9c3

See more details on using hashes here.

Provenance

The following attestation bundles were made for py4ti2-0.5.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: dist.yml on alfsan/Py4ti2

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

File details

Details for the file py4ti2-0.5.1-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for py4ti2-0.5.1-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 59b3810b7ff44c0395541e94ec683ca938d832aef12f41d7c870a15c88c8e754
MD5 8da308a2427a207521e0111fe0d0e1b0
BLAKE2b-256 e7d8b377eeba55a03dc66b549c20fa3e3901a2526ccc0366fb932e59954426d6

See more details on using hashes here.

Provenance

The following attestation bundles were made for py4ti2-0.5.1-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: dist.yml on alfsan/Py4ti2

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

File details

Details for the file py4ti2-0.5.1-cp312-cp312-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for py4ti2-0.5.1-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 aa517ea09eb97c83e8d4dec0fee8c404237618658f88c6fc0bcac05c110b81c8
MD5 4ed96f9edb58d29d040e2a670c1bb3ea
BLAKE2b-256 81e9541f78930d63fb5bace76c6a04b250a2bb901d37775f3ac1c2881bb53bd6

See more details on using hashes here.

Provenance

The following attestation bundles were made for py4ti2-0.5.1-cp312-cp312-macosx_10_13_x86_64.whl:

Publisher: dist.yml on alfsan/Py4ti2

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

File details

Details for the file py4ti2-0.5.1-cp311-cp311-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for py4ti2-0.5.1-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 0f4f77a0464a02b536072e157fc1659365e98245eb85cb232aaeb91a770332b9
MD5 aa4771c5f66e4529115ba98d3303c575
BLAKE2b-256 8b470336975464a0ea28451e0f7be359ac0ad300932e85972a177fe4b82e1168

See more details on using hashes here.

Provenance

The following attestation bundles were made for py4ti2-0.5.1-cp311-cp311-musllinux_1_2_x86_64.whl:

Publisher: dist.yml on alfsan/Py4ti2

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

File details

Details for the file py4ti2-0.5.1-cp311-cp311-musllinux_1_2_i686.whl.

File metadata

File hashes

Hashes for py4ti2-0.5.1-cp311-cp311-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 51430f01a91de67a75271a7eae0ffdeb6193ef2c836392c17757a5d6973320e5
MD5 112f45760402eec9accc0f2483a4409f
BLAKE2b-256 755472780b184df4dabd6e39f584245ccffbe1c1ba7ac61c0d9c29dc254c77cd

See more details on using hashes here.

Provenance

The following attestation bundles were made for py4ti2-0.5.1-cp311-cp311-musllinux_1_2_i686.whl:

Publisher: dist.yml on alfsan/Py4ti2

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

File details

Details for the file py4ti2-0.5.1-cp311-cp311-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for py4ti2-0.5.1-cp311-cp311-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 0f02b6ae5dc1665ea6813c04719a1e2b46f525cf7afa486fdd4ebf860cb54771
MD5 ac995f5f6ef4b0fcde0d39465fbfa71e
BLAKE2b-256 28d33dd5fc846aaec8d7c3a6714c57db327853dddcae7a8d5103d6c8b8dd0904

See more details on using hashes here.

Provenance

The following attestation bundles were made for py4ti2-0.5.1-cp311-cp311-musllinux_1_2_aarch64.whl:

Publisher: dist.yml on alfsan/Py4ti2

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

File details

Details for the file py4ti2-0.5.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for py4ti2-0.5.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 c343c2b26d6a0d42ef28d5c26a102ae322ae8a2f2ae2ad389e569f9253302ee5
MD5 cf43ff88b5c7e6d35c43caacb96c273f
BLAKE2b-256 dde7f50fe3508ed1b9ee70200eee3cc2224e7451679bfddd920a3640aa44a1ca

See more details on using hashes here.

Provenance

The following attestation bundles were made for py4ti2-0.5.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: dist.yml on alfsan/Py4ti2

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

File details

Details for the file py4ti2-0.5.1-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for py4ti2-0.5.1-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 daae96de5b9627b50f5e25830975d52db3b6a538f8396441c98b6b74c0a4769f
MD5 0c43c4913f6676091162e9ffd1dce16d
BLAKE2b-256 cd0187f67ed0dcb9f03abb68d7e11dde4f75704e9733a69cc26fb38c7ae6c39f

See more details on using hashes here.

Provenance

The following attestation bundles were made for py4ti2-0.5.1-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl:

Publisher: dist.yml on alfsan/Py4ti2

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

File details

Details for the file py4ti2-0.5.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for py4ti2-0.5.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 e16e61cc67ed21a8bd1682e37f14e8651684712878230206d0ff6fde97f53b6b
MD5 05019e527fe2e010f6a6ab1c6a7227d5
BLAKE2b-256 7d426ad4a7442ddffb21b8a551ae0010818729d8f928b8654b159aa2072dbc69

See more details on using hashes here.

Provenance

The following attestation bundles were made for py4ti2-0.5.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: dist.yml on alfsan/Py4ti2

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

File details

Details for the file py4ti2-0.5.1-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for py4ti2-0.5.1-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 361ba915b7c34325621189711147d56f69856ebce282097e04b759e2d2a54cae
MD5 5e297118a5979c8e073ec99f9f9c88f7
BLAKE2b-256 20617f6836e807aebef8e0057c3bff3403f1b98efd763f8b937077012f1c895f

See more details on using hashes here.

Provenance

The following attestation bundles were made for py4ti2-0.5.1-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: dist.yml on alfsan/Py4ti2

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

File details

Details for the file py4ti2-0.5.1-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for py4ti2-0.5.1-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 dceca8409aaa672435fe928a1b65b9f05fde9bad89a508a53e5f86503273cf7f
MD5 445a2653d81258422ed1a1668c46ee84
BLAKE2b-256 97aafb8cbdccee9b9d1eea1a8dedf6a7abc559882a96cacd1b955cb351b0b727

See more details on using hashes here.

Provenance

The following attestation bundles were made for py4ti2-0.5.1-cp311-cp311-macosx_10_9_x86_64.whl:

Publisher: dist.yml on alfsan/Py4ti2

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

File details

Details for the file py4ti2-0.5.1-cp310-cp310-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for py4ti2-0.5.1-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 c44cea454f72d3ea0096f45c54f0d56333ad1edb3ca979e82a3ba7e58a60f64a
MD5 46a2ecfde8cbf03bd79678fc8fd16f5d
BLAKE2b-256 7f7ec13d176ca84a611fe2e74747bb392a0b75a6861e48ef08594c1cae6d3e0c

See more details on using hashes here.

Provenance

The following attestation bundles were made for py4ti2-0.5.1-cp310-cp310-musllinux_1_2_x86_64.whl:

Publisher: dist.yml on alfsan/Py4ti2

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

File details

Details for the file py4ti2-0.5.1-cp310-cp310-musllinux_1_2_i686.whl.

File metadata

File hashes

Hashes for py4ti2-0.5.1-cp310-cp310-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 810b432e9cec41d670496a1521ce44312d52bd731ad970fe1485ae59181704e6
MD5 8a79fc992cbc343b6ef6a475e76cf612
BLAKE2b-256 bccb8d2226911577445a3d784a90022fa468db192496750cebe1b102dc4aae54

See more details on using hashes here.

Provenance

The following attestation bundles were made for py4ti2-0.5.1-cp310-cp310-musllinux_1_2_i686.whl:

Publisher: dist.yml on alfsan/Py4ti2

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

File details

Details for the file py4ti2-0.5.1-cp310-cp310-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for py4ti2-0.5.1-cp310-cp310-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 6ab5ceb127430eee26c289f2ae3e74a1c57286e892485385f66859dc7c3d59e0
MD5 625f8e37c11bbcb1d8469f24e917b5cc
BLAKE2b-256 5e10d2f06c09f74f812e795ab8227858545bc799763e164be77e2e46d41b849e

See more details on using hashes here.

Provenance

The following attestation bundles were made for py4ti2-0.5.1-cp310-cp310-musllinux_1_2_aarch64.whl:

Publisher: dist.yml on alfsan/Py4ti2

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

File details

Details for the file py4ti2-0.5.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for py4ti2-0.5.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 61f3a2a134172b6dc48a7d7276d9c5d929ed5b236a81b0db14aea2de8eabb783
MD5 baabf28f324133de072d8287bfee067e
BLAKE2b-256 d8cec06b40a7305607ea2026063cf96b325f6039e710d2b3ad6b421610a40a37

See more details on using hashes here.

Provenance

The following attestation bundles were made for py4ti2-0.5.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: dist.yml on alfsan/Py4ti2

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

File details

Details for the file py4ti2-0.5.1-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for py4ti2-0.5.1-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 385337c94191c3784809bc0fe123b7746ab1870cd37611e27a1222b085d2f191
MD5 f15808e35184736d569a4302952660f3
BLAKE2b-256 8068b30ff310341c28344613283ddd5d9b2db37b528827950e72ee2d6baf6c8b

See more details on using hashes here.

Provenance

The following attestation bundles were made for py4ti2-0.5.1-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl:

Publisher: dist.yml on alfsan/Py4ti2

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

File details

Details for the file py4ti2-0.5.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for py4ti2-0.5.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 59f3a10315d7bcb924cb6668f06d6ca6928df2c98403d07763154a2911b2f526
MD5 9728be34970948f8cacbfbefae401252
BLAKE2b-256 8527468ede75f46882fb6e647e53259c63cfb852b905175ff95febf6b435cd9b

See more details on using hashes here.

Provenance

The following attestation bundles were made for py4ti2-0.5.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: dist.yml on alfsan/Py4ti2

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

File details

Details for the file py4ti2-0.5.1-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for py4ti2-0.5.1-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 22f2fc8e403a60eb8c73224e17b6b9a58b3d28e1ac7213e8ed0a0e42f6fd0bbc
MD5 960a5778b0839dcab7220e3fe2bb6a38
BLAKE2b-256 26e6ba943ad97e457e861f6d4f7bf97d9f799549990c344067727dca12194c52

See more details on using hashes here.

Provenance

The following attestation bundles were made for py4ti2-0.5.1-cp310-cp310-macosx_11_0_arm64.whl:

Publisher: dist.yml on alfsan/Py4ti2

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

File details

Details for the file py4ti2-0.5.1-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for py4ti2-0.5.1-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 bc132f15d43d123352c380832f6b1d1827c3a9930a70ddbfd635642431954e06
MD5 55a4c27452eccfe74f400f60a0fa5e58
BLAKE2b-256 e0ac90efe6555bc2c866a6833460214c9c2a2be5a00c589d4cf0cc27347f0066

See more details on using hashes here.

Provenance

The following attestation bundles were made for py4ti2-0.5.1-cp310-cp310-macosx_10_9_x86_64.whl:

Publisher: dist.yml on alfsan/Py4ti2

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

File details

Details for the file py4ti2-0.5.1-cp39-cp39-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for py4ti2-0.5.1-cp39-cp39-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 1191756eec219aa8d55721d2d7f31980f702403054ae686fd3008c74e358dbe9
MD5 6e70e98a460b4fa1f9f0cdd24cd2ddb8
BLAKE2b-256 1c0a4e041f35fd01a34a22cbcc719febdacbcc738e48c9560b4a01b4649eb5c0

See more details on using hashes here.

Provenance

The following attestation bundles were made for py4ti2-0.5.1-cp39-cp39-musllinux_1_2_x86_64.whl:

Publisher: dist.yml on alfsan/Py4ti2

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

File details

Details for the file py4ti2-0.5.1-cp39-cp39-musllinux_1_2_i686.whl.

File metadata

  • Download URL: py4ti2-0.5.1-cp39-cp39-musllinux_1_2_i686.whl
  • Upload date:
  • Size: 13.6 MB
  • Tags: CPython 3.9, musllinux: musl 1.2+ i686
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for py4ti2-0.5.1-cp39-cp39-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 773dd4c452604904cf29a4138537a5d8ff6180c0e0f8361d12fe2ad3dcbdf526
MD5 dc5a86d083610806b97f984f6e235cbb
BLAKE2b-256 59ff99e92372678092da41a6a00df44340cfa485288b82b42927233f7ea1a64e

See more details on using hashes here.

Provenance

The following attestation bundles were made for py4ti2-0.5.1-cp39-cp39-musllinux_1_2_i686.whl:

Publisher: dist.yml on alfsan/Py4ti2

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

File details

Details for the file py4ti2-0.5.1-cp39-cp39-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for py4ti2-0.5.1-cp39-cp39-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 bf65d4c708a201c22d57ad9a2704dfc6957f259db83d530a871a59c82cf80d78
MD5 9f5b22997d0eebffe9d0517b7c59557c
BLAKE2b-256 5a6009e413de20a3a5b4dacbcafff7264c189f39685c455dd27638e1fbd95d7f

See more details on using hashes here.

Provenance

The following attestation bundles were made for py4ti2-0.5.1-cp39-cp39-musllinux_1_2_aarch64.whl:

Publisher: dist.yml on alfsan/Py4ti2

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

File details

Details for the file py4ti2-0.5.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for py4ti2-0.5.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 139d97bc521827b02d080364363ca549d6c2d3110981bf606e0c7693c1a606f6
MD5 74b5394e6806ef5f572e9d69865aca88
BLAKE2b-256 ecaf1ff314ba3246a40c489254ee4177b75888549904fdb27cd8702e3862b3b7

See more details on using hashes here.

Provenance

The following attestation bundles were made for py4ti2-0.5.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: dist.yml on alfsan/Py4ti2

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

File details

Details for the file py4ti2-0.5.1-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for py4ti2-0.5.1-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 30d0f834899e6bead72461626524c25e5752fe4836355854a45e77dac5257515
MD5 57d58afe0c919cb87cabf952435b702d
BLAKE2b-256 a93338ebf1d40b00cbfb6a56d3ea4f663c1ebc8735d234558675e642c78bdb4e

See more details on using hashes here.

Provenance

The following attestation bundles were made for py4ti2-0.5.1-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl:

Publisher: dist.yml on alfsan/Py4ti2

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

File details

Details for the file py4ti2-0.5.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for py4ti2-0.5.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 93f4a7a77852c22bb950991f008916c035e8e3706f6a07422891a9c74529aa99
MD5 658338941123b227518e1b0060105519
BLAKE2b-256 f88515850657b3719fedecbca8790679ccca378ffb9ba6dda3d95f620e21fa0f

See more details on using hashes here.

Provenance

The following attestation bundles were made for py4ti2-0.5.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: dist.yml on alfsan/Py4ti2

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

File details

Details for the file py4ti2-0.5.1-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for py4ti2-0.5.1-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d1060758eb4738a594ed249d7b29dd042f09e8012f4b46433d2f0708530d8a91
MD5 ed62b92fa66e100dedaf0bfc0a108264
BLAKE2b-256 78ee568dc6ac35d4cddadfa6615a1d2c1dd5767197b79b0eca00aee3cc30dcf6

See more details on using hashes here.

Provenance

The following attestation bundles were made for py4ti2-0.5.1-cp39-cp39-macosx_11_0_arm64.whl:

Publisher: dist.yml on alfsan/Py4ti2

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

File details

Details for the file py4ti2-0.5.1-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for py4ti2-0.5.1-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 7b9dd3c84f9e10201fd4fe6a26b037b6b94c080167cb0f62ba5f975bb14a10cc
MD5 131ab62107877430f1eeed871499d1c5
BLAKE2b-256 3d2ab5d9e2a45a0ae7e755cc0cb510e293f723c91dc899b0ef97dc956ada278c

See more details on using hashes here.

Provenance

The following attestation bundles were made for py4ti2-0.5.1-cp39-cp39-macosx_10_9_x86_64.whl:

Publisher: dist.yml on alfsan/Py4ti2

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