Skip to main content

A command line tool to help improve the quality of Lean code by converting any "simp" to "simp only".

Project description

Simpleafier

Simpleafier is a command line tool to help improve the quality of Lean code by converting any simp to simp only. This can help make Lean proofs more robust and maintainable by restricting the set of lemmas used by simp.

Requirements

  • Python 3.6+
  • Lean 4
  • lake must be installed and available in your PATH.

Installation

Simpleafier is available on PyPI and can be installed using pip.

python -m pip install Simpleafier

Usage

To convert all simp calls in a Lean file to simp only:

simpleafier path/to/your/file.lean --simponly

simpleafier must be invoked from the root of your lake project. The lean file provided must be compilable without any errors. simpleafier will create a temporary file in the same directory as the original file for processing. At the end of the process, the temporary file will be deleted and the original file will be replaced with the modified version.

[!WARNING] This tool is still under development and does not guarantee perfect results. You may have to manually fix the output in some cases.

You can also pass the --fast flag for significantly faster processing. This will however provide less accurate results and you may have to manually more simp only tactics in the output.

License

This project is licensed under the MIT License.

Contributing

Contributions, bug reports, and feature requests are welcome! Please open an issue or submit a pull request on GitHub.

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

simpleafier-0.1.2.tar.gz (5.5 kB view details)

Uploaded Source

Built Distribution

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

Simpleafier-0.1.2-py3-none-any.whl (5.9 kB view details)

Uploaded Python 3

File details

Details for the file simpleafier-0.1.2.tar.gz.

File metadata

  • Download URL: simpleafier-0.1.2.tar.gz
  • Upload date:
  • Size: 5.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.3

File hashes

Hashes for simpleafier-0.1.2.tar.gz
Algorithm Hash digest
SHA256 8d875b2e37229359c94f8ecb6f935c96f9a439fa2f987e2d7e5f41f7d400c482
MD5 da812bdf7d62f67b8659acdf42e4dad5
BLAKE2b-256 d9d3df600d91d40f1cce5f8a66132a009c82bb9d4816eafba5123dfe769430a6

See more details on using hashes here.

File details

Details for the file Simpleafier-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: Simpleafier-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 5.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.3

File hashes

Hashes for Simpleafier-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 b723d4e482662638a25444bd652d65c4b0e0e79f975e32e5c4ac3b692a9fffb3
MD5 d8818b9de535d4136c61db2bae0ba259
BLAKE2b-256 03dbc16cf6409300659a8d1f32d121e6aae606b1cfc9e38ad0810ceab88a223c

See more details on using hashes here.

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