0% encontró este documento útil (0 votos)
64 vistas13 páginas

Lógica Matemática y Prolog en Programación

Este documento presenta conceptos de lógica matemática y programación lógica en Prolog. Define predicados, cláusulas, hechos y reglas. Explica la estrategia de encadenamiento de reglas orientado a un objetivo para resolver problemas lógicos. También incluye tres ejemplos de problemas lógicos resueltos mediante este enfoque.

Cargado por

Javier Leyton
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
64 vistas13 páginas

Lógica Matemática y Prolog en Programación

Este documento presenta conceptos de lógica matemática y programación lógica en Prolog. Define predicados, cláusulas, hechos y reglas. Explica la estrategia de encadenamiento de reglas orientado a un objetivo para resolver problemas lógicos. También incluye tres ejemplos de problemas lógicos resueltos mediante este enfoque.

Cargado por

Javier Leyton
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

LOGICA MATEMÁTICA Y DIGITAL

SEMANA 8

Cristian Ramos Leyton


19-12-2021
DESARROLLO

1) De la siguiente línea de código:

a) Identifique las secciones.

b) Identifique los hechos.

c) Mencione las reglas y la unificación en el caso de que exista.

Predicados

Mondeterm Hermana (STRING, STRING)

Mondeterm Hermano (STRING, STRING)

Mondeterm Casado (STRING, STRING)


Mondeterm Cunado (STRING, STRING)

Cláusulas

Casado (“Tiberio”, “Carolina”) hecho 1

Casado (“Jaider”, “Adriana”) hecho 2

Hermano (“Jaider”, “Tiberio”) hecho 3

Hermana (“Adriana”, “Edna”) hecho 4

Hermana (“Adriana”, “Mónica”) hecho 5

Cunado (A, C), regla 1

Hermana (C, B), regla 1

Cunado (A, B), regla 1

Hermano (A, C), regla 1

Casado (C, B), regla 1

Goal

Cunado (“Jaider”, Z)

R: Este es un lenguaje Declarativo e Interpretado, aquí se representa conocimientos en dominio y


relaciones, podemos deducir que las respuestas planteadas, es inferencia. El conocimiento es un conjunto
de relaciones el cual describen las propiedades y las interacciones.

El dominio se constituye como un conjunto de los objetos.


En esta cuentan los:

Objetos, propiedades y relaciones.

Ventaja, que no se preocupa como resolver algo.

Regla, determinan las interacciones lógicas Q, R, S y T (P).

Desventaja, la resolución no es suficiente.

Un Prolog es un conjunto de cláusulas de Horn.

Predicados: Estos se utilizan para expresar las propiedades de los objetos. En Prolog se llaman hechos.

- Todos los objetos y relaciones comienzan con letra minúscula.


- Predicado: se escribe la relación o propiedad.
- Los objetos se separan con comas y encerrados en paréntesis.
- En el final de cada hecho lleva un punto.

Prologo utiliza una constante atómica e símbolos de predicado y argumentos:

Ejemplo:

/ * Predicados monódicos : Propiedades */

/ * mujer ( Per ) < - Per es una mujer * /

mujer ( clara ).

mujer ( chelo ).

/ * hombre ( Per ) < - es un hombre */

hombre ( Jorge ).
hombre ( felix ).

hombre ( borja ).

/ * moreno ( Per ) < - Per tiene el pelo de color oscuro * /

moreno ( jorge ).

/ * Predicados poliádicos : RELACIONES * /

/ * tiene ( Per, Obj ) < - Per posee el objeto Obj * /

tiene( jorge, moto ).

/ * le_gusta_a ( X, Y ) < - a X le gusta Y * /

le_gusta_a ( clara, jorge ).

le_gusta_a ( jorge, clara ).

le_gusta_a ( jorge, informática ).

le_gusta_a ( clara, informática ).

/ * es_padre_de ( Padre, Hijo -a ) < - Padre es el padre de Hijo-a * /

es_padre_de(felix,borja).

es_padre_de(felix,clara).

/ * es_madre_de ( Madre, Hijo-a ) <- Madre es la madre de Hijo-a * /

es_madre_de ( chelo, borja ).

es_madre_de ( chelo, clara ).

/ * regala ( Per1, Obj, Per2 ) < - Per1 regala Obj a Per2 * /


regala ( jorge, flores, clara ).

