Skip to content

A work-in-progress Lean 4 binding to GiNaC

License

MIT, GPL-2.0 licenses found

Licenses found

MIT
LICENSE
GPL-2.0
COPYING
Notifications You must be signed in to change notification settings

utensil/ginac-lean

Folders and files

NameName
Last commit message
Last commit date
Sep 27, 2023
Jun 14, 2024
Jun 14, 2024
Sep 27, 2023
Sep 27, 2023
Oct 16, 2023
Sep 27, 2023
Jun 14, 2024
Sep 27, 2023
Sep 27, 2023
Sep 27, 2023
Jun 13, 2024
Sep 27, 2023
Sep 27, 2023
Sep 27, 2023
Sep 27, 2023
Oct 9, 2024
Oct 9, 2024
Oct 9, 2024
Jun 7, 2024
Jun 12, 2024
Jun 7, 2024

Repository files navigation

GinacLean

build On Reservoir

A work-in-progress Lean 4 binding to GiNaC, which is an open-source symbolic computation library in C++, it has extensive algebraic capabilities, and has been specifically developed to be an engine for high energy physics applications.

See this doc to learn more.

Status

The work started on Sep 18, 2023, and it's still at an early stage, mostly a POC, and nowhere near a complete binding. It's encouraged to draw inspiration from this project, but it's not recommended to use it in production.

This project is still on my thoughts, and I'm still trying to figure out the best way to proceed.

If one is interested in using GiNaC in Lean, discussions are welcome (by opening an issue, or pinging me on Lean Zulip), including about creating other bindings.

Development

lake -R build
# Follow https://pre-commit.com/ to install pre-commit
# pyenv shell 3.11
# brew install pre-commit
# pre-commit install

License

TL;DR: Practically, if one uses GinacLean to use GiNaC, one must comply with the GPL license. But this repository itself only contains MIT licensed code.

GinacLean itself is licensed under the MIT license, see LICENSE for details. It means any code at rest in this repository can be considered as MIT licensed.

But GiNaC is licensed under the GPL license (version 2 or later), see COPYING for details. When built or at runtime, GinacLean interacts with the GPL licensed GiNaC library, thus the GPL license applies to all of GinacLean. See this answer on SE for more details.

GiNaC depends on CLN which is also GPL licensed. The discussion above applies to CLN as well.

One subtlety is that in releases of GinacLean, GiNaC/CLN might be included (thus redistributed), so any such release should be considered as GPL licensed. But the plan is to make no such releases.

About

A work-in-progress Lean 4 binding to GiNaC

Topics

Resources

License

MIT, GPL-2.0 licenses found

Licenses found

MIT
LICENSE
GPL-2.0
COPYING

Stars

Watchers

Forks

Packages

No packages published