Skip to main content

Abrir el simulador

Escribe premisas y conclusión y comprueba el razonamiento con la tabla de verdad, la forma clausal y la resolución.
«Si el sensor se activa y no hay vigilante, la alarma salta». «Es de España solo si es europeo». ¿Es lo mismo if (a < b || (a >= b && c == d)) que if (a < b || c == d)? Detrás de las tres frases está la misma pregunta: qué se puede deducir de qué. La lógica proposicional es la herramienta más sencilla para responderla, y la base de la programación lógica, la verificación de software, los circuitos digitales y buena parte de la inteligencia artificial.

Lo que vas a aprender

  • Traducir frases del lenguaje natural a fórmulas, incluidas las que más confunden (“solo si”, “es necesario”, “a menos que”).
  • Leer una fórmula con la prioridad de las conectivas y calcular su valor en una interpretación.
  • Clasificar fórmulas en válidas, satisfacibles e insatisfacibles, y conjuntos en consistentes e inconsistentes.
  • Decidir si un razonamiento es correcto con una tabla de verdad.
  • Pasar cualquier fórmula a forma normal conjuntiva y a forma clausal.
  • Demostrar un razonamiento por resolución, derivando la cláusula vacía.

Cómo se usa el simulador

  • Con premisas y conclusión, el simulador dice si el razonamiento es correcto y, si no lo es, da un contraejemplo.
  • Con una sola fórmula, la clasifica: válida, satisfacible o insatisfacible.
  • Con varias fórmulas sin conclusión, dice si el conjunto es consistente.
  • Las proposiciones son letras minúsculas (p, q, r, p1…). V y F son las constantes verdadero y falso.
Las fórmulas se guardan en la dirección de la página: copia el enlace para compartir un ejercicio concreto.

Fundamentos teóricos

Proposiciones y conectivas

Una proposición es la unidad mínima de información de la que se puede decir si es verdadera o falsa: “llueve”, “Juan es médico”. No lo son las preguntas, las exclamaciones ni las frases cuya verdad depende de una variable (”XX es mayor que 3”), que pertenecen a la lógica de predicados. Las proposiciones se combinan con cinco conectivas:
”pp solo si qq” es p→qp \to q, no q→pq \to p: “es de España solo si es europeo” dice que ser de España obliga a ser europeo, no al revés. Lo necesario va a la derecha de la flecha y lo suficiente, a la izquierda.

Sintaxis y prioridad

Las fórmulas bien formadas se construyen a partir de las atómicas (las proposiciones y las constantes VV y FF): si FF y GG son fórmulas, también lo son ¬F\lnot F, (F∧G)(F \land G), (F∨G)(F \lor G), (F→G)(F \to G) y (F↔G)(F \leftrightarrow G). Para ahorrar paréntesis se usa una prioridad, de más a menos: ¬>∧>∨>→>↔\lnot \quad > \quad \land \quad > \quad \lor \quad > \quad \to \quad > \quad \leftrightarrow Así, ¬p∧q→r\lnot p \land q \to r se lee ((¬p∧q)→r)((\lnot p \land q) \to r). Entre conectivas del mismo nivel manda la de la izquierda: p→q→rp \to q \to r es (p→q)→r(p \to q) \to r. El simulador escribe esos paréntesis aunque no hagan falta, porque sin ellos la fórmula se lee mal.

Semántica: interpretaciones y tablas de verdad

Una interpretación asigna V o F a cada proposición. Con nn proposiciones distintas hay 2n2^n interpretaciones. El valor de una fórmula se calcula con las tablas de las conectivas: La implicación solo es falsa en un caso: antecedente verdadero y consecuente falso. Si el antecedente es falso, la implicación es verdadera (“de lo falso se sigue cualquier cosa”). Si una interpretación hace verdadera una fórmula, es un modelo de ella; si la hace falsa, un contramodelo.

Clasificación de fórmulas

Toda fórmula válida es satisfacible. Las dos clases se relacionan con el principio del espejo: F es vaˊlida  ⟺  ¬F es insatisfacibleF \text{ es válida} \iff \lnot F \text{ es insatisfacible} Un conjunto de fórmulas es consistente si existe una misma interpretación que las hace verdaderas a todas, e inconsistente si no existe. Cuidado: {p, ¬p}\{p,\ \lnot p\} es inconsistente aunque cada fórmula, por separado, sea satisfacible.

Equivalencia lógica

Dos fórmulas son equivalentes, F≡GF \equiv G, si tienen el mismo valor en todas las interpretaciones, es decir, si F↔GF \leftrightarrow G es válida. Las equivalencias que más se usan:

