This project implements the Quine-McCluskey algorithm for minimizing Boolean expressions using a tabular method. It is especially useful for functions with a large number of variables, where Karnaugh maps become impractical.
The implementation is written in Python and includes detailed explanations, edge case handling (e.g., don't care conditions), and verification through truth table comparison.
- Full implementation of the Quine–McCluskey method
- Handles don't care conditions
- Truth table verification included
- Written for clarity and educational use
- Includes theoretical report and Jupyter Notebook
- No external libraries required
Report.pdf
: Detailed explanation of the algorithm and edge casesNotebook.ipynb
: Interactive implementation in Python- No setup required – simply open the notebook and run
Boolean logic simplification reduces circuit complexity, cost, and power usage. The Quine–McCluskey method offers a step-by-step, deterministic alternative to Karnaugh Maps, scalable to 6+ variables and ideal for automated tools.
- Open
Notebook.ipynb
in Jupyter or VS Code. - Follow the cells step by step.
- Change input expressions or variables in the first cell to test your own Boolean functions.
quine_mccluskey_minimize("A Bb + Ab", ["A", "B"])
This project was originally developed to explore core principles in digital logic and Boolean algebra. It preserves the original ideas while being refined for broader public use.
This project is licensed under the MIT License. You are free to use, modify, and distribute it.
Developed by Marouf Haider, National Higher School of Mathematics – April 2025.
This implementation and report were written as part of an educational project and may contain unintentional mistakes or limitations. If you encounter any issues or have suggestions, feel free to reach out: