KenyC / Exh

Computes innocently excludable and includable sets of alternatives

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Exh

You can find a Jupyter notebook tutorial Tutorial.ipynb under examples/tutorial/ to get a headstart on using the library.

Description

Exh can represent first-order logic formula and can compute the result of applying innocent exclusion exahsutification to the formulas. Internally, it uses the algorithm suggested in Spector (2016), which is faster than simply applying the definition in Fox (2007).

Installation

The package is available on PyPI. Run the following to install it:

pip install exh

Features

  • Innocent inclusion, innocent exclusion of propositional formulas
  • Computing maximal consistent sets of formulas
  • Quantifiers
  • Recursively exhaustified formulas (free choice example in tutorial)

Caveats

  • The problem of finding maximally consistent sets of formulas is computationally hard. The algorithm scales up poorly if the number of independent variables is big. It however handles large numbers of alternatives well enough. However, most real-life examples run fast enough.

Dependencies

  • Numpy > 1.14
  • Jupyter > 1.0.0

About

Computes innocently excludable and includable sets of alternatives

License:MIT License


Languages

Language:Python 99.9%Language:Makefile 0.1%