Consecuencia lógica: cuándo un razonamiento es correcto

QQ es consecuencia lógica de las premisas P1,…,PnP_1, \dots, P_n, y se escribe {P1,…,Pn}⊨Q\{P_1, \dots, P_n\} \models Q, si todo modelo común de las premisas es también modelo de QQ. Un razonamiento es correcto cuando la conclusión es consecuencia lógica de las premisas. Hay dos formas equivalentes de comprobarlo: Teorema I:{P1,…,Pn}⊨Q  ⟺  P1∧⋯∧Pn→Q es vaˊlida\textbf{Teorema I:}\quad \{P_1, \dots, P_n\} \models Q \iff P_1 \land \dots \land P_n \to Q \text{ es válida} Teorema II:{P1,…,Pn}⊨Q  ⟺  {P1,…,Pn,¬Q} es inconsistente\textbf{Teorema II:}\quad \{P_1, \dots, P_n\} \models Q \iff \{P_1, \dots, P_n, \lnot Q\} \text{ es inconsistente} La tabla de verdad usa el Teorema I: se buscan las filas en las que todas las premisas son verdaderas y se mira la conclusión. Si en alguna es falsa, esa fila es un contraejemplo y el razonamiento no es correcto. El método funciona siempre, pero con nn proposiciones hay 2n2^n filas: con 10 ya son 1024.

Forma normal conjuntiva y forma clausal

Un literal es una proposición o su negación; LcL^c es su complementario (pp y ¬p\lnot p). Una fórmula está en forma normal conjuntiva (FNC) si es una conjunción de disyunciones de literales, como (p∨¬q)∧(¬p∨r∨s)∧p(p \lor \lnot q) \land (\lnot p \lor r \lor s) \land p. Cada disyunción es una cláusula, y el conjunto de cláusulas es la forma clausal (FC). La cláusula sin literales es la cláusula vacía □\square, que es insatisfacible. Cualquier fórmula se puede pasar a FNC en cinco pasos, los mismos que muestra el simulador:
1

Eliminar ↔

F↔G≡(F→G)∧(G→F)F \leftrightarrow G \equiv (F \to G) \land (G \to F)
2

Eliminar →

F→G≡¬F∨GF \to G \equiv \lnot F \lor G
3

Meter las negaciones

Con las leyes de De Morgan, hasta que solo afecten a proposiciones, y quitando las dobles negaciones.
4

Distribuir ∨ sobre ∧

F∨(G∧H)≡(F∨G)∧(F∨H)F \lor (G \land H) \equiv (F \lor G) \land (F \lor H)
5

Simplificar

Quitar las cláusulas que contienen un literal y su complementario (son tautologías), los literales repetidos y las cláusulas absorbidas por otras más cortas.

Resolución

La resolución (Robinson, 1965) usa una sola regla de inferencia, muy fácil de automatizar: L∨FLc∨GF∨G\frac{L \lor F \qquad L^c \lor G}{F \lor G} Se quita un par de literales complementarios y se junta lo que queda de las dos cláusulas: el resultado es la resolvente. Funciona porque, si LL es falso, tiene que ser verdad FF, y si LL es verdadero, tiene que serlo GG; en los dos casos F∨GF \lor G es verdad. Para demostrar un razonamiento se trabaja por refutación, con el Teorema II:
  1. Se pasan a forma clausal las premisas y la negación de la conclusión.
  2. Se resuelven pares de cláusulas y se añaden las resolventes.
  3. Si aparece la cláusula vacía □\square, el conjunto es inconsistente y el razonamiento es correcto.
  4. Si se han resuelto todos los pares posibles sin llegar a □\square, el conjunto es consistente y el razonamiento no es correcto.
El simulador prueba todos los pares nivel a nivel (cada cláusula nueva contra todas las anteriores), descarta las tautologías y las cláusulas absorbidas, y al final muestra solo las resolventes que llevan a □\square.
Para ver si una sola fórmula FF es válida por resolución, se aplica el principio del espejo: se pasa ¬F\lnot F a forma clausal y se busca □\square.

Ejemplos resueltos

Ejemplo 1 · El paraguas, con la tabla de verdad