Cláusulas: Prolog está formado por secuencia de clausulas y deben ser representar el conocimiento para
poder resolver los problemas.

Existen 3 tipos de cláusulas: consultas, hechos y reglas.

Términos: Son variables, se toma el universo de Herbrand como dominio. Constantes atómicas de Prolog
sirven para representar y relacionar los objetos:

Átomos, números, enteros y reales.

El Goals son objetivos y metas

que comienzan con predicado y sigue con sus argumentos. Este es un objeto valido y aparece en un hecho
o regla en el programa, el numero de argumentos deben ser el mismo que aparece en el programa y estos
son constantes.

El hecho comienza con un predicado y termina con un tope completo. Este es seguido por argumentos
entre paréntesis, argumentos son separados por comas.

Las reglas esta formada por 2 partes, la primera es similar al hecho, la segunda consta de otras clausulas y
deben ser verdaderas para que la regla sea verdadera.
2) Siendo las siguientes reglas, diseñe el diagrama de bloques correspondiente:

Para hacer el diagrama asigne los valores A = Verdadero, G = Falso, K = Falso, L = Falso, determine el
Valor de H, mediante la estrategia de encadenamiento de reglas orientado a un objetivo.

R: Esta es una estrategia inferencia el cual se obtiene las conclusiones compuestas , se utiliza cuando las
premisas coinciden con las conclusiones de otras.

El encadenamiento hacia adelante, examina las premisas de las reglas y están verifican si son verdaderas
o no, en caso que lo sean, se añade una lista de hechos verdaderos y el sistema examina nuevamente las
reglas.

El encadenamiento hacia atrás determina si la regla es correcta, esta considera las premisas y trata de
comprobar que estas sean correctas, determina reglas que puedan confirmar estas premisas. Entonces
retrocede por las reglas y encuentra hechos que indiquen si todas las premisas son correctas o si esta no
es efectiva.

- A= A
A
- G= G
A
- K= K
A
- L=
L
A
Valor H = H
A

Listado de simbología:
Primero está el diagrama:
Segundo identificamos H:

Aquí se aplica buscar una regla, para esto marcamos el objetivo ( H ), luego con la regla 3 señalamos que

( J ) seria el nuevo objetivo.

Tercero, buscar el objetivo ( J):


Entonces ( J ) es el objtetivo nuevo, ( H ) es un objetivo previo, ahora buscamos la regla que contenga a

( J ). Esta regla es la 5 donde ( G ) y ( J ) entonces es ( L ) y se debe buscar el nuevo valor de ( G ).

Cuarto, se busca el nuevo objetivo que es ( G ):


Si ( G ) es el nuevo objetivo, ( H ) Y ( J ) son objetivos de ( G ) y debemos buscar una nueva regla que
contenga a ( G ) y seria la regla 2, ( D ), ( E ) y ( F ) es ( G ) el cual es = falso, el valor de ( H ) también es
falso.

3) Diseñe un algoritmo que permita hallar los abuelos de Luis, basándose en los siguientes hechos:

Julio es el padre de Jaider

José es el padre de Adriana

Jaider es el padre de pedro

Adriana es la hermana de pedro

Pedro es hermano de Luis

R: Dominio es: persona = string

Predicado es : padre ( persona )


Clausulas son:

Padre ("Julio", "Jaider"). %Julio es padre de Jaider

Padre ("José", "Adriana"). %José es padre de Adriana

Padre ("Jaider", "Pedro"). %Jaider es padre de Pedro

Hermanos ("Adriana", "Pedro"). %Adriana es Hermana de Pedro

Hermanos ("Pedro", "Luis"). %Pedro es Hermano de Luis

JULIO JOSÉ ( padre )


Figura
femeni
na

JAIDER ADRIANA
Madre
( hijo Julio ) Pedro, ( hija José )
Adriana
y Luis

Hermanos

Pedro
Luis
(hijo Jaider y
(Hermano pedro)
hermano de Adriana)
REFERENCIAS BIBLIOGRÁFICAS
Cardona, S., Hernández, L. y Jaramillo, S. (2010). Lógica matemática para Ingeniería de Sistemas y
Computación. Quindio, Colombia: Ediciones Elizcom.

IACC (2018). Lógica de programación. Lógica Matemática y Digital. Semana 8.

También podría gustarte