La lógica matemática permite razonar con precisión, construir condiciones correctas, validar argumentos y diseñar programas que tomen decisiones de forma clara y confiable.
La lógica matemática estudia las reglas que permiten distinguir razonamientos correctos de razonamientos incorrectos. Trabaja con enunciados, valores de verdad, conectores lógicos, argumentos, inferencias y demostraciones.
En programación, la lógica aparece cada vez que un programa evalúa una condición, decide qué instrucción ejecutar, valida datos, combina reglas o verifica que un algoritmo produce el resultado esperado.
En este curso utilizaremos el lenguaje JavaScript para mostrar ejemplos prácticos.
La lógica matemática no se ocupa de calcular precios, distancias o porcentajes. Su objetivo principal es analizar la estructura de los razonamientos.
Muchos elementos de la lógica se basan en proposiciones. Una proposición es un enunciado que puede clasificarse como verdadero o falso.
| Enunciado | ¿Es proposición? | Motivo |
|---|---|---|
| El número 8 es par | Sí | Puede evaluarse como verdadero |
| 5 es mayor que 10 | Sí | Puede evaluarse como falso |
| Ingrese su edad | No | Es una orden, no una afirmación verdadera o falsa |
| ¿El usuario está registrado? | No | Es una pregunta |
Una condición de programación es una expresión que se evalúa como verdadera o falsa. Según ese resultado, el programa toma una decisión.
const edad = 20;
if (edad >= 18) {
console.log("Puede registrarse");
} else {
console.log("Debe ser mayor de edad");
}
La expresión edad >= 18 funciona como una proposición dentro del programa: para un valor concreto de edad, el resultado será verdadero o falso.
Los operadores lógicos permiten combinar condiciones. En JavaScript se usan con mucha frecuencia dentro de estructuras como if, while y expresiones booleanas.
| Operador lógico | Nombre | JavaScript | Ejemplo |
|---|---|---|---|
| Negación | NOT | ! | !activo |
| Conjunción | AND | && | edad >= 18 && aceptoTerminos |
| Disyunción | OR | || | esAdmin || esEditor |
Supongamos que una plataforma permite acceder a un contenido solo si el usuario está registrado y tiene una suscripción activa.
const registrado = true;
const suscripcionActiva = false;
if (registrado && suscripcionActiva) {
console.log("Acceso permitido");
} else {
console.log("Acceso denegado");
}
La condición completa solo será verdadera cuando ambas condiciones simples sean verdaderas. Esta idea corresponde a la conjunción lógica.
Muchos errores de programación no se producen por escribir mal una instrucción, sino por expresar mal una condición. Una condición incorrecta puede permitir accesos indebidos, rechazar datos válidos o ejecutar una acción en el momento equivocado.
const edad = 16;
const tienePermiso = true;
if (edad >= 18 || tienePermiso) {
console.log("Puede participar");
}
El operador || significa OR. En este caso alcanza con que una de las condiciones sea verdadera. Si la regla real exige mayoría de edad y permiso al mismo tiempo, entonces debería usarse &&.
Un algoritmo necesita reglas claras para decidir qué hacer en cada paso. La lógica ayuda a expresar esas reglas y a comprobar que no se contradigan.
Una expresión lógica puede ser correcta pero difícil de leer. Cuando una condición crece demasiado, conviene separarla en variables con nombres claros.
const edad = 22;
const emailVerificado = true;
const cuentaBloqueada = false;
const esMayorDeEdad = edad >= 18;
const puedeIngresar = esMayorDeEdad && emailVerificado && !cuentaBloqueada;
if (puedeIngresar) {
console.log("Ingreso permitido");
}
Nombrar condiciones intermedias mejora la comprensión del programa y reduce la probabilidad de errores lógicos.
| Área | Uso de la lógica | Ejemplo |
|---|---|---|
| Frontend | Mostrar u ocultar elementos según condiciones | Activar un botón solo si el formulario es válido |
| Backend | Validar reglas de negocio | Permitir una compra si hay stock y pago aprobado |
| Bases de datos | Filtrar registros mediante condiciones | Buscar usuarios activos de una ciudad específica |
| Inteligencia artificial | Representar conocimiento y reglas | Inferir una conclusión a partir de hechos |
| Circuitos digitales | Combinar señales binarias | Construir compuertas AND, OR y NOT |
Depurar un programa exige razonar paso a paso. Si un resultado no es el esperado, debemos revisar qué condiciones se evaluaron, qué valores tenían las variables y qué camino tomó el programa.
const puntaje = 72;
if (puntaje >= 90) {
console.log("Excelente");
} else if (puntaje >= 60) {
console.log("Aprobado");
} else {
console.log("Reprobado");
}
Este tipo de estructura depende de condiciones ordenadas correctamente. Cambiar el orden puede modificar el comportamiento del programa.
A lo largo del curso estudiaremos la lógica desde sus fundamentos hasta sus aplicaciones en programación.
La lógica matemática es importante en programación porque permite expresar decisiones con precisión. Cada vez que un programa evalúa una condición, combina reglas, valida datos o decide qué camino seguir, está aplicando ideas lógicas.
En el próximo tema veremos la historia y los fundamentos de la lógica formal.