“Si llueve y no hace viento, llevo abierto el paraguas. No llevo abierto el paraguas, pero llueve. Por tanto, hace viento.”Formalización: con pp: llueve, qq: hace viento y rr: llevo el paraguas abierto,{p∧¬q→r, ¬r∧p}⊨q\{p \land \lnot q \to r,\ \lnot r \land p\} \models qTabla: la segunda premisa, ¬r∧p\lnot r \land p, solo es verdadera si p=Vp = V y r=Fr = F. Quedan dos filas: con q=Vq = V, la primera premisa vale F→F=VF \to F = V; con q=Fq = F, vale V→F=FV \to F = F. Las dos premisas solo son verdaderas a la vez en la fila p=V, q=V, r=Fp = V,\ q = V,\ r = F, y ahí la conclusión qq es verdadera.Conclusión: no hay contraejemplo. El razonamiento es correcto.
Forma clausal de las premisas: p∧¬q→r≡¬(p∧¬q)∨r≡¬p∨q∨rp \land \lnot q \to r \equiv \lnot(p \land \lnot q) \lor r \equiv \lnot p \lor q \lor r. La segunda da dos cláusulas: ¬r\lnot r y pp.Negación de la conclusión: ¬q\lnot q.
  1. ¬p∨q∨r\lnot p \lor q \lor r (premisa 1)
  2. ¬r\lnot r (premisa 2)
  3. pp (premisa 2)
  4. ¬q\lnot q (negación de la conclusión)
  5. ¬p∨q\lnot p \lor q, resolviendo 1 y 2 sobre rr
  6. qq, resolviendo 3 y 5 sobre pp
  7. □\square, resolviendo 4 y 6 sobre qq
Sale la cláusula vacía: el razonamiento es correcto.
Pasar ¬(p↔¬q)\lnot(p \leftrightarrow \lnot q) a forma clausal.Eliminar ↔: ¬((p→¬q)∧(¬q→p))\lnot\big((p \to \lnot q) \land (\lnot q \to p)\big)Eliminar →: ¬((¬p∨¬q)∧(¬¬q∨p))\lnot\big((\lnot p \lor \lnot q) \land (\lnot\lnot q \lor p)\big)Meter las negaciones: (p∧q)∨(¬q∧¬p)(p \land q) \lor (\lnot q \land \lnot p)Distribuir: (p∨¬q)∧(p∨¬p)∧(q∨¬q)∧(q∨¬p)(p \lor \lnot q) \land (p \lor \lnot p) \land (q \lor \lnot q) \land (q \lor \lnot p)Simplificar: las cláusulas p∨¬pp \lor \lnot p y q∨¬qq \lor \lnot q son tautologías y desaparecen. FC: {p∨¬q, ¬p∨q}\{p \lor \lnot q,\ \lnot p \lor q\}, que es justo p↔qp \leftrightarrow q.
“Si estudio, apruebo. He aprobado. Por tanto, he estudiado”: {p→q, q}⊨p\{p \to q,\ q\} \models p.En la fila p=F, q=Vp = F,\ q = V las dos premisas son verdaderas (F→V=VF \to V = V y q=Vq = V) y la conclusión es falsa. Es un contraejemplo: el razonamiento no es correcto. Es la falacia de afirmar el consecuente.Por resolución: las cláusulas ¬p∨q\lnot p \lor q, qq y ¬p\lnot p no tienen ningún par complementario que dé algo nuevo, así que nunca aparece □\square.
¿Es válida ¬p∨q∧¬q→¬p\lnot p \lor q \land \lnot q \to \lnot p?Con la prioridad, es (¬p∨(q∧¬q))→¬p(\lnot p \lor (q \land \lnot q)) \to \lnot p. Como q∧¬q≡Fq \land \lnot q \equiv F y ¬p∨F≡¬p\lnot p \lor F \equiv \lnot p, la fórmula equivale a ¬p→¬p\lnot p \to \lnot p, que es verdadera siempre. Es válida.En cambio, p→q∨rp \to q \lor r es satisfacible pero no válida: es falsa solo con p=V, q=F, r=Fp = V,\ q = F,\ r = F.

Experimenta con el simulador

1

Busca el contraejemplo

Carga la “Falacia del consecuente” y mira en la tabla qué fila sale en rojo. Cambia la segunda premisa por ¬q\lnot q y la conclusión por ¬p\lnot p (es el modus tollens): ¿desaparece el contraejemplo?
2

Tres métodos, un resultado

Con el ejemplo del laboratorio 5b, compara la tabla de verdad (64 filas) con la resolución. ¿Cuántas cláusulas hacen falta para llegar a □\square?
3

El principio del espejo

Escribe solo p∨¬pp \lor \lnot p, sin conclusión. Después escribe ¬(p∨¬p)\lnot(p \lor \lnot p). ¿Qué sale en cada caso en la pestaña de resolución?
4

