¿Qué es un mapa de Karnaugh? Guía completa de simplificación Booleana

Un mapa de Karnaugh — a menudo abreviado como mapa K o K-map — es un método basado en una cuadrícula para simplificar expresiones Booleanas a mano. Convierte una tabla de verdad en la expresión lógica más corta posible observando qué salidas están una junto a la otra, en lugar de manipular símbolos algebraicos uno por uno.

Fue presentado por Maurice Karnaugh en 1953, basándose en una cuadrícula similar que Edward Veitch había propuesto un año antes — por eso algunos libros de texto todavía lo llaman diagrama de Veitch. Ambos nombres describen la misma herramienta.

¿Por qué minimizar una expresión Booleana?

Cada AND, OR y NOT de una expresión Booleana se convierte en una puerta lógica física cuando se construye el circuito. Menos términos y menos literales por término significa menos puertas.

Menos puertas significa un circuito más barato, más rápido y con menor consumo de energía. Una tabla de verdad escrita directamente como suma de minterms siempre funcionará — pero rara vez es el circuito más pequeño que produce la misma salida. La minimización cierra esa brecha.

De la tabla de verdad al mapa

Una tabla de verdad enumera cada combinación de entradas y su salida. Un mapa K reorganiza esas mismas filas en una cuadrícula, con una diferencia crucial: las celdas adyacentes en la cuadrícula siempre difieren en exactamente un bit de entrada.

Por qué importa el orden en código Gray

Esa propiedad de diferencia de un solo bit proviene del orden en código Gray (00, 01, 11, 10) en lugar del conteo binario normal (00, 01, 10, 11) en cada eje.

Por qué esto importa: dos celdas adyacentes que son ambas 1 siempre se pueden combinar en un término más simple, porque exactamente una variable difiere entre ellas — y esa variable desaparece del resultado. Esta es la razón mecánica completa por la que un mapa K funciona. Más detalles en Gray Code Explained (en inglés).

Leer un mapa K: ejemplos resueltos por tamaño

La mecánica se mantiene idéntica en cualquier tamaño — solo cambian las dimensiones de la cuadrícula. Tres tamaños, resueltos completamente a continuación.

2 variables

Toma una función que da como salida 1 siempre que B es 1, sin importar A — minterms 1 y 3.

A\B01
0 00 11
1 20 31

Los dos 1 están en la misma columna, lo que significa que B es 1 en ambos y A no influye en ninguno de los dos.

Agruparlos da directamente la expresión mínima: F = B. Sin necesidad de álgebra — la adyacencia hizo el trabajo.

3 variables

Con tres variables el mapa todavía cabe en una sola cuadrícula — dos filas (para A) por cuatro columnas (para B, C en orden de código Gray 00, 01, 11, 10).

Considera los minterms 0, 2, 4, 6 — cada caso donde C es 0. Cada 1 en este mapa tiene C = 0, y cada 0 tiene C = 1, así que la función completa se reduce a F = C′ — un solo literal, sin importar lo que hagan A y B.

4 variables: el caso clásico, resuelto completamente

Este es el tamaño que más cursos usan para enseñar la agrupación correctamente — suficientemente grande para requerir decisiones reales de agrupación, pero aún cabe en una sola cuadrícula.

Configurando la cuadrícula

Toma F(A,B,C,D) = Σm(0,1,2,5,6,7,8,9,10,14):

AB\CD 00011110
00 01 11 30 21
01 40 51 71 61
11 120 130 150 141
10 81 91 110 101
B′C′ — cubre {0,1,8,9}
CD′ — cubre {2,6,10,14}
A′BD — cubre {5,7}

Agrupando las celdas

  • B′C′ — un grupo envolvente de cuatro esquinas que cubre {0,1,8,9}
  • CD′ — una columna completa de cuatro celdas que cubre {2,6,10,14}
  • A′BD — un par que cubre las dos celdas restantes {5,7}

Tres grupos cubren cada 1 exactamente una vez entre todos ellos, sin que sea posible ninguna agrupación más pequeña para ninguno de los tres.

Escribiendo la expresión final

F = B′C′ + CD′ + A′BD
Nota: el grupo CD′ recorre una columna entera — cuatro celdas — por eso se reduce a solo dos literales en lugar de tres. Grupos más grandes siempre significan menos literales: un grupo de 2 elimina una variable, uno de 4 elimina dos, uno de 8 elimina tres. Busca siempre el grupo válido más grande antes de conformarte con uno más pequeño.

Las reglas de agrupación, con precisión

  • El tamaño del grupo debe ser una potencia de 2 — 1, 2, 4, 8, 16 celdas. Nunca 3, 5, 6 o 7.
  • Los grupos deben ser rectangulares (incluyendo rectángulos envolventes — ver más abajo), nunca una forma irregular.
  • El mapa se envuelve sobre sus propios bordes. La columna más a la izquierda y la más a la derecha son adyacentes, y la fila superior e inferior son adyacentes, porque el orden en código Gray hace que la primera y última entrada también difieran en solo un bit. Esto es lo que más comúnmente se pasa por alto.
  • Cada 1 requerido debe estar cubierto por al menos un grupo, pero los grupos pueden superponerse.
  • Prefiere siempre el grupo más grande posible para cada celda antes de recurrir a uno más pequeño — esto es lo que mantiene mínima la expresión final.

Condiciones de indiferencia

Algunas combinaciones de entrada nunca ocurren realmente en un sistema real, o su salida genuinamente no importa. Marcadas como X en el mapa, una indiferencia puede tratarse como 0 o como 1 — lo que ayude a formar un grupo más grande.

Nunca es obligatorio cubrirlas, solo se usan de manera oportunista. Guía completa: Handling Don't-Care Conditions in K-Maps (en inglés).

Más allá de 4 variables

Una sola cuadrícula plana deja de ser práctica más allá de 4 variables — una cuadrícula 2D no puede mantener cada celda adyacente a cada celda que difiere en un bit una vez que hay más de 4 bits que rastrear.

La solución estándar: dividir las variables adicionales en mosaicos de mapa separados. Una función de 5 variables se convierte en dos mapas de 4 variables; una función de 6 variables se convierte en cuatro. La adyacencia entre celdas correspondientes en distintos mosaicos sigue contando. Recorrido completo: Reading 5- and 6-Variable Multi-Tile Karnaugh Maps (en inglés).

Puntos clave

  • Un mapa K convierte la adyacencia de una tabla de verdad en algo visible, usando el orden en código Gray para que cada celda vecina difiera en exactamente un bit.
  • Los grupos válidos siempre tienen un tamaño potencia de 2 (1, 2, 4, 8...) y siempre son rectangulares, incluyendo rectángulos envolventes a través de los bordes del mapa.
  • Toma siempre el grupo válido más grande para cada celda — grupos más grandes significan menos literales en la expresión final.
  • Las indiferencias pueden incorporarse a un grupo de manera oportunista, pero nunca es obligatorio cubrirlas.
  • Más allá de 4 variables, los diseños de múltiples mosaicos mantienen las mismas reglas funcionando en 5 y 6 variables.

A dónde ir después

Agrupar a simple vista funciona bien hasta unas 4 variables, y construye la intuición de la que depende todo lo demás. Más allá de eso, o cuando un problema necesita una respuesta mínima exacta y demostrable, esa misma lógica se formaliza como Quine-McCluskey, con el método de Petrick manejando los casos donde los grupos esenciales obvios no resuelven todo por sí solos.

Pruébalo en el solucionador

Trabaja los ejemplos anteriores directamente — ingresa los mismos minterms o expresión en la herramienta en vivo.

Abrir el K-Map Solver