Skip to content

A Python implementation of the Quine–McCluskey algorithm for Boolean function minimization. Includes a theoretical report, interactive Jupyter notebook, and truth table verification.

Notifications You must be signed in to change notification settings

Marouf-Haider/Quine-McCluskey-minimizer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 

Repository files navigation

Quine-McCluskey Boolean Minimizer

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.


📌 Features

  • 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

📁 Contents

  • Report.pdf: Detailed explanation of the algorithm and edge cases
  • Notebook.ipynb: Interactive implementation in Python
  • No setup required – simply open the notebook and run

📖 Background

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.


🚀 Usage

Option 1: Run in Jupyter Notebook

  1. Open Notebook.ipynb in Jupyter or VS Code.
  2. Follow the cells step by step.
  3. Change input expressions or variables in the first cell to test your own Boolean functions.

Example

quine_mccluskey_minimize("A Bb + Ab", ["A", "B"])

🔬 Educational Value

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.


📝 License

This project is licensed under the MIT License. You are free to use, modify, and distribute it.


🙋‍♂️ Author

Developed by Marouf Haider, National Higher School of Mathematics – April 2025.


⚠️ Disclaimer & Contact

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:

📧 [email protected]

About

A Python implementation of the Quine–McCluskey algorithm for Boolean function minimization. Includes a theoretical report, interactive Jupyter notebook, and truth table verification.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published