Símbolos y notaciones de la lógica booleana: NOT, AND, OR en palabras, código y matemáticas
Cada operador booleano tiene varias grafías: una palabra, un símbolo de programación, un símbolo matemático y un signo de álgebra. La tabla de abajo es la que acepta el analizador, y la lista que la sigue muestra lo que dice cuando escribes una grafía que no acepta.
Las cuatro notaciones son intercambiables en la entrada y seleccionables en la salida. NOT A, !A, ¬A y A' son una misma fórmula; A AND B, A && B, A ∧ B y A·B son una misma fórmula; A OR B, A || B, A ∨ B y A + B son una misma fórmula. El o exclusivo es XOR o ⊕, la implicación -> o →, el bicondicional <-> o ↔, y las constantes TRUE, FALSE, 1 y 0. Las palabras de operador no distinguen mayúsculas, así que a AnD b se analiza, pero los nombres de las entradas sí las distinguen.
Tres compuertas (o puertas) solo tienen grafía de función, NAND(A, B), NOR(A, B) y XNOR(A, B), cada una con exactamente dos operandos, y dos formas indexadas nombran una función por sus filas: Σm(A, B; 1, 2) enumera los mintérminos y ΠM(A, B; 0) los maxtérminos, con minterms(…) y maxterms(…) como grafías de texto plano. Las definiciones de salida usan :=, y por eso un = suelto dentro de una fórmula se rechaza.
Las grafías rechazadas son las que significan otra cosa en algún sitio: = y == (comparación, no un operador aquí), != (que entre booleanos es XOR), => y <=> (flechas gruesas que varían entre herramientas), ~ (bit a bit en C), &, | y ^ (bit a bit en C, Java y JavaScript), * (aritmética), el infijo A NAND B, y dos nombres seguidos (A B), que algunos libros leen como multiplicación. En todos los casos el analizador nombra el problema y ofrece una corrección, y las lecturas de abajo se registran del propio analizador en el momento de la construcción.
Grafías aceptadas
| Operador | Grafías aceptadas | Palabras | Programación | Matemática | Álgebra |
|---|---|---|---|---|---|
| not | NOT ! ¬ a' a′ | NOT a | !a | ¬a | a' |
| and | AND && ∧ · ⋅ | a AND b | a && b | a ∧ b | a·b |
| or | OR || ∨ + | a OR b | a || b | a ∨ b | a + b |
| xor | XOR ⊕ | a XOR b | a XOR b | a ⊕ b | a ⊕ b |
| implies | -> → | a -> b | a -> b | a → b | a → b |
| iff | <-> ↔ | a <-> b | a <-> b | a ↔ b | a ↔ b |
| nand | NAND(a, b) | NAND(a, b) | NAND(a, b) | NAND(a, b) | NAND(a, b) |
| nor | NOR(a, b) | NOR(a, b) | NOR(a, b) | NOR(a, b) | NOR(a, b) |
| xnor | XNOR(a, b) | XNOR(a, b) | XNOR(a, b) | XNOR(a, b) | XNOR(a, b) |
| minterms | Σm(a, b; 1, 3) ∑m(…) minterms(…) | Σm(a, b; 1, 3) | Σm(a, b; 1, 3) | Σm(a, b; 1, 3) | Σm(a, b; 1, 3) |
| maxterms | ΠM(a, b; 0) ∏M(…) maxterms(…) | ΠM(a, b; 0) | ΠM(a, b; 0) | ΠM(a, b; 0) | ΠM(a, b; 0) |
| constants | TRUE FALSE 1 0 | TRUE / FALSE | TRUE / FALSE | 1 / 0 | 1 / 0 |
Grafías rechazadas y su corrección
| Escribiste | Código | Por qué se rechaza | Corrección ofrecida |
|---|---|---|---|
| A = B | unsupported-operator | `=` is not an expression operator. Use `<->` when both sides must have the same value; compare whole formulas in the Compare workbench. Output definitions use `:=`. | Replace with <-> |
| A == B | unsupported-operator | `==` is not an expression operator. Use `<->` when both sides must have the same value, or the Compare workbench to compare two formulas. | Replace with <-> |
| A != B | unsupported-operator | `!=` is not an expression operator. Use `XOR` when the two sides must differ. | Replace with XOR |
| A => B | unsupported-operator | `=>` is not a supported operator. Use `->` for implication. | Replace with -> |
| A <=> B | unsupported-operator | `<=>` is not a supported operator. Use `<->` for a biconditional. | Replace with <-> |
| ~A | unsupported-operator | `~` is not a supported operator. Use `NOT`, `!`, or `¬` for negation. | Replace with NOT |
| A & B | unsupported-operator | A single `&` is not supported. Use `AND` or `&&`. | Replace with AND Replace with && |
| A | B | unsupported-operator | A single `|` is not supported. Use `OR` or `||`. | Replace with OR Replace with || |
| A ^ B | unsupported-operator | `^` is not supported (it is bitwise in many languages). Use `XOR` or `⊕`. | Replace with XOR |
| A * B | unsupported-operator | `*` is not supported. Use `AND`, `&&`, `∧`, or the algebra product `·`. | Replace with AND Replace with · |
| A NAND B | infix-function | NAND uses function notation, e.g. NAND(A, B). | Rewrite as NAND(A, B) |
| A B | missing-operator | Missing operator between `A` and `B`. Implicit multiplication is not supported — write the operator explicitly. | Insert AND Insert OR |
| not A == B | unsupported-operator | `==` is not an expression operator. Use `<->` when both sides must have the same value, or the Compare workbench to compare two formulas. | Replace with <-> |
El error habitual
Pegar una fórmula de un libro o de un programa y confiar en que se analizó como se pretendía. AB + C' solo se acepta como A·B + C' con el punto; A B es un operador que falta; y A ^ B se rechaza en lugar de leerse en silencio como potencia o como XOR.
Preguntas
¿Qué notación imprime el motor por defecto?
La que elijas: palabras, programación, matemática o álgebra. Cada página de esta referencia imprime cada fórmula en las cuatro, y la forma totalmente entre paréntesis de la página de precedencia muestra la agrupación.
¿Puedo usar la barra superior para NOT?
En la entrada no; escribe NOT A, !A, ¬A o A'. La exportación a LaTeX escribe la negación como barra superior, que es la tipografía habitual del álgebra.
Relacionado
Véase también
- Precedencia de operadores en lógica booleana: NOT, luego AND, luego XOR, luego OR
- «=» no es un operador booleano: usa ↔ o compara las fórmulas
- ^ significa XOR en C, Java y Python, no AND ni potencia
- & y | simples son operaciones bit a bit en la mayoría de lenguajes
- ~ es NOT bit a bit en código y NOT lógico en algunos libros
- Variantes de flechas: => y <=> frente a → y ↔, qué significa cada una
- AB es un nombre, no A AND B: la multiplicación implícita
- Operadores booleanos en Python: and, or, not, precedencia y errores comunes
- Lógica booleana en LaTeX: \land, \lor, \lnot y tablas de verdad
Lenguajes
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.