# BPpy: Behavioral Programming In Python
A Python implementation for the Behavioral Programming paradigm

## Installation
You can install ``bppy`` with pip:

```shell
pip install bppy
```

This does not include dependencies for gym integration. To install ``bppy`` with gym integration, use:

```shell
pip install bppy[gym]
```

If installation is not working, you can try upgrading pip:

```shell
pip install --upgrade pip
```

before submitting an issue.

In case you want to get started instantly and use ``bppy`` (with ``pynusmv`` and all dependencies) without installing it, you can use the [docker image](https://hub.docker.com/r/tomyaacov/bppy-docker):

```shell
docker run -it tomyaacov/bppy-docker
```


## Documentation
* [BPpy documentation](https://bppy.readthedocs.io/en/latest/)
* General introduction to Behavioral Programming can be found in [this](https://bpjs.readthedocs.io/en/develop/) BPjs tutorial and others

## Citing BPpy
To cite this repository in publications:
```
@article{yaacov_bppy_2023,
title = {BPpy: Behavioral programming in Python},
journal = {SoftwareX},
volume = {24},
pages = {101556},
year = {2023},
issn = {2352-7110},
doi = {https://doi.org/10.1016/j.softx.2023.101556},
url = {https://www.sciencedirect.com/science/article/pii/S2352711023002522},
author = {Tom Yaacov}
}
```
