Un mapa de Karnaugh es una tabla de verdad dibujada de forma que las filas que se pueden combinar algebraicamente quedan físicamente juntas. Entender por qué funciona evita los errores típicos: grupos de tamaño incorrecto, olvidar que los bordes se tocan o no aprovechar las indiferencias.
La idea: combinar términos que difieren en una variable
Todo el método se apoya en una identidad del álgebra de Boole:
X·Y + X·Y' = X·(Y + Y') = X
Si dos minitérminos son iguales salvo en una variable, su suma se simplifica eliminando esa variable. Por ejemplo, A'BC'D (m5) + A'BCD (m7) = A'BD. Aplicado dos veces, cuatro minitérminos que difieren en dos variables se reducen a un producto de dos literales menos, y así sucesivamente.
Por qué el orden Gray
El mapa numera filas y columnas en código Gray: 00, 01, 11, 10. Entre dos posiciones consecutivas cambia un solo bit, y también entre la última y la primera (10 → 00). Con el orden binario habitual (00, 01, 10, 11) el paso de 01 a 10 cambiaría dos bits a la vez y dos celdas vecinas no serían combinables. Gracias al orden Gray, celdas vecinas en el mapa = minitérminos que difieren en una variable, incluidas las que están en bordes opuestos.
| AB \ CD | 00 | 01 | 11 | 10 |
|---|---|---|---|---|
| 00 | 00 | 01 | 03 | 02 |
| 01 | 04 | 05 | 07 | 06 |
| 11 | 012 | 013 | 015 | 014 |
| 10 | 18 | 09 | 011 | 010 |
Reglas para agrupar
- Los grupos contienen solo unos (o indiferencias) y tienen 1, 2, 4, 8 o 16 celdas.
- Son rectangulares, contando que el mapa se «dobla» por los bordes: las cuatro esquinas de un mapa de 4 variables forman un grupo.
- Cada grupo debe ser lo más grande posible: un grupo mayor elimina más variables.
- Los grupos pueden solaparse, y cada 1 debe quedar en al menos un grupo.
- Se usan los menos grupos posibles.
Para leer un grupo, mira qué variables mantienen el mismo valor en todas sus celdas: esas forman el producto (negadas si valen 0). Las que cambian desaparecen.
Implicantes primos y esenciales
Un implicante primo es un grupo que no se puede agrandar más. Es esencial si cubre algún 1 que ningún otro implicante primo cubre: entonces tiene que estar en la solución. El procedimiento práctico es:
- Encuentra los unos que solo pueden agruparse de una manera y toma esos grupos (son esenciales).
- Con los unos que queden, elige los grupos que los cubran con el menor número de términos.
El minimizador del sitio hace exactamente esto, pero de forma exhaustiva: calcula todos los implicantes primos con el método de Quine-McCluskey, toma los esenciales y busca la mejor cobertura para el resto.
Cuando hay más de una solución mínima
F(A,B,C) = Σm(0, 1, 2, 5, 6, 7) no tiene ningún implicante primo esencial: cada 1 se puede cubrir de dos maneras. Es un caso cíclico, y tiene dos soluciones igual de buenas:
| A \ BC | 00 | 01 | 11 | 10 |
|---|---|---|---|---|
| 0 | 10 | 11 | 03 | 12 |
| 1 | 04 | 15 | 17 | 16 |
| A \ BC | 00 | 01 | 11 | 10 |
|---|---|---|---|---|
| 0 | 10 | 11 | 03 | 12 |
| 1 | 04 | 15 | 17 | 16 |
Las dos tienen 3 términos y 6 literales. El minimizador muestra la primera. Si tu solución es la otra, también es correcta; el ejercicio de verificación usa esta misma función.
Indiferencias
Una indiferencia (X) es una combinación de entradas que nunca se produce o cuya salida no importa. Se puede tratar como 1 si ayuda a formar un grupo mayor y como 0 en caso contrario. No hace falta cubrirlas. El itinerario de lógica digital muestra cómo las indiferencias de una entrada BCD reducen un detector de primos de 4 términos a 2.
Producto de sumas agrupando ceros
El mismo mapa sirve para obtener un producto de sumas (POS): se agrupan los ceros, lo que da una expresión de F', y se aplica De Morgan. Para F = Σm(0, 2, 5, 7, 8, 10, 13, 15), los ceros son las celdas donde B ≠ D:
| AB \ CD | 00 | 01 | 11 | 10 |
|---|---|---|---|---|
| 00 | 10 | 01 | 03 | 12 |
| 01 | 04 | 15 | 17 | 06 |
| 11 | 012 | 113 | 115 | 014 |
| 10 | 18 | 09 | 011 | 110 |
F' = BD' + B'D → F = (B' + D)(B + D')
El resultado es equivalente a la suma de productos B'D' + BD. El minimizador del sitio solo genera la forma SOP, así que el POS hay que obtenerlo a mano de esta manera.
Más allá de 4 variables
Con 5 o 6 variables se pueden usar varios mapas superpuestos, pero las adyacencias entre mapas son fáciles de pasar por alto. A partir de ahí se usan métodos tabulares como Quine-McCluskey, que no dependen de la vista y se pueden programar.