FNC frente a FND: qué forma normal para cada tarea
La forma normal conjuntiva es un AND de cláusulas OR; la forma normal disyuntiva es un OR de términos AND. Para (A -> B) AND (B -> C) la FNC tiene dos cláusulas y la FND tres términos, y el mapa de Karnaugh encuentra una cobertura de dos términos que la FND algebraica no vio.
El motor convierte la fórmula en los dos sentidos. Eliminar las dos implicaciones da la FNC directamente, (NOT A OR B) AND (NOT B OR C), dos cláusulas con cuatro literales: dos restricciones, cada una un eslabón de la cadena. La FND necesita además distribución y un paso de complemento, y sale como (NOT A AND NOT B) OR (NOT A AND C) OR (B AND C), tres términos. La función es VERDADERA en las filas 0, 1, 3 y 7, Σm(0, 1, 3, 7).
El mapa de Karnaugh obtiene (NOT A AND NOT B) OR (B AND C), dos grupos, mientras informa de tres implicantes primos: el término central de la FND algebraica, NOT A AND C, es el consenso de los otros dos y queda cubierto por ellos. Esa es la diferencia entre una conversión y una reducción. El conversor produce una forma normal correcta reescribiendo; el mapa busca una cobertura; ninguno se equivoca, y la comprobación exacta confirma los dos contra el original.
La elección es por uso. La FNC es lo que lee un solucionador SAT, una cláusula por restricción, y lo que produce de forma natural una especificación de requisitos. La FND es lo que una regla parece leída como casos, lo que son las columnas de una tabla de decisión, y lo que produce un mapa de Karnaugh. Los recuentos de compuertas, once NAND y cinco NOR aquí, siguen la estructura y no el nombre de la forma.
Ejemplo
f := (A -> B) AND (B -> C) · salida
Comprobaciones exactas
Tabla de verdad (8 filas)
| # | A | B | C | f |
|---|---|---|---|---|
| 0 | FALSO | FALSO | FALSO | VERDADERO |
| 1 | FALSO | FALSO | VERDADERO | VERDADERO |
| 2 | FALSO | VERDADERO | FALSO | FALSO |
| 3 | FALSO | VERDADERO | VERDADERO | VERDADERO |
| 4 | VERDADERO | FALSO | FALSO | FALSO |
| 5 | VERDADERO | FALSO | VERDADERO | FALSO |
| 6 | VERDADERO | VERDADERO | FALSO | FALSO |
| 7 | VERDADERO | VERDADERO | VERDADERO | VERDADERO |
Diagrama lógico
Mapa de Karnaugh
- celdas m0, m1
NOT A AND NOT B - celdas m3, m7
B AND C
Mintérminos y maxtérminos
f(A, B, C) = Σm(0, 1, 3, 7)f(A, B, C) = ΠM(2, 4, 5, 6)Orden de variables: A, B, C · 8 filas
Formas normales
Forma normal conjuntiva (FNC)
(NOT A OR B) AND (NOT B OR C)2 cláusulas, 4 literales · complete · Eliminación de la implicación ×2
Forma normal disyuntiva (FND)
(NOT A AND NOT B) OR (NOT A AND C) OR (B AND C)3 términos, 6 literales · complete · Eliminación de la implicación ×2, Distributividad ×1, Complemento ×1
Solo NAND, solo NOR
Forma solo con NAND
NAND(NAND(NAND(A, NAND(B, B)), NAND(B, NAND(C, C))), NAND(NAND(A, NAND(B, B)), NAND(B, NAND(C, C))))11 compuertas · equivalencia verificada en todas las filas
Forma solo con NOR
NOR(NOR(NOR(A, A), B), NOR(NOR(B, B), C))5 compuertas · equivalencia verificada en todas las filas
El error habitual
Esperar que la FND sea la forma OR-de-AND más corta. La FND de tres términos del conversor es una forma normal válida con un término de consenso que el mapa elimina; «forma normal» promete una forma, no la ausencia de términos eliminables.
Preguntas
¿Una fórmula puede tener varias FND?
Sí. La FND canónica, un mintérmino por fila VERDADERA, es única; las FND más cortas no lo son, y (NOT A AND NOT B) OR (B AND C) y la forma de tres términos son ambas FND de esta función.
¿Por qué la FNC conviene a los solucionadores?
Porque la operación central de un solucionador es comprobar cláusulas, cada una un OR de literales que debe satisfacerse, y la propagación unitaria trabaja cláusula a cláusula. La exportación a SMT-LIB formula sus preguntas para que el trabajo del solucionador sea exactamente este.
Relacionado
Ejercicios
Véase también
- Forma normal conjuntiva (FNC): definición, ejemplo y equivalente en inglés
- Forma normal disyuntiva (FND): definición, ejemplo y equivalente en inglés
- Suma de productos frente a producto de sumas
- Teorema del consenso: AB + A'C + BC = AB + A'C, con demostración
- Eliminación de la implicación: A → B = A' + B
- Ley distributiva: A·(B+C) = A·B + A·C, ambas formas
- Conversor a FNC y FND: formas normales conjuntiva y disyuntiva, mintérminos y maxtérminos
- Lección 10: Formas normales: FND, FNC, mintérminos y maxtérminos
Comparar
Generado a partir del motor de Tangibool, semántica tangibool-semantics/1, motor 1.0.0, compilación . Cada tabla, mapa, simplificación y veredicto de estas páginas lo calculó el motor de Tangibool al compilar el sitio, y cada afirmación la volvió a comprobar el mismo verificador exacto que usa la app. Los límites se indican donde aplican. © 2026 Foreranger LTD.