Skip to content
This repository has been archived by the owner on Jul 28, 2023. It is now read-only.

Commit

Permalink
Removed the boolean layer
Browse files Browse the repository at this point in the history
  • Loading branch information
christofsteel committed Jun 28, 2023
1 parent 1fcfa92 commit 44728ef
Show file tree
Hide file tree
Showing 9 changed files with 212 additions and 926 deletions.
28 changes: 4 additions & 24 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,6 @@
# (Boolean enhanced) Combinatory Logic Synthesis in Python

This repository is a fork of [cls-python](https://github.com/cls-python/cls-python), that extends
the query language of CLS to Boolean queries.

**Note:** This does not affect the specification language for combinators in your repository.
The types of combinators are still limited to intersection types.
# (Vanilla) Combinatory Logic Synthesis in Python

This repository is a fork of [cls-python](https://github.com/cls-python/cls-python). Advancements made to the core system from the boolean fork (see main branch) are backported here.
## Installation

Since this project does not need any additional dependencies, you can simply clone this repository to a location, where your
Expand All @@ -15,30 +10,15 @@ code can access it. In case you *want* to install it, you can do this by either

in the cloned repository, or

pip install git+https://github.com/tudo-seal/bcls-python
pip install git+https://github.com/tudo-seal/bcls-python@vanilla

without the need to clone it beforehand.

## Running the examples

Examples are stored in the `tests/` directory. Currently the following examples are provided:

- `example_1.py`, this is a simple example with three combinators, `X`, `Y` and `F`
- `example_CC.py`, this is another simple example with only one combinator `C`

If you have cloned the repository, you can run the examples from the projects root with

python -m tests.example_1

and

python -m tests.example_CC

## Usage

A *repository* is a `dict`, that maps Combinators to `Type`s.
A *combinator* can be any `Hashable` object. Special treatment occurs, if it is `Callable`.
A *query* is a `BooleanTerm` over `Types`
A *query* is a `Type`

Once you specified a repository `gamma` and a query `q`, you can start the inhabitation procedure by

Expand Down
274 changes: 0 additions & 274 deletions bcls/bfcl.py

This file was deleted.

Loading

0 comments on commit 44728ef

Please sign in to comment.