lunes, 27 de agosto de 2012

Aplicación de la lógica proposicional

Lógica es el estudio del razonamiento, se refiere específicamente a si el razonamiento es correcto. 

Una proposición es un enunciado que puede afirmarse como verdadero o falso. 

"Lógica proposicional es la parte de la lógica que estudia la formación de proposiciones complejas a partir de proposiciones simples."


Proposiciones

Simples. Son las oraciones que se forman sin usar enlaces.
  • La casa es roja
  • Carlos es estudiante
Complejas. Son las oraciones que están formadas por dos o más proposiciones simples ligadas por un conector.
  • María es chef o es cantante
  • Si ayer llovió entonces hoy sale el sol
  • 2 es par y 9 es impar

Para validar preposiciones se necesita realizar las tablas de verdad, las cuales son diseños combinacionales dado por 2^n donde n es el número de proposiciones simples.

Los conectivos lógicos principales que son utilizados para formar proposiciones complejas son  ¬, ∨, ∧, →, ↔ ( no, o, y, si... entonces, si y sólo si ).

Las tablas de verdad de los conectivos principales son:


Conjunción.
La proposición p ^ q es verdadera solamente si p y q son verdaderas, en los demás casos es falsa.

Ejemplo:
Puedes salir cuando laves la ropa y arregles tu cuarto.



Disyunción.
La disyunción es verdadera si por lo menos una de las proposiciones es verdadera, y es falsa solamente cuando todas las preposiciones son falsas.

Por ejemplo.
Puedes ir a dormir o puedes hacer tu tarea



Implicación. 
La proposición p → q es falsa solamente si el antecedente es verdadero y el consecuente es falso. En los demás casos es verdadera.

Ejemplo.
p = Tengo dinero
q = Voy al cine
→ q = Si tengo dinero, entonces voy al cine

Doble implicación.
La proposición p ↔ q es verdadera cuando ambas preposiciones son verdaderas o ambas falsas.

Ejemplo.
r = El polígono es de cuatro lados
s = Es un cuadrilátero
↔ s = El polígono es de cuatro lados si y sólo si es un cuadrilátero.




Negación.
La negación es el conectivo lógico que permite cambiar el valor de verdad de una proposición.

Si p es verdadero, su negación ¬ es falsa y viseversa.

Por ejemplo. 
p = todos los triángulos son equiláteros
¬p = NO todos los triángulos son equiláteros



La lógica computacional puede ser aplicada al campo de la computación, su uso principal es en circuitos computacionales, programación lógica y análisis y optimización de algoritmos.

Sistema combinacional

Un sistema combinacional es un sistema digital en el que las salidas dependen de la combinación de sus entradas. Las funciones (OR, AND, NAND, XOR) son booleanas, o sea que cada función se puede representar en una tabla de verdad. 

Metodología de un sistema combinacional.

1. Especificar el sistema. En esta parte se detalla el propósito del diseño.

2. Determinar las entradas y salidas. Identificar las variables del problema, identificar entradas y salidas.

3. Construir la tabla de verdad. Trasladar el comportamiento del sistema a una tabla de verdad, indicando para cada combinación de entrada, la salida o salidas más convenientes para el diseño.

4. Minimizar. Para obtener las ecuaciones mínimas se pueden utilizar diferentes métodos como manipulación algebraica, mapas de karnaugh, entre otros.

5. Diagrama esquemático. Al obtener las ecuaciones mínimas, se representan en forma de símbolos para su análisis y comprensión.

6. Implementar. Hay dos formas de implementación, circuitos integrados de función fija (TTL) o dispositivos lógicos programables (PDLs).


Aplicación 

Para la tarea de esta semana nos pidieron lo siguiente:
"Investiguen aplicaciones de la lógica proposicional y documenten uno en su tercera tarea."

Para esta tarea explicaré una aplicación de circuitos combinatorios.

En una granja se tiene: 
  • Un granjero con una puerta muy grande y pesada en donde se requiere de varias personas para abrirla o cerrarla.
  • Un corral de ovejas.
  • Ocasionalmente llegan lobos.



El granjero necesita un sistema de alarma diseñado para lo siguiente:
  • Sea activado cuando las ovejas se encuentren fuera del corral y la puerta este abierta, para realizar una acción correctiva ya sea cerrar la puerta o poner las ovejas en el corral.
  • Sea activado cuando se encuentren los lobos cerca y las ovejas se encuentren fuera del corral, para realizar la acción correctiva de ahuyentar a los lobos.

1. Especificar el sistema
Las variables que intervienen son puerta, ovejas, lobos y alarma. Para las primeras tres variables se tienen sensores de deteccion.

Puerta
Abierta = 1 
Cerrada = 0

Ovejas
Fuera del corral = 1
Dentro del corral = 0

Lobos
Están cerca = 1 
Están lejos = 0

Para el dispositivo de alarma

Alarma
Activada = 1
Desactivada = 0


2. Determinar entradas y salidas
La puerta, las ovejas y los lobos (P, O y L) son las entradas del sistema, mientras que la Alarma (A) es la salida.

Diagrama de bloques.
3. Tabla de verdad

La alarma se activará cuando:
  • Las ovejas estén afuera y los lobos estén cerca.
  • La puerta esté abierta y las ovejas estén afuera del corral.
  • La puerta esté abierta, las ovejas estén afuera y los lobos estén cerca.


4. Minimizar

Para simplificar las ecuaciones utilizamos el método de Mapas de Karnaugh.


La ecuación quedaría de la siguiente manera:
F(A) = PO + OL 
F(A) = O (P + L)

Con esto se puede concluir que la alarma se activará cuando la puerta este abierta y las ovejas fuera del corral (PO) o cuando las ovejas estén fuera del corral y los lobos estén cerca (OL).


5. Diagrama esquemático



6. Implementación
La implementación se puede realizar con un dispositivo lógico programable (PLD) como el GAL16V8.

Referencias:
Proposiciones lógicas
Libro Matemáticas Discretas. Richard Johnsonbaugh. Sexta Edición.
Sistemas Digitales.

1 comentario: