Curso completo de Lógica Probabilística
La lógica probabilística de ST toma fórmulas clásicas y les asigna una probabilidad global a partir de mundos posibles y probabilidades discretas sobre los átomos.
Por qué importa
Sirve para explorar incertidumbre sin abandonar la estructura lógica de base. Es una buena transición entre lógica formal y modelos probabilísticos simples.
Objetivos de aprendizaje
- Entender qué significa probabilidad de una fórmula.
- Distinguir probabilidad positiva de validez.
- Ver el papel de la independencia entre átomos.
- Leer las salidas de truth_table y countermodel en este perfil.
Accesos rápidos
Panorama del curso
Esta guía reúne la cobertura completa del perfil: conceptos, operadores, comandos, ejemplos largos, límites reales del motor y un script integral descargable para seguir probando fuera de la página. Los bloques de código se pueden ejecutar inline y abrir en el editor desplegable para probar variaciones sin salir de la documentación.
Capacidades nuevas de este perfil
- explain muestra el cálculo paso a paso usando complemento, inclusión-exclusión, independencia y condicional material.
- El motor ya verifica K1, K2 y K3, y añade sensibilidad, probabilidad condicional y Bayes en escenarios simples.
- La tabla probabilística puede desglosar sub-fórmulas en lugar de quedarse en una sola columna final.
Kolmogorov y Bayes desde ST
Una sola explicación permite ver cálculo, axiomas y sensibilidad probabilística.
logic probabilistic.basic
set verbose = on
explain (P & Q)
truth_table (P -> Q)Cobertura exacta del perfil
El perfil probabilístico trabaja con independencia, complemento, inclusión-exclusión, condicional material, bicondicional, K1/K2/K3, Bayes, sensibilidad y tablas con subfórmulas.
Reglas y conectivos cubiertos
Aunque el foco pedagógico está en `!`, `&`, `|`, `->` y `<->`, la evaluación booleana base también entiende `nand`, `nor` y `xor`.
- `P(!A) = 1 - P(A)`
- `P(A & B) = P(A) * P(B)` bajo independencia
- `P(A | B) = P(A) + P(B) - P(A & B)`
- `P(A -> B) = P(!A | B)`
- `P(A <-> B) = P(A -> B) * P(B -> A)`
Cobertura operativa del perfil probabilístico
Este bloque referencia validez, satisfacibilidad, equivalencia, explicación paso a paso y tablas con subfórmulas.
logic probabilistic.basic
set verbose = on
check valid (P | !P)
check valid (P -> P)
check valid ((P & !P) -> Q)
check valid P
check equivalent (P -> Q), (!P | Q)
check equivalent !(P & Q), (!P | !Q)
check equivalent (P <-> Q), ((P -> Q) & (Q -> P))
check satisfiable P
check satisfiable (P & Q)
check satisfiable !(P & Q)
explain !P
explain (P | Q)
explain (P & Q)
explain (P -> Q)
truth_table (P -> Q)
truth_table (P & !P)
truth_table (P | !P)
countermodel P
countermodel (P & Q)Aquí quedan referenciadas las reglas de complemento, inclusión-exclusión, independencia, condicional material, Kolmogorov y Bayes.
Conceptos fundamentales
1. Mundo booleano subyacente
Cada mundo sigue siendo clásico: una fórmula o vale o no vale en ese mundo.
2. Agregación probabilística
La probabilidad de una fórmula se obtiene sumando probabilidades de mundos donde la fórmula es verdadera.
3. Validez probabilística
Una fórmula es válida si tiene probabilidad 1 en todo el muestreo considerado.
4. Muestreo discreto
El motor no integra sobre continuo; usa puntos discretos como 0, 0.25, 0.5, 0.75 y 1.
Operadores y formas expresivas
P -> QImplicación clásica por mundo
Se evalúa clásicamente dentro de cada mundo antes de agregarse probabilísticamente.
logic probabilistic.basic
truth_table P -> QP | !PTautología probabilística
Conserva probabilidad 1 en todo muestreo.
logic probabilistic.basic
check valid P | !PComandos que debes dominar
Validez probabilística
Comprueba fórmulas que siempre alcanzan probabilidad 1.
logic probabilistic.basic
check valid P | !P
check valid P -> PNo toda fórmula alcanza 1
Muestra que una contingencia no es válida en este sentido fuerte.
logic probabilistic.basic
check valid P -> Q
countermodel P -> QProbabilidad positiva
Satisfacibilidad se interpreta como existencia de asignaciones con probabilidad positiva.
logic probabilistic.basic
check satisfiable P & QST como herramienta pedagógica en esta lógica
Esta sección no solo enseña la lógica, sino también cómo usar `ST` para explicarla mejor: con aliases semánticos, funciones reutilizables, condicionales, recorridos guiados y salidas legibles para clase, taller o autoestudio.
Tautología y contingencia en clave probabilística
Usa variables descriptivas para enseñar que probabilidad 1 no es lo mismo que simple posibilidad.
logic probabilistic.basic
let tautologia = "Toda valuación satisface P o no P" : (P | !P)
let contingencia = "P implica Q" : (P -> Q)
fn revisarProbabilidad(F) {
explain F
return F
}
revisarProbabilidad(tautologia)
revisarProbabilidad(contingencia)
if valid (P | !P) {
print "la fórmula tiene probabilidad 1"
}Comparación guiada de estatus
Presenta en una sola cápsula la diferencia entre validez probabilística y mera satisfacibilidad.
logic probabilistic.basic
check valid P | !P
check satisfiable P
countermodel P -> Q
if valid P {
print "P sería segura en todo muestreo"
} else {
print "P puede ocurrir sin ser necesaria"
}Lecciones prácticas largas
Validez vs posibilidad
Contrasta una tautología con una simple contingencia.
logic probabilistic.basic
check valid P | !P
check valid P
check satisfiable PEquivalencia estructural
Incluso aquí la implicación material mantiene su equivalencia clásica.
logic probabilistic.basic
check equivalent (P -> Q) <-> (!P | Q), P | !PErrores frecuentes al estudiar esta lógica
- Confundir probabilidad alta con validez.
- Olvidar que el motor asume independencia entre átomos.
- Leer el muestreo discreto como si fuera un cálculo continuo exacto.
Límites del motor y advertencias
- El muestreo se reduce cuando 5^n supera 10000.
- truth_table puede mezclar lectura clásica y probabilística en la salida.
Cómo conecta con otras lógicas
- Conecta lógica formal con incertidumbre cuantitativa.
- Se entiende mejor después de dominar proposicional clásica.