LÓGICA PROPOSICIONAL
En el idioma científico, una proposición se refiere a un enunciado que puede ser verdadero o falso, generalmente una oración enunciativa, base de lo que constituye el lenguaje formal de la lógica simbólica.
Una proposición lógica es Expresión enunciativa a la que puede atribuirse un sentido o función lógica de verdad o falsedad.
Aunque existen lógicas polivalentes, en orden a la claridad del concepto, aquí consideramos únicamente el valor de Verdad o Falsedad.
Otro tipo de entes que se utilizan en computación que también está asociado a “dos” opciones, es lo que se conoce como expresiones booleanas. Estas expresiones, que deben su nombre a George Boole, se pueden ver caracterizadas como verdaderas ó falsas y de acuerdo a esta condición se desarrolla el estudio sobre dichos conceptos. Este tema se conoce como cálculo de proposiciones.
Los argumentos son una de las formas más comunes en matemáticas, en lógica y en computación de establecer razonamientos para llegar a la verdad. Si tenemos un conectivo lógico OR de dos valores de entrada y después un inversor, cuál es la salida. O si en un programa con una instrucción tipo if se tiene la condición X > 3 and X < 10 cómo se sabe si se ejecutó el comando.
Desarrollo.
La lógica matemática es la disciplina que trata de métodos de razonamiento. En un nivel elemental, la lógica proporciona reglas y técnicas para determinar si es o no valido un argumento dado. El razonamiento lógico se emplea en matemáticas para demostrar teoremas; en ciencias de la computación para verificar si son o no correctos los programas; en las ciencias física y naturales, para sacar conclusiones de experimentos; y en las ciencias sociales y en la vida cotidiana, para resolver una multitud de problemas. Ciertamente se usa en forma constante el razonamiento lógico para realizar cualquier actividad.
Proposiciones y operaciones lógicas.
Una proposición o enunciado es una oración que puede ser falsa o verdadera pero no ambas a la vez. La proposición es un elemento fundamental de la lógica matemática.
A continuación se tienen algunos ejemplos de proposiciones válidas y no válidas, y se explica el porqué algunos enunciados no son proposiciones. Las proposiciones se indican por medio de una letra minúscula, dos puntos y la proposición propiamente dicha. Ejemplo.
p: La tierra es plana.
q: −17 + 38 = 21
r: x > -9y
s: El Tauro será campeón en la presente temporada de Futbol.
t: Hola ¿como estas?
w: Lava el coche por favor.
Los incisos p y q sabemos que pueden tomar un valor de falso o verdadero; por lo tanto son proposiciones validas. El inciso r también es una proposición valida, aunque el valor de falso o verdadero depende del valor asignado a las variables “x” y “y” en determinado momento. La proposición del inciso s también esta perfectamente expresada aunque para decir si es falsa o verdadera se tendría que esperar a que terminara la temporada de futbol. Sin embargo los enunciados t y w no son válidos, ya que no pueden tomar un valor de falso o verdadero, uno de ellos es un saludo y el otro es una orden.
Conectivos lógicos y proposiciones compuestas.
Existen conectores u operadores lógicas que permiten formar proposiciones compuestas (formadas por varias proposiciones). Los operadores o conectores básicos son:
Operador and (y)
Se utiliza para conectar dos proposiciones que se deben cumplir para que se pueda obtener un resultado verdadero. El símbolo es: {^, un punto (.), un paréntesis}. Se le conoce como la multiplicación lógica:
Ejemplo.
Sea el siguiente enunciado “El coche enciende cuando tiene gasolina en el tanque y tiene corriente la batería”
Sean:
p: El coche enciende.
q: Tiene gasolina el tanque.
r: Tiene corriente la batería.
De tal manera que la representación del enunciado anterior usando simbología lógica es como sigue:
p = q^ r
Operador Or (o)
Con este operador se obtiene un resultado verdadero cuando alguna de las proposiciones es verdadera. Se indica por medio de los siguientes símbolos: {v,+,È}. Se conoce como las suma lógica. Ejemplo.
Sea el siguiente enunciado “Una persona puede entrar al cine si compra su boleto u obtiene un pase”.
p: Entra al cine.
q: Compra su boleto.
r: Obtiene un pase.
p = q V r
Operador Not (no)
Su función es negar la proposición. Esto significa que sí alguna proposición es verdadera y se le aplica el operador not se obtendrá su complemento o negación (falso). Este operador se indica por medio de los siguientes símbolos: {~, Ø,-}.
Como se menciono en computación se utiliza la representación binaria porque aparecen solo dos elementos distintos. El trabajar con solo 2 opciones facilita la implementación de los conceptos.
Otro tipo de entes que se utilizan en computación también esta asociado a “dos” opciones, es lo que se conoce como expresiones booleanas.
Estas expresiones, que deben su nombre a George Boole, se pueden ver caracterizadas como verdaderas ó falsas y de acuerdo a esta propiedad se desarrolla el estudio sobre dichos conceptos.
Tablas de Verdad
Conectivos Lógicos y Jerarquías
Para formar expresiones compuestas necesitamos conectivos lógicos, empezaremos por un conectivo unitario; esto es, se aplica a una proposición sola.
La Negación
La operación unitaria de negación, no es cierto que se representa por “-” y tiene la siguiente tabla de verdad de verdad
p
|
¬p
|
V
|
F
|
F
|
V
|
Ejemplo. Encuentre la negación de las expresiones siguientes:
ii) El pizarrón es verde
iii) El número real x es negativo
iv) Algún elefante es de color rosa
v) Ningún pez respira fuera del agua
vi) Todos los leones son feroces
|
La conjunción de las proposiciones p, q es la operación binaria que tiene por resultado p y q, se representa por p^q, y su tabla de verdad es:
p
|
q
|
p^q
|
V
|
V
|
V
|
V
|
F
|
F
|
F
|
V
|
F
|
F
|
F
|
F
|
La conjunción nos sirve para indicar que se cumplen dos condiciones simultáneamente, así por ejemplo si tenemos:
La función es creciente y está definida para los números positivos, utilizamos
p ^ q, donde
p: la función es creciente
q: la función esta definida para los números positivos
Así también: p ^ q, donde
q: la función esta definida para los números positivos
Así también: p ^ q, donde
p: el número es divisible por 3
q: el número está representado en base 2
q: el número está representado en base 2
se lee: El número es divisible entre 3 y está representado en base 2.
Nota: Observamos que para la conjunción p ^ q sea verdadera las dos expresiones que intervienen deben ser verdaderas y sólo en ese caso como se indica por su tabla de verdad.
La disyunción de dos proposiciones p, q es la operación binaria que da por resultado p ó q, notación p v q, y tiene la siguiente tabla:
p
|
q
|
p v q
|
V
|
V
|
V
|
V
|
F
|
V
|
F
|
V
|
V
|
F
|
F
|
F
|
Con la disyunción a diferencia de la conjunción, representamos dos expresiones y que afirman que una de las dos es verdadera, por lo que basta con que una de ellas sea verdadera para que la expresión p ∨ q sea verdadera.
Así por ejemplo la expresión: el libro se le entregará a Juan o el libro se le entregará a Luis significa que si va uno de los dos, el libro se le entrega, si van los dos también se entrega y solamente en caso de que no vaya ninguno de los dos no se debe entregar.
La o excluyente, que algunos también le llaman o exclusiva, y que indica que una de las dos proposiciones se cumple, pero no las dos. Este caso corresponde por ejemplo a: Hoy compraré un libro o iré al cine; se sobrentiende que una de las dos debe ser verdadera, pero no la dos. Se representa por p XOR q y su tabla de verdad es:
p
|
q
|
p q
|
V
|
V
|
F
|
V
|
F
|
V
|
F
|
V
|
V
|
F
|
F
|
F
|
Hay que tener cuidado cuando se traduce del lenguaje usual por las costumbres, muchas veces depende del contexto o de la situación específica en la que se usan los conectivos, por ejemplo si decimos: Se pueden estacionar alumnos y maestros, en realidad se está queriendo decir un operador disyuntivo, en este caso la o matemática, o sea el primer operador que corresponde a la primera tabla de esta sección.
La condicional de dos proposiciones p, q da lugar a la proposición; si p entonces q, se representa por p →q, y su tabla de verdad está dada por:
p
|
q
|
p→q
|
V
|
V
|
V
|
V
|
F
|
F
|
F
|
V
|
V
|
F
|
F
|
V
|
Con respecto a este operador binario, lo primero que hay que destacar es que no es conmutativo, a diferencia de los dos anteriores la conjunción y la disyunción. El único caso que resulta falso es cuando el primero es verdadero y el segundo falso.
Por ejemplo, si p es llueve y q es hay nubes entonces:
p → q es si llueve entonces hay nubes.
También cabe señalar que este viene a ser el operador más importante en el proceso deductivo y que la mayoría de las leyes de inferencia y las propiedades en matemáticas se pueden enunciar utilizando este operador.
La bicondicional de dos proposiciones p, q da lugar a la proposición; p si y sólo si q, se representa por p↔ q su tabla de verdad está dada por:
p
|
q
|
p ↔ q
|
V
|
V
|
V
|
V
|
F
|
F
|
F
|
V
|
F
|
F
|
F
|
V
|
Jerarquia de Operadores.
Combinando los operadores anteriores podemos formar nuevas expresiones.
En términos formales la negación de p, deberá ser ( ¬ p), así como la conjunción de p y q sería (p ^ q). Con el uso de paréntesis evitamos la ambiguedad, por ejemplo ¬p ^ q podría significar dos cosas distintas
Por un lado podría significar: (( ¬ p) ^ q) O también: ( ¬ (p ^ q)).
En la práctica para no usar tantos paréntesis se considera que el operador ¬ tiene jerarquia sobre ^, v, →, ↔. Así ¬ p ^ q significa (( ¬ p)^ q).
En algunos casos se considera ^, v tienen mayor jerarquía que ↔ por lo que p ↔ q v r sería (p ↔ (q v r)) y también que ^ tiene prioridad sobre v, por lo que p ^ q v r sería (p ^ q) v r.
Así por ejemplo, en electrónica, para representar circuitos lógicos se utiliza + en lugar de v y · en lugar de ^.
Por lo que p·q+r es ((p ^ q) v r).
En estos apuntes no se considerará jerarquía en ninguno de los operadores binarios ^, v, →, ↔ por lo que utilizaremos paréntesis. Sólo ¬ tiene prioridad sobre los demás operadores. Esto nos ahorrá algunos paréntesis, por ejemplo: ((( ¬ p) ^ q) v r) se representa por ( ¬ p ^ q) v r.
Contrucción de Tablas de Verdad
Como ya sabemos la sintaxis en lógica es la forma correcta de escribir una fórmula y la semántica es lo que significa. Como en lógica solamente tenemos dos valores una fórmula solamente puede ser verdadera o falsa. Para determinar su valor seguimos las reglas simples que dimos en las definiciones básicas de acuerdo a su tabla de verdad. Esto lo hacemos mediante interpretaciones. Una interpretación de una fórmula es un conjunto de valores que se les asignan a sus proposiciones atómicas.
Al interpretar una fórmula lo que finalmente vamos a obtener es un valor de verdad, bien sea verdadero o falso. Pero para poder encontrarlo muchas veces el proceso en laborioso porque puede estar formada por varias proposiciones atómicas. Primeramente se le asignan valores de verdad a los átomos y se puede encontrar el valor de la expresión.
Si deseamos hacerlo en general, debemos analizar todas las posibilidades, esto se puede hacer construyendo una tabla de verdad. Para fines prácticos cuando se tienen varios átomos las tablas de verdad no resultan prácticas por lo que analizaremos solamente expresiones con tres átomos como máximo.
Por supuesto que se puede construir una tabla para un número mayor de átomos, pero notemos que por cada átomo que se aumente el número de renglones se duplica. Esto es, para un átomos son dos renglones, para dos átomos son cuatro, para tres átomos son ocho, para cuatro dieciséis, etc.
Algoritmo para construir una tabla de verdad de una fórmula en lógica de proposiciones.
1. Escribir la fórmula con un número arriba de cada operador que indique su jerarquía. Se escriben los enteros positivos en orden, donde el número 1 corresponde al operador de mayor jerarquía. Cuando dos operadores tengan la misma jerarquía, se le asigna el número menor al de la izquierda.
2. Construir el árbol sintáctico empezando con la fórmula en la raíz y utilizando en cada caso el operador de menor jerarquía. O sea, del número mayor al menor.
3. Numerar las ramas del árbol en forma secuencial empezando por las hojas hacia la raíz, con la única condición de que una rama se puede numerar hasta que estén numerados los hijos. Para empezar con la numeración de las hojas es buena idea hacerlo en orden alfabético, así todos obtienen los renglones de la tabla en el mismo orden para poder comparar resultados.
4. Escribir los encabezados de la tabla las fórmulas siguiendo la numeración que se le dió a las ramas en el árbol sintáctico.
5. Asignarle a los átomos, las hojas del árbol, todos los posibles valores de verdad de acuerdo al orden establecido. Por supuesto que el orden es arbitrario, pero como el número de permutaciones es n!, conviene establecer un orden para poder comparar resultados fácilmente.
6. Asignar valor de verdad a cada una de las columnas restantes de acuerdo al operador indicado en el árbol sintáctico utilizando la tabla de verdad correspondiente. Conviene aprenderse de memoria las tablas de los operadores, al principio pueden tener un resumen con todas las tablas mientras se memorizan.
7. La última columna, correspondiente a la fórmula original, es la que indica los valores de verdad posibles de la fórmula para cada caso.
Ejemplo. Construya la tabla de verdad de las siguientes expresiones lógicas:
i) (p → ¬q) v (¬p v r)
ii) p → (q ^ r)
iii) (p → ¬ r) ↔ (q v p)
iv) ¬(p ¬ q) → ¬ r
v) (¬p ^ q) → ¬(q v ¬r)
Solución:
i) Seguimos los pasos del algoritmo con la fórmula (p → ¬q) v (¬p v r)
1
|
2
|
3
|
4
|
5
|
6
|
7
|
8
|
p
|
q
|
r
|
¬ q
|
¬ p
|
p → ¬q
|
¬p v r
|
(p → ¬q) v (¬p v r)
|
V
|
V
|
V
|
F
|
F
|
F
|
V
|
V
|
V
|
V
|
F
|
F
|
F
|
F
|
F
|
F
|
V
|
F
|
V
|
V
|
F
|
V
|
V
|
V
|
V
|
F
|
F
|
V
|
F
|
V
|
F
|
V
|
F
|
V
|
V
|
F
|
V
|
V
|
V
|
V
|
F
|
V
|
F
|
F
|
V
|
V
|
V
|
V
|
F
|
F
|
V
|
V
|
V
|
V
|
V
|
V
|
F
|
F
|
F
|
V
|
V
|
V
|
V
|
V
|
ii) ) p → (q v r)
1
|
2
|
3
|
4
|
5
|
p
|
q
|
r
|
q v r
|
p → (q v r)
|
V
|
V
|
V
|
V
|
V
|
V
|
V
|
F
|
V
|
V
|
V
|
F
|
V
|
V
|
V
|
V
|
F
|
F
|
F
|
F
|
F
|
V
|
V
|
V
|
V
|
F
|
V
|
F
|
V
|
V
|
F
|
F
|
V
|
F
|
V
|
F
|
F
|
F
|
F
|
V
|
iii) (p → ¬ r) ↔ (q v r)
1
|
2
|
3
|
4
|
5
|
6
|
7
|
p
|
q
|
r
|
¬ r
|
p → ¬ r
|
q ∨ r
|
(p → ¬ r) ↔ (q v r)
|
V
|
V
|
V
|
F
|
F
|
V
|
F
|
V
|
V
|
F
|
V
|
V
|
V
|
V
|
V
|
F
|
V
|
F
|
F
|
V
|
F
|
V
|
F
|
F
|
V
|
V
|
F
|
F
|
F
|
V
|
V
|
F
|
V
|
V
|
V
|
F
|
V
|
F
|
V
|
V
|
V
|
V
|
F
|
F
|
V
|
F
|
V
|
V
|
V
|
F
|
F
|
F
|
V
|
V
|
F
|
F
|
iv) ) ¬(p ^¬ q) → ¬ r
1
|
2
|
3
|
4
|
5
|
6
|
7
|
8
|
p
|
q
|
r
|
¬ q
|
p ^ ¬ q
|
¬(p ^ ¬q)
|
¬ r
|
¬(p ^ ¬q) → ¬ r
|
V
|
V
|
V
|
F
|
F
|
V
|
F
|
F
|
V
|
V
|
F
|
F
|
F
|
V
|
V
|
V
|
V
|
F
|
V
|
V
|
V
|
F
|
F
|
V
|
V
|
F
|
F
|
V
|
V
|
F
|
V
|
V
|
F
|
V
|
V
|
F
|
F
|
V
|
F
|
F
|
F
|
V
|
F
|
F
|
F
|
V
|
V
|
V
|
F
|
F
|
V
|
V
|
F
|
V
|
F
|
F
|
F
|
F
|
F
|
V
|
F
|
V
|
V
|
V
|
vi) (¬p ^ q) → ¬(q v ¬r)
1
|
2
|
3
|
4
|
5
|
6
|
7
|
8
|
9
|
p
|
q
|
r
|
¬r
|
¬p
|
q v ¬r
|
¬p ^ q
|
¬(q v ¬r)
|
(¬p ^ q) → ¬(q v ¬r)
|
V
|
V
|
V
|
F
|
F
|
V
|
F
|
F
|
V
|
V
|
V
|
F
|
V
|
F
|
V
|
F
|
F
|
V
|
V
|
F
|
V
|
F
|
F
|
F
|
F
|
V
|
V
|
V
|
F
|
F
|
V
|
F
|
V
|
F
|
F
|
V
|
F
|
V
|
V
|
F
|
V
|
V
|
V
|
F
|
F
|
F
|
V
|
F
|
V
|
V
|
V
|
V
|
F
|
F
|
F
|
F
|
V
|
F
|
V
|
F
|
F
|
V
|
V
|
F
|
F
|
F
|
V
|
V
|
V
|
F
|
F
|
V
|
No hay comentarios:
Publicar un comentario