https://github.com/kumbong/quinemccluskey
A robust, insanely fast and stupidly easy to use CLI tool for minimizing circuits via the Quine Mccluskey method.
https://github.com/kumbong/quinemccluskey
digital-electronics python3 quine-mccluskey-algorithm
Last synced: 12 months ago
JSON representation
A robust, insanely fast and stupidly easy to use CLI tool for minimizing circuits via the Quine Mccluskey method.
- Host: GitHub
- URL: https://github.com/kumbong/quinemccluskey
- Owner: Kumbong
- License: mit
- Created: 2019-06-12T21:02:53.000Z (about 7 years ago)
- Default Branch: master
- Last Pushed: 2023-11-24T08:42:56.000Z (over 2 years ago)
- Last Synced: 2023-11-24T09:35:52.552Z (over 2 years ago)
- Topics: digital-electronics, python3, quine-mccluskey-algorithm
- Language: Python
- Homepage:
- Size: 906 KB
- Stars: 32
- Watchers: 3
- Forks: 18
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
Quine McCluskey Circuit Minimizer.
A robust, insanely fast and stupidly easy to use CLI tool for minimizing sum of products via the Quine Mccluskey minimization technique.
## Features :gem:
* Written in uncomplicated python :innocent:
* Supports don't cares and variables for representing expression
* Display of all steps leading to solution :droplet:
* Works on Mac, Linux and Windows
* Provides all other alternative solutions to the minimization problem
## Installation :package:
1. Clone the repo
```bash
git clone https://github.com/Kumbong/quine_mccluskey.git
cd quine_mccluskey
```
2. Install dependencies
```bash
pip install -r requirements.txt
```
## Usage :computer:
You can use the following optional arguments according to your needs:
* `-d`, `--dcares` (list of numbers): **list of dont't cares (default=[ ])**
* `-v`, `--variables` (list of chars): **list of characters for representing result (default = [ ])**
* `-s`, `--show_steps` (yes|no): **show steps leading to solution (default=yes)**
* `-p`, `--sop` (sum of products): **sum of products are used to be reduce the function**
* `-m`, `--minterms` (minterms): **sum of minterms are used to be reduce the function**
Example
```bash
python -m qmccluskey -m 0,1,3,7,8,9,11,15 -d 12 -v a,b,c,d
python -m qmccluskey -p a'b'c'+b'cd'+a'bcd'+ab'c' -v a,b,c,d
```
## Demo :movie_camera:
Solution for the the Example above




## Contributing :gift: [](https://github.com/dwyl/esta/issues)
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.
Please make sure to update tests as appropriate.
## Want to talk more??
If you are interested in helping or have something to suggest or just want to chat with me, you can reach me via email: kumbonghermann@gmail.com
## References :book:
* Petrick's method
https://en.wikipedia.org/wiki/Petrick%27s_method
* quine mccluskey also in python
https://github.com/tpircher/quine-mccluskey
* readme.md
https://github.com/karan/joe
## Todos :pencil:
- Complete GUI module
- Write tests
- Include steps for petrick's method
License :key:
----
MIT © Kumbong Hermann
