# Boolean Algebra Simplifier (Karnaugh Map)

Minimal SOP via Quine–McCluskey with essential prime implicants, exact minimum cover, Gray-coded Karnaugh map, and full-assignment verification.

> Canonical page: https://elysiatools.com/en/tools/boolean-algebra-simplifier

- **Category:** Math & Numbers

- **Keywords:** boolean algebra, karnaugh map, quine mccluskey, prime implicants, minimal sop, logic simplification, minterms, digital logic, switching algebra, gray code

## Overview

The Boolean Algebra Simplifier minimizes switching expressions and minterm sets using the Quine–McCluskey tabular method. It computes prime implicants, determines essential prime implicants for an exact minimal Sum of Products (SOP), displays a Gray-coded Karnaugh map, and verifies the simplified output across all variable assignments.

## Inputs

- **Input mode** (select)
- **Boolean expression (A–D)** (text): Classic switching-algebra notation: + OR, · or juxtaposition AND, ' or ! NOT, ^ XOR, parentheses. At most 4 distinct variables.
- **Minterm list (comma-separated)** (text): Used in Minterms mode: the indices where the function is 1, e.g. 0,1,2,4,5,6.
- **Number of variables** (select)

## When to use

- Minimizing combinatorial logic equations up to 4 variables for digital circuit designs.
- Checking manual Karnaugh map groupings against an automated Quine–McCluskey prime implicant table.
- Converting minterm index lists into simplified sum-of-products formulas with verification across all truth assignments.

## How it works

- Choose between expression mode (using boolean variables A through D) or minterms mode (entering decimal indices).
- The tool parses operators including OR (+), AND (· or juxtaposition), NOT (' or !), and XOR (^), or evaluates the selected minterm list against the chosen variable count.
- Quine–McCluskey computes prime implicants and extracts an exact minimal SOP cover alongside canonical Σm notation.
- Results output a formatted Gray-coded Karnaugh map table and run an automated evaluation across all 2^N truth assignments to verify equivalence.

## Use cases

- Engineering students verifying homework solutions for digital logic design and switching algebra.
- Hardware developers minimizing gate counts and literal counts in combinational logic blocks.
- Software engineers optimizing multi-condition branching logic and Boolean flags into reduced expressions.

## Frequently asked questions

### Which Boolean operators are supported in expression mode?

You can use + for OR, · or variable juxtaposition for AND, ' or ! for NOT, ^ for XOR, and standard parentheses for grouping.

### How many variables can this tool handle?

The tool supports functions with 2, 3, or 4 distinct variables (A, B, C, and D).

### What is the difference between expression and minterms input modes?

Expression mode accepts symbolic switching algebra equations, while minterms mode takes a comma-separated list of decimal ON-set indices (Σm).

### How does the tool verify the simplification?

It tests both the original function and the minimized SOP across every possible binary truth assignment (4, 8, or 16 states) to ensure exact equivalence.

### Does the Karnaugh map follow standard Gray code ordering?

Yes, row and column labels use Gray code sequences (00, 01, 11, 10) so adjacent cells differ by exactly one bit.

## Related tools

- [Dilution Ratio Converter (1:X ↔ 1/X ↔ %)](https://elysiatools.com/en/tools/dilution-ratio-converter): Convert dilution notations 1:X ↔ 1/X ↔ percent, with dilution factor, parts, and mixing volumes.
- [Extended Euclidean Algorithm (ax + by = gcd(a, b))](https://elysiatools.com/en/tools/extended-euclidean-algorithm): Bézout coefficients for any-sign integers with the full division-step table, lcm, and optional linear Diophantine solving (particular + general solution).
- [Modular Inverse Calculator (Extended Euclidean Algorithm)](https://elysiatools.com/en/tools/modular-inverse-calculator): a⁻¹ mod m via extended Euclid with Bézout coefficients, an optional step table, and an a × a⁻¹ ≡ 1 (mod m) verification; RSA-sized inputs supported.
- [Modular Arithmetic Calculator (Add / Subtract / Multiply / Inverse / Power)](https://elysiatools.com/en/tools/modulo-arithmetic-converter): Exact BigInt modular arithmetic for values up to 10¹⁸: (a ± b) mod m, (a × b) mod m, a⁻¹ mod m via extended Euclid, and aᵇ mod m via fast exponentiation.
- [Truth Table Generator](https://elysiatools.com/en/tools/truth-table-generator): Complete truth table (≤ 6 variables, 64 rows) with alphabetical variable order, per-row function values, and canonical Σm/ΠM forms.
- [Angular Velocity Converter (rad/s / rpm / deg/s / Hz)](https://elysiatools.com/en/tools/angular-velocity-converter): Convert angular velocity (angular speed) between radian per second (rad/s, SI base), revolutions per minute (rpm = 2π/60 rad/s), degrees per second (deg/s = π/180 rad/s), and hertz (Hz, used as revolution per second = 2π rad/s). Converts via rad/s to the target unit and lists all four equivalents. Note: 1 Hz in angular-frequency context means one full revolution per second, so 1 Hz = 2π rad/s ≈ 6.283185307 rad/s. Reference: vinyl LP 33⅓ rpm ≈ 3.49 rad/s, car engine idle ~800 rpm ≈ 83.8 rad/s.
- [Duct Size Calculator (Flow Rate × Velocity)](https://elysiatools.com/en/tools/duct-size-calculator): Size a duct cross-section from the air flow rate Q and the design mean velocity v: area A = Q/v. Circular duct diameter D = √(4A/π). Rectangular duct with aspect ratio r = a/b gives b = √(A/r) and a = r·b, plus the ASHRAE equivalent diameter D_eq = 1.30·(a·b)^0.625/(a+b)^0.25. Flow rate in m³/s/m³/h/CFM, velocity in m/s; dimensions reported in mm and inches.
- [Fatigue Limit Calculator (Goodman / Gerber / Soderberg)](https://elysiatools.com/en/tools/fatigue-limit-calculator): Mean-stress fatigue correction under cyclic loading. Given stress amplitude σ_a, mean stress σ_m, and material σ_uts / σ_-1 (endurance limit) / σ_y, compute safety factors from three classical criteria: Modified Goodman (linear, conservative), Gerber (parabolic, better for ductile metals), and Soderberg (uses σ_y, most conservative). Reports the governing (smallest) value and whether the operating point lies inside the Goodman line.

## Samples

- [Web Image Processing Python Samples](https://elysiatools.com/en/samples/web-image-processing-python): Web Python image processing examples using PIL/Pillow including reading, saving, resizing, and format conversion
- [Android Image Processing Java Samples](https://elysiatools.com/en/samples/android-image-processing-java): Android Java image processing examples including reading/saving images, scaling, and format conversion
- [Android Image Processing Kotlin Samples](https://elysiatools.com/en/samples/android-image-processing-kotlin): Android Kotlin image processing examples including reading/saving images, scaling, and format conversion
- [Web Image Processing Rust Samples](https://elysiatools.com/en/samples/web-image-processing-rust): Web Rust image processing examples including image read/save, scaling, and format conversion
