Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/logic-lang/logic
structural logic based on equivalence graphs
https://github.com/logic-lang/logic
Last synced: 1 day ago
JSON representation
structural logic based on equivalence graphs
- Host: GitHub
- URL: https://github.com/logic-lang/logic
- Owner: logic-lang
- License: mit
- Created: 2023-01-24T18:42:12.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2023-06-15T13:29:28.000Z (over 1 year ago)
- Last Synced: 2024-05-22T21:33:56.997Z (6 months ago)
- Language: Rust
- Size: 17.6 KB
- Stars: 5
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Funding: .github/funding.yml
- License: LICENSE
- Support: .github/support.md
Awesome Lists containing this project
- awesome-rust-formalized-reasoning - logic-lang - lang) - structural logic based on equivalence graphs. (Projects / Libraries)
README
![Example](https://logic-lang.github.io/assets/img/logic-logo.png)
[![License](https://img.shields.io/github/license/logic-lang/logic?color=informational&style=flat-square)](https://github.com/logic-lang/logic/blob/master/LICENSE)
[![Crate](https://img.shields.io/crates/v/logic-lang?style=flat-square)](https://crates.io/crates/logic-lang)
[![Docs](https://img.shields.io/docsrs/logic-lang?style=flat-square&logo=docsdotrs)](https://docs.rs/logic-lang)
[![Build](https://img.shields.io/github/actions/workflow/status/logic-lang/logic/ci.yml?branch=main&style=flat-square&logo=githubactions)](https://github.com/logic-lang/logic/actions)---
Logic is a modern *structural logic* library based on equivalence graphs.
Logic can prove equivalences and optimize expressions according to some criterion.
It allows defining a **(term-based) language** as an abstract syntax tree (AST) associated with the **rewriting rules** expressing its *equivalence relations*.
Applying rules is automatically performed by a three-stages process based on different "intermediate representations (IRs)".---
> **Note**: this is an exploratory project.
## Getting started
An extensive tutorial/book is planned. Until then, you can still read the [documentation](https://docs.rs/logic-lang) for the latest version or browse
the sources.It is recommanded to use *nightly* Rust but Logic should build just fine on *stable* (MSRV 1.69).
The standard cargo `fmt`, `clippy`, `test` and `bench` workflow is available.#### Try the [web demo](https://logic-lang.github.io/) running on WebAssembly.
* [Paper](#)
* [Tutorial](#tutorial)
* [Apps](#apps)
* [Citing](#citing)