mapFolding 0.12.2__py3-none-any.whl → 0.13.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- mapFolding/__init__.py +4 -2
- mapFolding/_theSSOT.py +32 -88
- mapFolding/{datatypes.py → _theTypes.py} +25 -3
- mapFolding/basecamp.py +38 -33
- mapFolding/beDRY.py +79 -54
- mapFolding/dataBaskets.py +123 -93
- mapFolding/filesystemToolkit.py +140 -91
- mapFolding/oeis.py +243 -145
- mapFolding/reference/flattened.py +1 -1
- mapFolding/someAssemblyRequired/RecipeJob.py +116 -100
- mapFolding/someAssemblyRequired/__init__.py +40 -15
- mapFolding/someAssemblyRequired/_toolIfThis.py +82 -54
- mapFolding/someAssemblyRequired/_toolkitContainers.py +19 -16
- mapFolding/someAssemblyRequired/getLLVMforNoReason.py +35 -26
- mapFolding/someAssemblyRequired/makeAllModules.py +353 -283
- mapFolding/someAssemblyRequired/makeJobTheorem2Numba.py +83 -84
- mapFolding/someAssemblyRequired/makeJobTheorem2codon.py +256 -0
- mapFolding/someAssemblyRequired/toolkitNumba.py +80 -50
- mapFolding/someAssemblyRequired/transformationTools.py +63 -40
- {tests → mapFolding/tests}/__init__.py +2 -2
- {tests → mapFolding/tests}/conftest.py +232 -63
- {tests → mapFolding/tests}/test_computations.py +58 -18
- {tests → mapFolding/tests}/test_filesystem.py +10 -13
- {tests → mapFolding/tests}/test_oeis.py +5 -18
- {tests → mapFolding/tests}/test_other.py +9 -9
- {tests → mapFolding/tests}/test_tasks.py +7 -9
- {mapfolding-0.12.2.dist-info → mapfolding-0.13.0.dist-info}/METADATA +24 -37
- mapfolding-0.13.0.dist-info/RECORD +54 -0
- {mapfolding-0.12.2.dist-info → mapfolding-0.13.0.dist-info}/top_level.txt +0 -1
- mapfolding-0.12.2.dist-info/RECORD +0 -53
- {mapfolding-0.12.2.dist-info → mapfolding-0.13.0.dist-info}/WHEEL +0 -0
- {mapfolding-0.12.2.dist-info → mapfolding-0.13.0.dist-info}/entry_points.txt +0 -0
- {mapfolding-0.12.2.dist-info → mapfolding-0.13.0.dist-info}/licenses/LICENSE +0 -0
|
@@ -21,16 +21,16 @@ patterns and show how to handle edge cases gracefully. The parametrized tests
|
|
|
21
21
|
provide examples of comprehensive boundary testing that you can adapt for your
|
|
22
22
|
own functions.
|
|
23
23
|
|
|
24
|
-
The integration with external utility modules (
|
|
24
|
+
The integration with external utility modules (hunterMakesPy) shows how to test
|
|
25
25
|
dependencies while maintaining clear separation of concerns.
|
|
26
26
|
"""
|
|
27
27
|
|
|
28
28
|
from collections.abc import Callable
|
|
29
|
+
from hunterMakesPy import intInnit
|
|
30
|
+
from hunterMakesPy.pytestForYourUse import PytestFor_intInnit, PytestFor_oopsieKwargsie
|
|
29
31
|
from mapFolding import getLeavesTotal, setProcessorLimit, validateListDimensions
|
|
30
|
-
from tests.conftest import standardizedEqualToCallableReturn
|
|
32
|
+
from mapFolding.tests.conftest import standardizedEqualToCallableReturn
|
|
31
33
|
from typing import Any, Literal
|
|
32
|
-
from Z0Z_tools import intInnit
|
|
33
|
-
from Z0Z_tools.pytestForYourUse import PytestFor_intInnit, PytestFor_oopsieKwargsie
|
|
34
34
|
import multiprocessing
|
|
35
35
|
import numba
|
|
36
36
|
import pytest
|
|
@@ -60,11 +60,11 @@ import sys
|
|
|
60
60
|
([float('nan')], ValueError, ValueError), # NaN
|
|
61
61
|
([sys.maxsize, sys.maxsize], [sys.maxsize, sys.maxsize], (sys.maxsize, sys.maxsize)), # overflow protection
|
|
62
62
|
(range(3, 7), [3, 4, 5, 6], (3, 4, 5, 6)), # range sequence type
|
|
63
|
-
(tuple([3, 5, 7]), [3, 5, 7], (3, 5, 7)), # tuple sequence type
|
|
63
|
+
(tuple([3, 5, 7]), [3, 5, 7], (3, 5, 7)), # tuple sequence type # noqa: C409
|
|
64
64
|
])
|
|
65
|
-
def test_listDimensionsAsParameter(listDimensions: None | list[
|
|
66
|
-
|
|
67
|
-
|
|
65
|
+
def test_listDimensionsAsParameter(listDimensions: None | list[Any] | range | tuple[Any, ...]
|
|
66
|
+
, expected_intInnit: type[Any] | list[int]
|
|
67
|
+
, expected_validateListDimensions: type[Any] | tuple[int, ...]) -> None:
|
|
68
68
|
"""Test both validateListDimensions and getLeavesTotal with the same inputs."""
|
|
69
69
|
standardizedEqualToCallableReturn(expected_intInnit, intInnit, listDimensions)
|
|
70
70
|
standardizedEqualToCallableReturn(expected_validateListDimensions, validateListDimensions, listDimensions)
|
|
@@ -98,6 +98,6 @@ def testOopsieKwargsie(nameOfTest: str, callablePytest: Callable[[], None]) -> N
|
|
|
98
98
|
(0, numba.get_num_threads()),
|
|
99
99
|
(1, 1),
|
|
100
100
|
])
|
|
101
|
-
def test_setCPUlimitNumba(CPUlimit:
|
|
101
|
+
def test_setCPUlimitNumba(CPUlimit: Literal[4, -2, 0, 1] | None | float | bool, expectedLimit: Any | int) -> None:
|
|
102
102
|
numba.set_num_threads(multiprocessing.cpu_count())
|
|
103
103
|
standardizedEqualToCallableReturn(expectedLimit, setProcessorLimit, CPUlimit, 'numba')
|
|
@@ -26,13 +26,11 @@ compatibility and proper resource isolation between test processes.
|
|
|
26
26
|
"""
|
|
27
27
|
|
|
28
28
|
from collections.abc import Callable
|
|
29
|
+
from hunterMakesPy.pytestForYourUse import PytestFor_defineConcurrencyLimit
|
|
29
30
|
from mapFolding import (
|
|
30
|
-
countFolds, getFoldsTotalKnown, getLeavesTotal, getTaskDivisions, setProcessorLimit,
|
|
31
|
-
|
|
32
|
-
)
|
|
33
|
-
from tests.conftest import standardizedEqualToCallableReturn
|
|
31
|
+
countFolds, getFoldsTotalKnown, getLeavesTotal, getTaskDivisions, setProcessorLimit, validateListDimensions)
|
|
32
|
+
from mapFolding.tests.conftest import standardizedEqualToCallableReturn
|
|
34
33
|
from typing import Literal
|
|
35
|
-
from Z0Z_tools.pytestForYourUse import PytestFor_defineConcurrencyLimit
|
|
36
34
|
import multiprocessing
|
|
37
35
|
import pytest
|
|
38
36
|
|
|
@@ -62,10 +60,10 @@ def test_countFolds_cpuLimitOopsie(mapShapeTestFunctionality: tuple[int, ...], C
|
|
|
62
60
|
(["invalid"], 4, [19, 23], ValueError),
|
|
63
61
|
(20, 4, [3,5], ValueError)
|
|
64
62
|
])
|
|
65
|
-
def test_getTaskDivisions(computationDivisions:
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
63
|
+
def test_getTaskDivisions(computationDivisions: Literal['maximum', 'cpu', 20] | None | list[str]
|
|
64
|
+
, concurrencyLimit: Literal[4]
|
|
65
|
+
, listDimensions: list[int]
|
|
66
|
+
, expectedTaskDivisions: Literal[0, 77, 4] | type[ValueError]) -> None:
|
|
69
67
|
mapShape = validateListDimensions(listDimensions)
|
|
70
68
|
leavesTotal = getLeavesTotal(mapShape)
|
|
71
69
|
standardizedEqualToCallableReturn(expectedTaskDivisions, getTaskDivisions, computationDivisions, concurrencyLimit, leavesTotal)
|
|
@@ -1,53 +1,56 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: mapFolding
|
|
3
|
-
Version: 0.
|
|
4
|
-
Summary: Map folding algorithm with code transformation framework for optimizing numerical computations
|
|
3
|
+
Version: 0.13.0
|
|
4
|
+
Summary: Map folding algorithm with code transformation framework for optimizing numerical computations.
|
|
5
5
|
Author-email: Hunter Hogan <HunterHogan@pm.me>
|
|
6
6
|
License: CC-BY-NC-4.0
|
|
7
7
|
Project-URL: Donate, https://www.patreon.com/integrated
|
|
8
8
|
Project-URL: Homepage, https://github.com/hunterhogan/mapFolding
|
|
9
9
|
Project-URL: Issues, https://github.com/hunterhogan/mapFolding/issues
|
|
10
10
|
Project-URL: Repository, https://github.com/hunterhogan/mapFolding.git
|
|
11
|
-
Keywords: A000136,A001415,A001416,A001417,A001418,A195646,AST manipulation,Numba optimization,OEIS,algorithmic optimization,code generation,code transformation,combinatorics,computational geometry,dataclass transformation,folding pattern enumeration,just-in-time compilation,map folding,performance optimization,source code analysis,stamp folding
|
|
11
|
+
Keywords: A000136,A001415,A001416,A001417,A001418,A195646,AST manipulation,Numba optimization,OEIS,algorithmic optimization,code generation,code transformation,codon optimization,combinatorics,computational geometry,dataclass transformation,folding pattern enumeration,just-in-time compilation,map folding,performance optimization,source code analysis,stamp folding
|
|
12
12
|
Classifier: Development Status :: 4 - Beta
|
|
13
13
|
Classifier: Environment :: Console
|
|
14
14
|
Classifier: Intended Audience :: Developers
|
|
15
15
|
Classifier: Intended Audience :: Education
|
|
16
16
|
Classifier: Intended Audience :: Science/Research
|
|
17
17
|
Classifier: Natural Language :: English
|
|
18
|
+
Classifier: Operating System :: MacOS
|
|
18
19
|
Classifier: Operating System :: OS Independent
|
|
19
|
-
Classifier:
|
|
20
|
-
Classifier: Programming Language :: Python :: 3
|
|
20
|
+
Classifier: Operating System :: POSIX :: Linux
|
|
21
|
+
Classifier: Programming Language :: Python :: 3 :: Only
|
|
21
22
|
Classifier: Programming Language :: Python :: 3.12
|
|
22
23
|
Classifier: Programming Language :: Python :: 3.13
|
|
24
|
+
Classifier: Programming Language :: Python :: 3
|
|
25
|
+
Classifier: Programming Language :: Python :: Implementation :: CPython
|
|
26
|
+
Classifier: Programming Language :: Python
|
|
23
27
|
Classifier: Topic :: Scientific/Engineering :: Information Analysis
|
|
24
28
|
Classifier: Topic :: Scientific/Engineering :: Mathematics
|
|
25
29
|
Classifier: Topic :: Software Development :: Code Generators
|
|
26
30
|
Classifier: Topic :: Software Development :: Compilers
|
|
27
31
|
Classifier: Topic :: Software Development :: Libraries :: Python Modules
|
|
32
|
+
Classifier: Topic :: Software Development :: Pre-processors
|
|
28
33
|
Classifier: Typing :: Typed
|
|
29
34
|
Requires-Python: >=3.12
|
|
30
35
|
Description-Content-Type: text/markdown
|
|
31
36
|
License-File: LICENSE
|
|
32
|
-
Requires-Dist:
|
|
33
|
-
Requires-Dist:
|
|
34
|
-
Requires-Dist: autoflake
|
|
35
|
-
Requires-Dist: numba
|
|
36
|
-
Requires-Dist: numba_progress
|
|
37
|
+
Requires-Dist: astToolkit
|
|
38
|
+
Requires-Dist: hunterMakesPy
|
|
37
39
|
Requires-Dist: numpy
|
|
38
40
|
Requires-Dist: platformdirs
|
|
39
|
-
|
|
40
|
-
Requires-Dist:
|
|
41
|
-
Requires-Dist:
|
|
41
|
+
Provides-Extra: development
|
|
42
|
+
Requires-Dist: mypy; extra == "development"
|
|
43
|
+
Requires-Dist: pyupgrade; extra == "development"
|
|
44
|
+
Requires-Dist: setuptools-scm; extra == "development"
|
|
45
|
+
Provides-Extra: numba
|
|
46
|
+
Requires-Dist: numba; extra == "numba"
|
|
47
|
+
Requires-Dist: numba_progress; extra == "numba"
|
|
42
48
|
Provides-Extra: testing
|
|
43
|
-
Requires-Dist:
|
|
44
|
-
Requires-Dist: pytest; extra == "testing"
|
|
49
|
+
Requires-Dist: numba; extra == "testing"
|
|
45
50
|
Requires-Dist: pytest-cov; extra == "testing"
|
|
46
51
|
Requires-Dist: pytest-env; extra == "testing"
|
|
47
52
|
Requires-Dist: pytest-xdist; extra == "testing"
|
|
48
|
-
Requires-Dist:
|
|
49
|
-
Requires-Dist: ruff; extra == "testing"
|
|
50
|
-
Requires-Dist: setuptools-scm; extra == "testing"
|
|
53
|
+
Requires-Dist: pytest; extra == "testing"
|
|
51
54
|
Dynamic: license-file
|
|
52
55
|
|
|
53
56
|
# mapFolding
|
|
@@ -98,6 +101,7 @@ For larger maps, these calculations require hours or days to complete. A 2×20 s
|
|
|
98
101
|
- **Automatic code generation** that produces standalone, highly optimized computation modules
|
|
99
102
|
- **Dataclass decomposition** to enable Numba compatibility while preserving readable source code
|
|
100
103
|
- **Comprehensive optimization** including dead code elimination, static value embedding, and aggressive compilation settings
|
|
104
|
+
- **codon code generation**: compile map folding computation modules using [Codon](https://docs.exaloop.io/start/install/), enabling high-performance native binaries from Python source code.
|
|
101
105
|
|
|
102
106
|
### Educational Resources
|
|
103
107
|
|
|
@@ -110,35 +114,18 @@ For larger maps, these calculations require hours or days to complete. A 2×20 s
|
|
|
110
114
|
|
|
111
115
|
**Mathematical Research**: Explore folding pattern properties, extend known sequences, or validate theoretical results against computed values.
|
|
112
116
|
|
|
113
|
-
**Algorithm Optimization Learning**: Study a complete transformation
|
|
117
|
+
**Algorithm Optimization Learning**: Study a complete transformation assembly line that converts high-level algorithms into production-ready optimized code.
|
|
114
118
|
|
|
115
119
|
**Performance Computing Education**: Examine techniques for achieving maximum Python performance through Numba integration, AST manipulation, and specialized code generation.
|
|
116
120
|
|
|
117
121
|
**Combinatorial Problem Solving**: Use the framework as a template for optimizing other recursive combinatorial algorithms.
|
|
118
122
|
|
|
119
|
-
## Example Usage
|
|
120
|
-
|
|
121
|
-
```python
|
|
122
|
-
from mapFolding import countFolds
|
|
123
|
-
|
|
124
|
-
# Count folding patterns for a 3×3 square
|
|
125
|
-
result = countFolds([3, 3])
|
|
126
|
-
|
|
127
|
-
# Access OEIS sequences directly
|
|
128
|
-
from mapFolding import oeisIDfor_n
|
|
129
|
-
strip_foldings = oeisIDfor_n('A001415', 6) # 2×6 strip
|
|
130
|
-
|
|
131
|
-
# Generate optimized code for specific dimensions
|
|
132
|
-
from mapFolding.someAssemblyRequired import makeJobTheorem2Numba
|
|
133
|
-
# Creates specialized modules for maximum performance
|
|
134
|
-
```
|
|
135
|
-
|
|
136
123
|
## Repository Structure
|
|
137
124
|
|
|
138
125
|
- `mapFolding/`: Core implementation with modular architecture
|
|
139
126
|
- `reference/`: Historical algorithm implementations and performance studies
|
|
140
127
|
- `someAssemblyRequired/`: AST transformation framework
|
|
141
|
-
- `tests/`: Comprehensive validation suite
|
|
128
|
+
- `mapFolding/tests/`: Comprehensive validation suite
|
|
142
129
|
- `jobs/`: Generated optimized modules for specific calculations
|
|
143
130
|
|
|
144
131
|
## Performance Characteristics
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
mapFolding/__init__.py,sha256=dl3HR2zoipFo0UstEJn3iWTkXlA_XeCQw_zfw2fk4qE,3643
|
|
2
|
+
mapFolding/_theSSOT.py,sha256=dloMAsIOhUnIE7-SFJbQYyl6IYo7CdCAyBZPqMuckko,3380
|
|
3
|
+
mapFolding/_theTypes.py,sha256=rT8UTm-I_haMQlUGaJ4yvqIMt6FUOvWH-VUYNud6UN4,5495
|
|
4
|
+
mapFolding/basecamp.py,sha256=K-h8rBb-lREOe8DAdWLx5Uqbl5eaPjj8lRLk5HIVw40,9454
|
|
5
|
+
mapFolding/beDRY.py,sha256=Iikg3U4zQjx6JOKL62R7Tb0CpOm3JkPSIewAByco9GA,14777
|
|
6
|
+
mapFolding/daoOfMapFolding.py,sha256=ncTIiBfTsM8SNVx9qefZ0bBcBtviWLSk4iPv3Z9nGiE,5442
|
|
7
|
+
mapFolding/dataBaskets.py,sha256=zTpRoGDEysq7ekmgiKCtCV6NOBGzfgs_XMjVngvg3ic,14566
|
|
8
|
+
mapFolding/filesystemToolkit.py,sha256=Ex5tyugRQurXIgUNVtkQYfWMq8fM4e-izX01MBXU5_8,11006
|
|
9
|
+
mapFolding/oeis.py,sha256=jJjTsngcUNTY0M8et1InbnpP2csglQilFidyVCCm0Ts,23031
|
|
10
|
+
mapFolding/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
11
|
+
mapFolding/reference/__init__.py,sha256=GKcSgYE49NcTISx-JZbELXyq-eRkMeTL5g4DXInWFw0,2206
|
|
12
|
+
mapFolding/reference/flattened.py,sha256=0eHgLFIeIeVUsI5zF5oSy5iWYrjOMzxr7KjDxiTe01k,16078
|
|
13
|
+
mapFolding/reference/hunterNumba.py,sha256=iLfyqwGdAh6c5GbapnKsWhAsNsR3O-fyGGHAdohluLw,7258
|
|
14
|
+
mapFolding/reference/irvineJavaPort.py,sha256=UEfIX4QbPLl5jnyfYIyX5YRR3_rYvPUikK8jLehsFko,4076
|
|
15
|
+
mapFolding/reference/jaxCount.py,sha256=TuDNKOnyhQfuixKmIxO9Algv7dvy7KMGhgsV3h96FGE,14853
|
|
16
|
+
mapFolding/reference/lunnonNumpy.py,sha256=mMgrgbrBpe4nmo72ThEI-MGH0OwEHmfMPczSXHp2qKo,4357
|
|
17
|
+
mapFolding/reference/lunnonWhile.py,sha256=ZL8GAQtPs5nJZSgoDl5USrLSS_zs03y98y1Z9E4jOmQ,3799
|
|
18
|
+
mapFolding/reference/rotatedEntryPoint.py,sha256=5ughpKUT2JQhoAKgoDUdYNjgWQYPGV8v-7dWEAdDmfE,10274
|
|
19
|
+
mapFolding/reference/total_countPlus1vsPlusN.py,sha256=yJZAVLVdoXqHag2_N6_6CT-Q6HXBgRro-eny93-Rlpw,9307
|
|
20
|
+
mapFolding/reference/jobsCompleted/__init__.py,sha256=TU93ZGUW1xEkT6d9mQFn_rp5DvRy0ZslEB2Q6MF5ZDc,2596
|
|
21
|
+
mapFolding/reference/jobsCompleted/[2x19]/p2x19.py,sha256=_tvYtfzMWVo2VtUbIAieoscb4N8FFflgTdW4-ljBUuA,19626
|
|
22
|
+
mapFolding/reference/jobsCompleted/p2x19/p2x19.py,sha256=eZEw4Me4ocTt6VXoK2-Sbd5SowZtxRIbN9dZmc7OCVg,6395
|
|
23
|
+
mapFolding/someAssemblyRequired/RecipeJob.py,sha256=Hd1DUMZqfqlQz4jj3eTir5e_xvFW7_O0ILWmNsiQWV8,9913
|
|
24
|
+
mapFolding/someAssemblyRequired/__init__.py,sha256=UNDh6O86jT5ywlw9LgeWsUHwOfNvoMJRDAzYXbwCbeM,5779
|
|
25
|
+
mapFolding/someAssemblyRequired/_toolIfThis.py,sha256=VDZC10Xo3E1Y5n6FmaBBbOBR-rinV9DFkpgw8zrDyzg,6339
|
|
26
|
+
mapFolding/someAssemblyRequired/_toolkitContainers.py,sha256=ymqEWH5oO_gNjvRjpRELCzahXfU74fhHZspnv6GGLiE,13680
|
|
27
|
+
mapFolding/someAssemblyRequired/getLLVMforNoReason.py,sha256=tY0-2K0BFkwLAAjSrFJLPoG8CevDHOFc3OH3TxXANzg,2806
|
|
28
|
+
mapFolding/someAssemblyRequired/infoBooth.py,sha256=GWiqnHbqk7te_pvVuk4G_gbFa_W2aeSx19w4pakvqfM,2300
|
|
29
|
+
mapFolding/someAssemblyRequired/makeAllModules.py,sha256=wbZXlKd0dOkLYHGM_I7VYH9r9yZfS6HDBJ702nggDxM,44353
|
|
30
|
+
mapFolding/someAssemblyRequired/makeJobTheorem2Numba.py,sha256=ZSplXKPwRAbvMA2bvEGcXFdgvuYGBk3Ncxajzk-Zy0A,17170
|
|
31
|
+
mapFolding/someAssemblyRequired/makeJobTheorem2codon.py,sha256=8Epqg6eLLNWr3wvg9sdwv3WILMUtbR-lha8-OZXU-I8,12714
|
|
32
|
+
mapFolding/someAssemblyRequired/toolkitNumba.py,sha256=Wg5CWe2UDeR1Y22loxbcRbPOQn1yHFlD6s4uYPGCYwM,14860
|
|
33
|
+
mapFolding/someAssemblyRequired/transformationTools.py,sha256=nPGZsvb5GquaCCxdDh_XzNIZYSiVJpWKd7wfhfRvxnk,11512
|
|
34
|
+
mapFolding/syntheticModules/__init__.py,sha256=evVFqhCGa-WZKDiLcnQWjs-Bj34eRnfSLqz_d7dFYZY,83
|
|
35
|
+
mapFolding/syntheticModules/countParallel.py,sha256=OK_IB9w4yy9MMAiGvkei5ezPm_00v2nYjPrQZ_IlELg,7733
|
|
36
|
+
mapFolding/syntheticModules/daoOfMapFolding.py,sha256=cfWPABtXyCxJ0BwPI7rhfLh_2UYV_XKAL8lJ4GLNXaQ,5896
|
|
37
|
+
mapFolding/syntheticModules/dataPacking.py,sha256=m_eOZ7sMXIQ9jY5EvC3qgitQTY60n6rksy0ACMJOIC8,2292
|
|
38
|
+
mapFolding/syntheticModules/initializeCount.py,sha256=nWSlJMMfIM3DvZxMn6ISQusUJqRYAjKQyLF5hwLEdBQ,3119
|
|
39
|
+
mapFolding/syntheticModules/theorem2.py,sha256=9jrbZNNX4BWYZW1S0JjvRY2k7RU7I1RNUMV7JdCt1ZY,3017
|
|
40
|
+
mapFolding/syntheticModules/theorem2Numba.py,sha256=-cKjNyxgUMFhEyFVs0VJ7hw4LfrV0WSNK5tPYbQ1oNU,3369
|
|
41
|
+
mapFolding/syntheticModules/theorem2Trimmed.py,sha256=DHW3NxBdtABQYBKm2WRvfQ5kzc2_UwGI2h4ePuYEJoM,2685
|
|
42
|
+
mapFolding/tests/__init__.py,sha256=QVCHSMFVvTxV3mAyYOLkMFAFyBJ514zdoVnDmpBJnTo,1336
|
|
43
|
+
mapFolding/tests/conftest.py,sha256=f0JB_e5zbpusGLWVJbtYKug9oRm0M8c-GFAp9mhhs9Q,14590
|
|
44
|
+
mapFolding/tests/test_computations.py,sha256=7avZjmYjsgJAcTEzQFj3Td1N9q75ANdCRnNvOesFjiw,6535
|
|
45
|
+
mapFolding/tests/test_filesystem.py,sha256=0rYQ62f4e3HOoymXrxDWbqNEBJQ7DGN8RUOMI84tE2Q,3892
|
|
46
|
+
mapFolding/tests/test_oeis.py,sha256=Sn3jpg6YQJMtAAc1W8Ic2PTbTwSckzBdJnkN1rz_O6w,5834
|
|
47
|
+
mapFolding/tests/test_other.py,sha256=ScBiJ78LnyAaW-RhxcouX6Xw10wgpSdqfvT4LO3WjnQ,4766
|
|
48
|
+
mapFolding/tests/test_tasks.py,sha256=_pr9JRWjjNKA7sww70XvkJJdGPruBVzubM63RmD_Du0,4013
|
|
49
|
+
mapfolding-0.13.0.dist-info/licenses/LICENSE,sha256=NxH5Y8BdC-gNU-WSMwim3uMbID2iNDXJz7fHtuTdXhk,19346
|
|
50
|
+
mapfolding-0.13.0.dist-info/METADATA,sha256=S-_yPqTdfIVDdYBVeuUV80YHWW54rfMZiOGXiyJFjQ0,8040
|
|
51
|
+
mapfolding-0.13.0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
52
|
+
mapfolding-0.13.0.dist-info/entry_points.txt,sha256=F3OUeZR1XDTpoH7k3wXuRb3KF_kXTTeYhu5AGK1SiOQ,146
|
|
53
|
+
mapfolding-0.13.0.dist-info/top_level.txt,sha256=aG3bjFBoxxuaV3Iu1wZAd241Ubs3cdaJtKYBQBDIjsg,11
|
|
54
|
+
mapfolding-0.13.0.dist-info/RECORD,,
|
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
mapFolding/__init__.py,sha256=wXJ0dhpZUfiXPvh4RQ11FKDJEzV5OYUs8USKFaEXqQ0,3653
|
|
2
|
-
mapFolding/_theSSOT.py,sha256=JNoyZ86gym5z0DS2kruidDJ3zdYAShuqnCLJ85t2TVM,6168
|
|
3
|
-
mapFolding/basecamp.py,sha256=6jLA_41BB86CJD6E3vLr-SV0BiGEfwzcfeOLgujlyZM,9008
|
|
4
|
-
mapFolding/beDRY.py,sha256=S0HO2bX8afDR6mV0xyIsEGBeG4-pRC3YH9jMAWSHpCM,13891
|
|
5
|
-
mapFolding/daoOfMapFolding.py,sha256=ncTIiBfTsM8SNVx9qefZ0bBcBtviWLSk4iPv3Z9nGiE,5442
|
|
6
|
-
mapFolding/dataBaskets.py,sha256=oO9f0PUf3AdNguaKEYnBpk31VhK8NPFMK5GiBSDVFIw,13101
|
|
7
|
-
mapFolding/datatypes.py,sha256=5BLjUv5S6A_0Q23erRGIN8MMm2WD3BVKnH2gfEdZlcs,5189
|
|
8
|
-
mapFolding/filesystemToolkit.py,sha256=ACiNUE7L5MKjllBbUVvzdgYdILXGiOVyl81fDGPwaNc,10254
|
|
9
|
-
mapFolding/oeis.py,sha256=hf3AgQOiFf2Gs0WbS3JYIVNgfPfVlp0T0ZLDvfvi4Lg,21978
|
|
10
|
-
mapFolding/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
11
|
-
mapFolding/reference/__init__.py,sha256=GKcSgYE49NcTISx-JZbELXyq-eRkMeTL5g4DXInWFw0,2206
|
|
12
|
-
mapFolding/reference/flattened.py,sha256=QK1xG9SllqCoi68e86Hyl9d9ATUAAFNpTQI-3zmcp5I,16072
|
|
13
|
-
mapFolding/reference/hunterNumba.py,sha256=iLfyqwGdAh6c5GbapnKsWhAsNsR3O-fyGGHAdohluLw,7258
|
|
14
|
-
mapFolding/reference/irvineJavaPort.py,sha256=UEfIX4QbPLl5jnyfYIyX5YRR3_rYvPUikK8jLehsFko,4076
|
|
15
|
-
mapFolding/reference/jaxCount.py,sha256=TuDNKOnyhQfuixKmIxO9Algv7dvy7KMGhgsV3h96FGE,14853
|
|
16
|
-
mapFolding/reference/lunnonNumpy.py,sha256=mMgrgbrBpe4nmo72ThEI-MGH0OwEHmfMPczSXHp2qKo,4357
|
|
17
|
-
mapFolding/reference/lunnonWhile.py,sha256=ZL8GAQtPs5nJZSgoDl5USrLSS_zs03y98y1Z9E4jOmQ,3799
|
|
18
|
-
mapFolding/reference/rotatedEntryPoint.py,sha256=5ughpKUT2JQhoAKgoDUdYNjgWQYPGV8v-7dWEAdDmfE,10274
|
|
19
|
-
mapFolding/reference/total_countPlus1vsPlusN.py,sha256=yJZAVLVdoXqHag2_N6_6CT-Q6HXBgRro-eny93-Rlpw,9307
|
|
20
|
-
mapFolding/reference/jobsCompleted/__init__.py,sha256=TU93ZGUW1xEkT6d9mQFn_rp5DvRy0ZslEB2Q6MF5ZDc,2596
|
|
21
|
-
mapFolding/reference/jobsCompleted/[2x19]/p2x19.py,sha256=_tvYtfzMWVo2VtUbIAieoscb4N8FFflgTdW4-ljBUuA,19626
|
|
22
|
-
mapFolding/reference/jobsCompleted/p2x19/p2x19.py,sha256=eZEw4Me4ocTt6VXoK2-Sbd5SowZtxRIbN9dZmc7OCVg,6395
|
|
23
|
-
mapFolding/someAssemblyRequired/RecipeJob.py,sha256=kFn27dMWg1k5q5RsU2kw5zXT3TRmUzYHE9EIUdAGvfM,10641
|
|
24
|
-
mapFolding/someAssemblyRequired/__init__.py,sha256=F3MMU6QciBqL8G4cjn_ELCHEnpjytorUQn-vG9t696Q,5769
|
|
25
|
-
mapFolding/someAssemblyRequired/_toolIfThis.py,sha256=mqIZQ_HLkR-5z3_gIghIeQ_WY1XkjVHp9iC1TrPiI9Y,5923
|
|
26
|
-
mapFolding/someAssemblyRequired/_toolkitContainers.py,sha256=ZAwfH6yRunUzSVzl2VZDvJD7lyN7WL6Md7F6Q7suW30,13682
|
|
27
|
-
mapFolding/someAssemblyRequired/getLLVMforNoReason.py,sha256=9RPU6vK_eUg64GtVFI_nZnvUryXw8gfHJs9NyDYHIvg,2745
|
|
28
|
-
mapFolding/someAssemblyRequired/infoBooth.py,sha256=GWiqnHbqk7te_pvVuk4G_gbFa_W2aeSx19w4pakvqfM,2300
|
|
29
|
-
mapFolding/someAssemblyRequired/makeAllModules.py,sha256=RC4FmWyue2reiPttfLEtc7kFGYgp7dR4qBHnOREuYpo,42770
|
|
30
|
-
mapFolding/someAssemblyRequired/makeJobTheorem2Numba.py,sha256=658vw0JZk-9dMIE_18Op8xY1vxwoLc2K-TQaslGtw58,18372
|
|
31
|
-
mapFolding/someAssemblyRequired/toolkitNumba.py,sha256=nHLkGZ9P0p3NJkiqJFTxej9z0H1BvWWvmSN27rTExqU,14563
|
|
32
|
-
mapFolding/someAssemblyRequired/transformationTools.py,sha256=gveR9Gqgo3JJhMXtHIFTyu0RbgwoTkH-5X7dwiA4jpM,11476
|
|
33
|
-
mapFolding/syntheticModules/__init__.py,sha256=evVFqhCGa-WZKDiLcnQWjs-Bj34eRnfSLqz_d7dFYZY,83
|
|
34
|
-
mapFolding/syntheticModules/countParallel.py,sha256=OK_IB9w4yy9MMAiGvkei5ezPm_00v2nYjPrQZ_IlELg,7733
|
|
35
|
-
mapFolding/syntheticModules/daoOfMapFolding.py,sha256=cfWPABtXyCxJ0BwPI7rhfLh_2UYV_XKAL8lJ4GLNXaQ,5896
|
|
36
|
-
mapFolding/syntheticModules/dataPacking.py,sha256=m_eOZ7sMXIQ9jY5EvC3qgitQTY60n6rksy0ACMJOIC8,2292
|
|
37
|
-
mapFolding/syntheticModules/initializeCount.py,sha256=nWSlJMMfIM3DvZxMn6ISQusUJqRYAjKQyLF5hwLEdBQ,3119
|
|
38
|
-
mapFolding/syntheticModules/theorem2.py,sha256=9jrbZNNX4BWYZW1S0JjvRY2k7RU7I1RNUMV7JdCt1ZY,3017
|
|
39
|
-
mapFolding/syntheticModules/theorem2Numba.py,sha256=-cKjNyxgUMFhEyFVs0VJ7hw4LfrV0WSNK5tPYbQ1oNU,3369
|
|
40
|
-
mapFolding/syntheticModules/theorem2Trimmed.py,sha256=DHW3NxBdtABQYBKm2WRvfQ5kzc2_UwGI2h4ePuYEJoM,2685
|
|
41
|
-
mapfolding-0.12.2.dist-info/licenses/LICENSE,sha256=NxH5Y8BdC-gNU-WSMwim3uMbID2iNDXJz7fHtuTdXhk,19346
|
|
42
|
-
tests/__init__.py,sha256=5RdiZYAl8nPIM1sxB_D0CsN6J8173LOZ0hpR3geTHAU,1312
|
|
43
|
-
tests/conftest.py,sha256=eBo0IIm98402hl_XW5nT06cUvW25ciItv1_zZdM152E,11126
|
|
44
|
-
tests/test_computations.py,sha256=NDOT1kUdY2w-hbxdGhUsr4N4yFjwJW30AnfrDiYYKM0,5184
|
|
45
|
-
tests/test_filesystem.py,sha256=IXTeyfifXe6vLizCo8BiSn5Yx9DEKYEc_hoJRKhQFNk,3899
|
|
46
|
-
tests/test_oeis.py,sha256=KjG10lH5vVLPG5bicdsVt373QeMrHirFJUpO1BR_sos,6272
|
|
47
|
-
tests/test_other.py,sha256=a42U3KB5IlrQNj63nRyg-KLdvF1QTH2aAsH9JpQnl3Q,4933
|
|
48
|
-
tests/test_tasks.py,sha256=-OrpXAlkPMP4pRCW-wAYPd_olf3L_a9dMsJZCOlSUNE,4041
|
|
49
|
-
mapfolding-0.12.2.dist-info/METADATA,sha256=6URs4ApQHjsH3bN7QniWEvCBioRrz0y0h6q9qI6YI28,7977
|
|
50
|
-
mapfolding-0.12.2.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
51
|
-
mapfolding-0.12.2.dist-info/entry_points.txt,sha256=F3OUeZR1XDTpoH7k3wXuRb3KF_kXTTeYhu5AGK1SiOQ,146
|
|
52
|
-
mapfolding-0.12.2.dist-info/top_level.txt,sha256=1gP2vFaqPwHujGwb3UjtMlLEGN-943VSYFR7V4gDqW8,17
|
|
53
|
-
mapfolding-0.12.2.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|