Skip to main content

Map folding, meanders, stamp folding, semi-meanders. Experiment with algorithm transformations, and analyze computational states.

Project description

mapFolding

pip install mapFolding

Map folding, meanders, stamp folding, semi-meanders. Experiment with algorithm transformations and code optimization.

I don't know how to write a README.md. Furthermore, the package used to be focused on multidimensional map folding and tools for transforming the algorithm to experiment with optimizations or to explore the algorithm.

First, the tools for transforming algorithms became far more sophisticated and powerful than this package. So I moved them to astToolkit. But those got so sophisticated, that I create more than half of that package through another layer of meta-programming: astToolFactory.

Second, when I finally understood the connections between map folding and meanders, I added meanders to this package, and applied my transformation tools to that algorithm.

I used a weaker form of this package to compute new terms for OEIS A001415, "Number of ways of folding a 2 X n strip of stamps." There are cool and powerful tools in here, but as of 2025 September 17, I am dissatisfied with the organization and documentation. It's annoying.

Finding stuff

  1. At the moment, almost every algorithm version eventually runs through "mapFolding/basecamp.py", so it's sort of an overview and you can work backwards to find more details.
  2. The directory "mapFolding/algorithms" only has "handmade" algorithms. Therefore, most logic for most computations is based on something in that directory.
  3. The directory "mapFolding/syntheticModules" has code that is generated by the transformation tools.
  4. Transformation functions are in "mapFolding/someAssemblyRequired."
  5. The directory "mapFolding/reference" has "reference" materials.
  6. "mapFolding/tests" has the tests, and I have tried to make it easy for you to add your versions of the algorithms to the tests. Is it actually easy? I'll say it this way: if you were to create your own subclass of ast.AST it would be impossible for you to add your subclass to all of the ast module tests with just a few lines of code. In contrast, it is possible to fully test your algorithm with my tests by adding between 3 and 25 lines of code. So, yeah, it's easy.

Math and programming

I'm not a mathematician. I don't have training in or professional experience as a programmer. I'm not stupid: I'm ignorant.

My recovery

Static Badge YouTube Channel Subscribers

CC-BY-NC-4.0

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

mapfolding-0.18.2.tar.gz (42.0 MB view details)

Uploaded Source

Built Distribution

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

mapfolding-0.18.2-py3-none-any.whl (42.5 MB view details)

Uploaded Python 3

File details

Details for the file mapfolding-0.18.2.tar.gz.

File metadata

  • Download URL: mapfolding-0.18.2.tar.gz
  • Upload date:
  • Size: 42.0 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for mapfolding-0.18.2.tar.gz
Algorithm Hash digest
SHA256 e51554abc3193afcfda791e8bfb4cd381c75a7d14e16b7910a783ea21b88b0f2
MD5 4072adfc8613eb1a4ed0616c567b3ccd
BLAKE2b-256 726922e5822403cb8f86fb62be6efff006e7f3c55c0e879e7205f29b13a2dfc9

See more details on using hashes here.

Provenance

The following attestation bundles were made for mapfolding-0.18.2.tar.gz:

Publisher: pypiRelease.yml on hunterhogan/mapFolding

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

File details

Details for the file mapfolding-0.18.2-py3-none-any.whl.

File metadata

  • Download URL: mapfolding-0.18.2-py3-none-any.whl
  • Upload date:
  • Size: 42.5 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for mapfolding-0.18.2-py3-none-any.whl
Algorithm Hash digest
SHA256 a8d2e5df80a76294b9d03afed0fc7192753cf7b2af8021a823b94726ed996e74
MD5 41e58e6347f3ce8a9f0d8319931af57e
BLAKE2b-256 b52b5e2f13d216ec829bc556d8ce7ae99dce6f8daf4cc6984e84b6b37daf41f0

See more details on using hashes here.

Provenance

The following attestation bundles were made for mapfolding-0.18.2-py3-none-any.whl:

Publisher: pypiRelease.yml on hunterhogan/mapFolding

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