Consistente o no

Escribe p→qp \to q, pp y ¬q\lnot q como premisas sin conclusión. Quita una de las tres: ¿qué interpretación hace verdaderas a las otras dos?
5

La prioridad importa

Escribe p→q→rp \to q \to r y p→(q→r)p \to (q \to r) como dos fórmulas sueltas y activa las subfórmulas en la tabla. ¿Son equivalentes?

Errores frecuentes

  • Traducir “p solo si q” como q→pq \to p. Es p→qp \to q.
  • Pensar que p→qp \to q es falsa cuando pp es falsa. Solo es falsa con pp verdadera y qq falsa.
  • Confundir satisfacible con válida. Que una fórmula sea verdadera en alguna fila no basta para que sea una tautología.
  • Olvidar negar la conclusión antes de resolver. Si se resuelve con QQ en lugar de ¬Q\lnot Q, no se está demostrando nada.
  • Resolver sobre dos pares a la vez. De p∨qp \lor q y ¬p∨¬q\lnot p \lor \lnot q no se deduce □\square: cada resolución quita un solo par, y aquí cualquier resolvente es una tautología.
  • Distribuir al revés. Para la FNC se distribuye ∨\lor sobre ∧\land, no ∧\land sobre ∨\lor (eso da la forma normal disyuntiva).

Limitaciones

La lógica proposicional no puede hablar de objetos ni de sus propiedades. “Todos los hombres son mortales; Sócrates es hombre; luego Sócrates es mortal” es un razonamiento correcto que aquí no se puede demostrar: hacen falta los cuantificadores (∀\forall, ∃\exists) de la lógica de predicados. Además, comprobar si una fórmula es satisfacible (el problema SAT) es NP-completo: no se conoce ningún método que lo haga en tiempo polinómico. La tabla de verdad crece como 2n2^n y la resolución puede generar muchísimas cláusulas. El simulador dibuja tablas de hasta 7 proposiciones y se detiene al llegar a 3000 cláusulas. Aun así, los resolvedores SAT modernos resuelven problemas industriales con millones de variables.

Un poco de historia

Aristóteles estudió los silogismos en el siglo IV a. C., pero la lógica como cálculo nace con George Boole, que en 1854 trató las proposiciones con las reglas del álgebra. Gottlob Frege dio en 1879 el primer sistema formal completo. En 1935 Gerhard Gentzen propuso la deducción natural, que imita cómo razonan las personas, y en 1965 John Alan Robinson inventó la resolución, pensada para que razonen las máquinas. De ella salió el lenguaje Prolog (1972), que ejecuta programas resolviendo cláusulas de Horn.

Preguntas frecuentes

Γ⊨Q\Gamma \models Q es la consecuencia lógica, definida con interpretaciones (semántica). Γ⊢Q\Gamma \vdash Q significa que QQ se deriva de Γ\Gamma aplicando reglas de inferencia (sintaxis). La resolución es correcta y completa para la refutación: Γ⊨Q\Gamma \models Q si y solo si de Γ∪{¬Q}\Gamma \cup \{\lnot Q\} se deriva □\square.
Porque no hay ninguna interpretación que las haga verdaderas a la vez, así que no puede haber ningún contraejemplo. Por resolución, □\square ya sale de las premisas sin usar la conclusión.
Una cláusula con, como mucho, un literal positivo, como ¬p∨¬q∨r\lnot p \lor \lnot q \lor r, que equivale a p∧q→rp \land q \to r. Son las reglas de Prolog, y con ellas la satisfacibilidad se decide en tiempo lineal.
Sí. Con pp = a < b y qq = c == d, la condición a < b || (a >= b && c == d) es p∨(¬p∧q)p \lor (\lnot p \land q), equivalente a p∨qp \lor q. Escríbela en el simulador como p∨(¬p∧q)↔p∨qp \lor (\lnot p \land q) \leftrightarrow p \lor q y verás que es válida.
Es la misma estructura con otra notación: ∧ es el producto, ∨ la suma y ¬ la negación (o la barra). Lo que en lógica es una tautología, en electrónica es un circuito cuya salida vale siempre 1.

Temas relacionados

Tabla de verdad desde una expresión

La misma idea con la notación del álgebra de Boole, y el circuito de puertas.

Mapas de Karnaugh

Simplificación de funciones lógicas de hasta cuatro variables.

Puertas lógicas

AND, OR, NOT, XOR y sus tablas de verdad.
Última modificación el 7 de octubre de 2026