Bicondicional (↔, si y solo si): tabla de verdad y ejemplos
El bicondicional A <-> B, que se lee «A si y solo si B», es VERDADERO cuando A y B tienen el mismo valor y FALSO cuando difieren. Es la implicación en los dos sentidos a la vez, y la misma función que la compuerta XNOR.
La tabla tiene dos filas VERDADERAS, donde A y B coinciden, y dos FALSAS, donde difieren. La segunda tabla de abajo escribe la misma función con AND, OR y NOT, (A AND B) OR (NOT A AND NOT B), y las columnas coinciden; la ley de eliminación del bicondicional lo demuestra, y la página de XNOR muestra la compuerta con la misma tabla. A <-> B es también (A -> B) AND (B -> A), de donde viene el nombre.
El analizador acepta <-> y ↔; <=> se rechaza con una corrección, y también ==, cuyo mensaje remite a <-> para «los dos lados tienen el mismo valor» y al espacio de comparación para comparar dos fórmulas. Una cadena A <-> B <-> C se rechaza a propósito, aunque las dos agrupaciones, (A <-> B) <-> C y A <-> (B <-> C), tienen la misma tabla: la cadena se malinterpreta con facilidad como «las tres son iguales», pero cualquiera de las dos agrupaciones es VERDADERA cuando un número impar de entradas son VERDADERAS, así que es FALSA cuando las tres son FALSAS. Por eso el analizador pide paréntesis, ofrece las dos agrupaciones como correcciones y nunca agrupa una cadena por su cuenta.
En reglas y especificaciones el bicondicional expresa «exactamente cuando»: el descuento se aplica si y solo si la tarjeta es válida, de modo que una tarjeta válida sin descuento, y un descuento sin tarjeta válida, son infracciones las dos. Eso es más fuerte que el «si» en un sentido, y la página de comparativa pone A -> B y A <-> B en una tabla para mostrar la fila FALSA adicional. Mantenlo aparte de la equivalencia lógica: A <-> B es una fórmula con su propia tabla, mientras que «F es equivalente a G» es la afirmación de que F <-> G es una tautología.
Grafías aceptadas
<-> ↔
a <-> ba <-> ba ↔ ba ↔ bA ↔ B: A <-> B
| # | A | B | f |
|---|---|---|---|
| 0 | FALSO | FALSO | VERDADERO |
| 1 | FALSO | VERDADERO | FALSO |
| 2 | VERDADERO | FALSO | FALSO |
| 3 | VERDADERO | VERDADERO | VERDADERO |
Principiantef es verdadero exactamente cuando A y B tienen el mismo valor (ambos verdaderos o ambos falsos).
En todos los demás casos, f es falso.
Sobre los operadores:
- Un bicondicional (↔) es verdadero cuando ambos lados tienen el mismo valor.
Intermediof es verdadero exactamente cuando A y B tienen el mismo valor (ambos verdaderos o ambos falsos).
En todos los demás casos, f es falso.
Avanzadof es verdadero exactamente cuando A y B tienen el mismo valor (ambos verdaderos o ambos falsos) [bicondicional ↔].
En todos los demás casos, f es falso.
Notación formal: A ↔ B
Reescrito con AND y OR: (A AND B) OR (NOT A AND NOT B)
| # | A | B | f |
|---|---|---|---|
| 0 | FALSO | FALSO | VERDADERO |
| 1 | FALSO | VERDADERO | FALSO |
| 2 | VERDADERO | FALSO | FALSO |
| 3 | VERDADERO | VERDADERO | VERDADERO |
Principiantef es verdadero exactamente cuando se cumple al menos una de las condiciones siguientes (pueden cumplirse ambas):
1. A y B son ambos verdaderos
2. A es falso y B es falso
En todos los demás casos, f es falso.
Sobre los operadores:
- OR (O) es inclusivo: es verdadero en cuanto al menos una parte es verdadera, también cuando lo son varias.
- AND (Y) solo es verdadero cuando todas sus partes son verdaderas.
- NOT (NO) invierte un valor: lo verdadero pasa a ser falso y lo falso, verdadero.
Intermediof es verdadero exactamente cuando se cumple al menos una de las condiciones siguientes (pueden cumplirse ambas):
1. A y B son ambos verdaderos
2. A es falso y B es falso
En todos los demás casos, f es falso.
Avanzadof es verdadero exactamente cuando se cumple al menos una de las condiciones siguientes (pueden cumplirse ambas) [disyunción inclusiva ∨]:
1. A y B son ambos verdaderos [conjunción ∧]
2. A es falso y B es falso [conjunción ∧]
En todos los demás casos, f es falso.
Notación formal: (A ∧ B) ∨ (¬A ∧ ¬B)
El error habitual
Escribir = o == entre dos fórmulas para decir que son equivalentes. El lenguaje no tiene operador =; A <-> B es la fórmula bicondicional, y para probar si dos fórmulas coinciden siempre se comparan con el comprobador de equivalencia, que informa de la primera fila distinta cuando no es así.
Preguntas
¿Cuál es la diferencia entre A -> B y A <-> B?
A -> B es FALSA solo cuando A es VERDADERO y B es FALSO; A <-> B también es FALSA cuando A es FALSO y B es VERDADERO. El bicondicional añade el recíproco, así que tiene una fila FALSA más.
¿El bicondicional es asociativo?
Como hecho matemático, sí: (A <-> B) <-> C y A <-> (B <-> C) tienen la misma tabla. El analizador exige igualmente los paréntesis, porque pocos lectores lo saben y las dos agrupaciones se leen de forma distinta; el comprobador de equivalencia te lo confirmará.
Relacionado
Leyes
Herramientas
- Generador de tablas de verdad: cualquier expresión booleana, hasta 12 variables, con columnas intermedias
- Generador de circuitos lógicos: de expresión booleana a diagrama de compuertas (SVG)
Véase también
- Eliminación del bicondicional: A ↔ B = A·B + A'·B'
- Eliminación de XNOR: XNOR(A, B) = A ↔ B
- Compuerta XNOR: tabla de verdad, símbolo y equivalencia con el bicondicional
- Implicación (→, condicional): tabla de verdad y por qué un antecedente falso la hace verdadera
- Implicación frente a bicondicional
- El doble igual (==) compara valores; para equivalencia lógica usa ↔
- «=» no es un operador booleano: usa ↔ o compara las fórmulas
- Variantes de flechas: => y <=> frente a → y ↔, qué significa cada una
- Comprobador de equivalencia lógica: dos expresiones, veredicto exacto, contraejemplo
Operadores y compuertas
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.