Entorno y herraminetas
|
|
|
- Ernesto Ríos Gil
- hace 7 años
- Vistas:
Transcripción
1 PROGRAMACIÓN LÓGICA I. Sistemas para la programación lógica. II. Programación elemental con bases de datos y programación recursiva. III. Programación con listas y árboles. IV. Control explícito en Prolog. V. Metaprogramación. Entorno y herraminetas SWI-Prolog entorno de programación Prolog SLD-Draw representación de árboles SLD 1
2 Bibliografía The Art of Prolog (2ed) Leon Sterling y Ehud Shapiro MIT Press, 1994 Prolog Programming for Artificial Intelligence (3ed) Ivan Bratko Addison-Wesley, 2000 Clause and Effect William F. Clocksin Springer-Verlag, 1997 Programación en Prolog (2ed) William F. Clocksin y Chris S. Mellish Gustavo Gili, 1993 Bibliografía en internet Libros gratuitos disponibles en internet: Prolog Programming: A First Course Paul Brna Logic, Programming and Prolog (2ed) Ulf Nilsson y Jan Maluszynski 2
3 Sistema para la Programación Lógica. I.1 Términos, relaciones y programas. I.2 Interpretación declarativa de un programa. I.3 Interpretación operativa de un programa. I.4 Resolución SLD. I.5 Unificación de términos e instanciación de variables. Términos, relaciones y programas. Términos En los programas lógicos se opera con objetos o términos funcionales: constantes -denotaciones de objetos simples; (números o funtores sin parámetros) estructuras -denotaciones de objetos compuestos; (funtores con parámetros) Estructuras simples(registros). Estructuras recursivas. variables - denotaciones genéricas de objetos» (simples y compuestos) 3
4 Constantes Ejemplo de términos cero, 1.3, antonio, casado, soltero, nil, arbol_vacio (los nombres de funtores comienzan con minúscula) Estructuras simples(registros): ficha(antonio, casado), substancia(azufre,16,32.1). arco(a,b) Estructuras recursivas: suc(cero), suc(suc(cero)),... arbol(antonio,arbol_vacio,arbol_vacio), arbol(antonio,arbol(juan,arbol_vacio,arbol_vacio),arbol_vacio) Variables X, Nombre, Ficha, Estado_civil (los nombres de variables comienzan con mayúscula) Relaciones/Predicados Representan correspondencias entre términos funcionales Se utilizan para construir términos predicativos o fórmulas atómicas susceptibles de satisfacción o valoración lógica. padre(antonio, jose) elemento(3,[1,5,7]) Son los sujetos de los cálculos en la programación lógica. No son objetos de cálculo. 4
5 Definición de relaciones Mediante cláusulas de Horn estableciendo hechos fórmula-atómica ". estableciendo reglas fórmula-atómica ":-" fórmula-atómica {","fórmula-atómica}"." La definición de una relación puede requerir de varias cláusulas Cada relación se caracteriza por su nombre y su número de argumentos o aridad. Ejemplo padre(antonio, maria). padre(antonio, luis). madre(maria, jose). persona(x). progenitor(a,d) :- padre(a,d). progenitor(a,d) :- madre(a,d). antepasado(a,d) :- progenitor(a,d). antepasado(a,d) :- progenitor(a,h), antepasado(h,d). % padre/2 % madre/2 % persona/1 % progenitor/2 % antepasado/2 5
6 Sintaxis de Prolog cláusula::= fórmula-atómica "." fórmula-atómica ":-" fórmula-atómica {","fórmula-atómica}"." fórmula-atómica ::= predicado "(" término {"," término} ")" predicado ::= letra-minúscula {letra dígito} término ::= constante estructura variable constante ::= letra-minúscula {letra dígito} número estructura ::= funtor "(" término {"," término} ")" lista funtor ::= letra-minúscula {letra dígito} lista ::= "[]" "["cabecera " " cola "]" cabecera ::= término cola ::= lista variable ::= letra-mayúscula {letra dígito} "_"{letra dígito} Programa Definiciones de relaciones (Base de conocimiento) + Cuestión Cuestión/Objetivo Conjunción de fórmulas atómicas establecidas entre objetos que pueden ser fijos, variables o estar determinados parcialmente. "?-"fórmula-atómica {"," fórmula-atómica}"." 6
7 Cuestiones Cuestiones de mera comprobación?- padre(antonio, maria).?- padre(antonio, jose). (se aplica la identidad como regla de deducción)?- persona(antonio). (se aplica la instanciación como regla de deducción: de una proposición cuantificada universalmente se deduce cualquier instancia ) Cuestiones Cuestiones para el cálculo de valores de objetos?- padre(antonio, X).?- padre(x, maria).?- progenitor(antonio, X), madre(x, jose). (se aplica la generalización como regla de deducción: una cuestión existencial es siempre una consecuencia lógica de la existencia de una instancia de dicha cuestión) 7
8 Interpretación declarativa Cláusulas de Horn Las cláusulas de Horn son cláusulas con, a lo más, un literal positivo ( A B ) X,..., 1 X 1... n B k Una cláusula de la forma A. sólo tiene el literal positivo y se interpreta simplemente como la afirmación de que la fórmula A es cierta, para todos los valores posibles de las variables que aparecen (si aparece alguna). Interpretación declarativa Una cláusula completa A :-B 1,B 2,...,B k. se interpreta como una implicación de la forma siguiente: A B B... 1 con todas las variables que aparezcan cuantificadas universalmente: la fórmula A es cierta, para todos los valores posibles de las variables que aparezcan, para los que son ciertas todas las fórmulas B i ; lo que puede requerir la existencia de alguna combinación de valores para las variables que no aparecen en A. 2 B k 8
9 Interpretación declarativa antepasado(a,d) :- progenitor(a,h),antepasado(h,d). se interpreta como ( progenitor( A, H ) antepasado( H, D) antepasado( A, )) A, D, H D arco(a,b). arco(a,d). arco(b,c). camino(x,y) :- arco(x,y). camino(x,y) :- arco(x,z), camino(z,y). Interpretación declarativa Una cuestión?- B 1, B 2,..., B k. sólo tiene literales negativos y se interpreta como para cada combinación de valores de las variables que aparecen, alguna fórmula B i no es cierta?- progenitor(antonio, X), madre(x, jose). significa X ( progenitor( antonio, X ) madre( X, jose)) si conseguimos una refutación, habremos probado lo contrario o lo que es lo mismo X ( progenitor( antonio, X ) madre( X, jose)) X ( progenitor( antonio, X ) madre( X, jose)) 9
10 Interpretación operativa de un programa Cláusulas de Horn (interpretación procedimental) Una cláusula de Horn A :-B 1,B 2,...,B k. se puede interpretar también en la forma para resolver A se debe resolver B 1, B 2,...y B k ; con lo que será comparable a la definición de un procedimiento, donde A hace el papel de la cabecera del procedimiento, B 1,B 2,...y B k serán el cuerpo, interpretado como una serie de llamadas a procedimientos auxiliares B i, Resolución SLD Selective Lineal for Definite clauses Procedimiento de refutación?- B 1,B 2,...,B k. Cada paso de resolución, aplicado a una cuestión o resolvente?- B 1,B 2,...,B k. consiste en la siguiente secuencia de operaciones: r1) seleccionar una fórmula B i del resolvente, r2) seleccionar una cláusula C del programa, dentro del procedimiento correspondiente al predicado que aparece en B i, cuya cabecera coincida con B i (en realidad serán literales opuestos), r3) si se encuentra tal cláusula, sustituir, en el resolvente, B i por el cuerpo de C; si no la resolución termina sin éxito. ejc00.pl 10
11 Situaciones de indeterminación Las reglas para la selección de fórmulas dentro de una cuestión se denominan reglas de cálculo o de selección y se demuestra que no afectan al resultado de los cálculos (únicamente afectan al número de pasos). Las reglas para la selección de cláusulas de la base de conocimiento se denominan reglas de búsqueda y sí tienen consecuencias sobre el resultado de los cálculos. Espacio de búsqueda asociado a un Programa Fijada una regla de cálculo, los distintos cálculos posibles para un programa constituido por una cuestión Q y una base de conocimiento P se pueden representar gráficamente mediante un árbol de búsqueda caracterizado por: su raíz, etiquetada con la cuestión Q o primer resolvente; y los demás nodos etiquetados con los resolventes producidos por pasos de resolución; además para cada nodo etiquetado con un resolvente no vacío, si A es la fórmula que selecciona la regla de cálculo, existirán tantos descendientes como cláusulas con cabecera coincidente con A existan en el procedimiento de definición del correspondiente predicado, los nodos etiquetados con resolventes vacíos no tienen descendientes. Las distintas reglas de búsqueda representan distintas formas de recorrido de los árboles de búsqueda. ejc01.pl 11
12 Unificación de términos... progenitor(a,d) :- padre(a,d)....?- progenitor(antonio,x). Sustituimos antonio por A, y X por D y tomamos la regla progenitor(antonio,x) :- padre(antonio,x). La nueva resolvente es padre(antonio,x). Sustituciones e Instancias. Una sustitución de variables es un conjunto finito θ = {V 1 /t 1,...,V n /t n } de ligaduras V i /t i donde cada V i es una variable distinta y cada t i un término distinto de V i. Una instancia de una fórmula E, por aplicación de una sustitución θ, es la expresión Eθ obtenida tras la sustitución simultánea de todas las variables que aparecen en θ por los términos de sus correspondientes ligaduras; p.e.: si E = p(x, f(y),a) y θ = {X/b, Y/X} Eθ = p(b, f(x), a). 12
13 Sustituciones Una redenominación o cambio de nombre de las variables de una fórmula E es una sustitución de variables que aparecen en la expresión por otras variables que no aparecen en la expresión o por algunas de las que se van a cambiar; p.e.: para E = p(x, f(y),a), θ = {X/Z, Y/X} es una redenominación de las variables de E. Composición de sustituciones Sean dos sustituciones θ = {V 1 /t 1,...,V n /t n } y τ = {U 1 /s 1,..., U m /s m } Se define como la sustitución resultante de aplicar primero θ y después τ. Esta sustitución es equivalente a la sustitución obtenida a partir de {V 1 /t 1 τ,...,v n /t n τ, U 1 /s 1,..., U m /s m } eliminando 1) las ligaduras U i /s i tales que la variable U i coincida con alguna variable V j ; y 2) las ligaduras V i /t i τ tales que V i = t i τ. p.e.: la composición de θ = {X/f(Y), Y/Z} y τ = {X/a,Y/b, Z/Y} será θτ = {X/f(b), Z/Y} 13
14 Ejercicios E=p(X, g(y), Z) σ= {X/f(Y)} θ= {Y/a, Z/b, X/c} Calcular (E σ) θ E (σ θ) Unificadores Un unificador de dos fórmulas atómicas A y B es una sustitución θ tal que Aθ =Bθ; p.e.: θ ={Y/f(a), X/a, Z/a} es un unificador para las fórmulas A =p(f(x),z) y B = p(y,a), pues Aθ = p(f(a), a) = Bθ. Otro es θ ={Y/f(g(b)), X/g(b), Z/a} 14
15 Unificador de máxima generalidad Un unificador de dos fórmulas atómicas A y B se dice que es un unificador de máxima generalidad (o un umg) cuando cualquier otro siempre se puede expresar como composición de éste con alguna sustitución (viene a ser el que establece el menor número de ligaduras) p.e.: para A = p(f(x),z) y B = p(y,a), θ = {Y/f(X), Z/a} es un unificador de máxima generalidad. Un umg de dos términos no siempre es único, pueden existir varios; pero entonces se diferenciarán únicamente en una redenominación de las variables; p.e.: para A = p(f(x), Z) y B = p(f(y),v), θ = {X/Y, Z/V} y τ = {Y/X, Z/V} son dos umgs tales que θ= τ{x/y} y τ =θ{y/x} Algoritmo de unificación 0) SI ambas fórmulas comienzan por predicados distintos, ENTONCES (no son unificables) PARAR SI NO CONTINUAR; 1) k := 0; θ 0 = ε (sustitución vacía); 2) SI Eθ k = Fθ k ENTONCES (θ k será un umg) PARAR SI NO determinar aquéllos dos términos que comienzan en el primer carácter de Eθ k y Fθ k, respectivamente en el que difieren ambas expresiones (primer par de discordancia); 3) SI uno de los términos es una variable X y el otro es un término t donde no aparece X ENTONCES construir θ k+1 componiendo θ k con {X/t}; k:=k+1; IR A 2) SI NO (no son unificables) PARAR 15
16 Ejercicios Aplicar el algoritmo de unificación a los pares siguientes a) p(f(a), g(x)), p(y,y) b) p(a, X, h(g(z))), p(z, h(y),h(y)) c) p(x,x), p(y, f(y)) Resolución con variables Si E y F son fórmulas atómicas unificables, con umg θ, entonces {(E C)θ,( F C )θ} = (C C')θ Todas las instancias de (C C')θ son consecuencia lógica de las instancias (E C)θ y ( F C')θ 16
17 Extensión del algoritmo de resolución?- B 1,B 2,...,B k. r1) seleccionar una fórmula B i del resolvente; r2) seleccionar una cláusula C del programa, dentro del procedimiento correspondiente al predicado que aparece en B i ; r3) redenominar las variables de la cláusula C, si es necesario, para que no coincidan con las variables que aparecen en el resolvente; r4) unificar B i con la cabecera de la cláusula (redenominada); r5) si la unificación tiene éxito y produce un umg θ - sustituir, en el resolvente, B i por el cuerpo de C (redenominada), - aplicar las sustituciones de θ al resolvente resultante para obtener un nuevo resolvente. ejc02.pl Resolución SLD aplicada a cláusulas de Horn consistente -si para un objetivo Q existe un cálculo que tiene éxito, dicho objetivo es consecuencia lógica de la base de conocimiento, desde el punto de vista de la semántica declarativa, para los valores de las variables que aparecen en la sustitución calculada; y completa si un objetivo Q es consecuencia lógica, desde el punto de vista de la semántica declarativa, para ciertos valores de las variables, entonces existe un cálculo de resolución que termina en éxito y produce los mismos valores para las variables 17
18 Prolog Regla de selección: De izquierda a derecha Regla de búsqueda: De arriba abajo Cómo construye el árbol SLD? En profundidad de izquierda a derecha Backtraking o reevaluación Esto hace que no sea completo ejc01.pl Ejemplos p(x,y):-q(x,y). p(x,y):-q(a,x). q(a,a). q(x,a):- r(y),s(x,y). q(x,y):-r(x),p(x,y). s(b,b). s(b,x):-r(x). r(b). r(a). ejc09.pl?-p(b,z). 18
19 Ejemplos p(x,v,v). p(x,f(x,y),z):-p(x,y,z). p(x,f(y,z),f(x,t)):-p(x,z,t).?-p(x,f(a,f(b,f(a,v))),l). ejc10.pl 19
Métodos de Inteligencia Artificial
Métodos de Inteligencia Artificial L. Enrique Sucar (INAOE) [email protected] ccc.inaoep.mx/esucar Tecnologías de Información UPAEP Contenido Lógica proposicional Lógica de predicados Inferencia en lógica
Tema 6: Programación Lógica: semántica declarativa. Lenguajes y Paradigmas de Programación
Tema 6: Programación Lógica: semántica declarativa Lenguajes y Paradigmas de Programación Teoría de Modelos Se basa en el concepto de INTERPRETACIÓN, que consiste en: elegir un dominio D (en el que tomarán
Lenguajes lógicos: cláusulas de Horn
Lenguajes lógicos: cláusulas de Horn Lenguaje subyacente: FOL ( first order logic ) Atomos: p(t 1,...,t n ) p símbolo de predicado y t i término (i = 1,...,n) símbolo de variable (X, Y,..) t término símbolo
Tema 6: Teoría Semántica
Tema 6: Teoría Semántica Sintáxis Lenguaje de de las las proposiciones Lenguaje de de los los predicados Semántica Valores Valores de de verdad verdad Tablas Tablas de de verdad verdad Tautologías Satisfacibilidad
Lógica de predicados
Lógica de predicados Cálculo de predicados Hay ciertos argumentos que parecen ser perfectamente lógicos y que no pueden ser especificados usando cálculo proposicional. Ejemplos: Todos los gatos tienen
Tema 4: Gramáticas independientes del contexto. Teoría de autómatas y lenguajes formales I
Tema 4: Gramáticas independientes del contexto Teoría de autómatas y lenguajes formales I Bibliografía Hopcroft, J. E., Motwani, R., y Ullman, J. D. Introducción a la Teoría de Autómatas, Lenguajes y Computación.
Lógica de Predicados de Primer Orden
Lógica de Predicados: Motivación Todo natural es entero y 2 es un natural. Luego 2 es entero. p q r p, q r es claramente un razonamiento válido pero no es posible demostrarlo desde la Lógica Proposicional
Capítulo V: Programación Lógica. 5.1 Breve Introducción al Cálculo de Predicados
Capítulo V: Programación Lógica 5.1 Breve Introducción al Cálculo de Predicados 1 Definiciones Básicas Proposición: sentencia lógica que puede ser verdadera o falsa. Se construye de objetos y relaciones.
5.3 Tipos de Datos en Prolog
5.3 Tipos de Datos en Prolog Recocimiento de Tipos Se recoce el tipo de un dato por su forma sintáctica; se requiere de declaración de tipos Ejemplo: Variables se definen comienzan con primera en mayúsculas
Lógica de predicados 3. Sintaxis. Juan Carlos León Universidad de Murcia
Lógica de predicados 3. Sintaxis Juan Carlos León Universidad de Murcia Esquema del tema 3.1. Fórmulas bien formadas y funciones proposicionales 3.2. Alcance. Variables libres y ligadas 3.3. Teoremas 3.4.
Deducción automática y programación lógica
Deducción automática y programación lógica José A. Alonso Jiménez Área de ciencias de la computación e inteligencia artificial Universidad de Sevilla Sevilla, 12 de Septiembre de 1995 Contenido 1 Deducción
Introducción a ASP (Answer Set Programming - programación con conjuntos respuestos)
Introducción a ASP (Answer Set Programming - programación con conjuntos respuestos) Inteligencia Artificial David Pearce 13 de enero de 2009 ASP y programación declarativa ASP es una forma de programación
Resolución en lógica de primer orden
Resolución en lógica de primer orden Eduardo Bonelli Departamento de Computación, FCEyN, UBA 15 de mayo, 2006 Clase pasada Repasamos lógica proposicional Introdujimos el método de resolución para lógica
RECURSIVIDAD. Ángeles Martínez Sánchez Curso 2016/2017 DMATIC ETSISI
RECURSIVIDAD Conjuntos definidos recursivamente Fórmulas en lógica de proposiciones Los números naturales Listas Correspondencias recursivas Definición de correspondencia y de función recursiva Árbol de
Curso Extraordinario INTELIGENCIA ARTIFICIAL Y SISTEMAS EXPERTOS
Curso Extraordinario INTELIGENCIA ARTIFICIAL Y SISTEMAS EXPERTOS Contenidos del Curso Introducción a la I.A. Cómo razonamos?. Algunas experiencias con el razonamiento automático El problema de representación
Tema 1. Introducción al PROLOG. 1. Qué es el PROLOG? 2. Los elementos de PROLOG 3. Un programa de ejemplo 4. Ejercicios propuestos
Tema 1. Introducción al PROLOG 1. Qué es el PROLOG? 2. Los elementos de PROLOG 3. Un programa de ejemplo 4. Ejercicios propuestos 1. Qué es el PROLOG? 1.1. Un poco de historia PROgramming in LOGic Desarrollado
Representación del conocimiento mediante reglas
C. Graciani Díaz F. J. Martín Mateos J. L. Ruiz Reina Dpto. Ciencias de la Computación e Inteligencia Artificial Universidad de Sevilla Sistemas basados en el conocimiento Sistemas basados en el conocimiento:
Prolog. Sintaxis Informal. Sintaxis Informal. Hechos: ejemplos. Inteligencia Artificial 2º cuatrimestre de Hechos. Hechos. Reglas.
Prolog Programación en PROLOG(1) Inteligencia Artificial 2º cuatrimestre de 2009 Departamento de Ciencias e Ingeniería de la Computación Universidad Nacional del Sur Es el representante más cocido del
Unificación. Unificación
Unificación C 1 = P(a, y) Q(x, y) C 2 = P(x, y) R(x, b) P(a, y) y P(x, y) no son literales complementarios Si sustituimos x/a se obtienen C 1 = P(a, y) Q(a, y) C 2 = P(a, y) R(a, b) Instancias de C 1 y
Inteligencia Artificial: Prolog
Inteligencia Artificial: Prolog Introducción al Lenguaje de Programación Prolog Christopher Expósito-Izquierdo 1, Belén Melián-Batista 2 {cexposit 1, mbmelian 2 }@ull.es Universidad de La Laguna (España)
Tema 9: Cálculo Deductivo
Facultad de Informática Grado en Ingeniería Informática Lógica PARTE 2: LÓGICA DE PRIMER ORDEN Tema 9: Cálculo Deductivo Profesor: Javier Bajo [email protected] Madrid, España 24/10/2012 Introducción a la
PROBABILIDAD Y ESTADÍSTICA
PROBABILIDAD Y ESTADÍSTICA Pablo Torres Facultad de Ciencias Exactas, Ingeniera y Agrimensura - Universidad Nacional de Rosario Unidad 2: Probabilidad INTRODUCCIÓN Al lanzar un dado muchas veces veremos
Análisis y Complejidad de Algoritmos. Arboles Binarios. Arturo Díaz Pérez
Análisis y Complejidad de Algoritmos Arboles Binarios Arturo Díaz Pérez Arboles Definiciones Recorridos Arboles Binarios Profundidad y Número de Nodos Arboles-1 Arbol Un árbol es una colección de elementos,
1. EXPRESIONES ALGEBRAICAS.
TEMA 3: POLINOMIOS 1. EXPRESIONES ALGEBRAICAS. Trabajar en álgebra consiste en manejar relaciones numéricas en las que una o más cantidades son desconocidas. Estas cantidades se llaman variables, incógnitas
Expresiones algebraicas
Polinomios Expresiones algebraicas Una expresión algebraica es cualquier combinación de números y letras relacionados por operaciones aritméticas: suma, resta, producto, división y potenciación. Ejemplos
Matemáticas Discretas Lógica
Coordinación de Ciencias Computacionales - INAOE Matemáticas Discretas Lógica Cursos Propedéuticos 2010 Ciencias Computacionales INAOE Lógica undamentos de Lógica Cálculo proposicional Cálculo de predicados
1. Resolución en lógica proposicional
1. Resolución en lógica proposicional 1.1. Introducción 1.1.1. Pseudo-motivación Si tengo una fórmula de proposicional, puedo probar con fuerza bruta todas las valuaciones a ver si es satisfactible? Si
Inteligencia en Redes de Comunicaciones. Prolog. Julio Villena Román.
Inteligencia en Redes de Comunicaciones Prolog Julio Villena Román [email protected] Prolog La lógica proporciona: un lenguaje base para la representación del conocimiento modelos para el razonamiento
Búsqueda e inferencia lógica. Programación Lógica y Prolog
Búsqueda e inferencia lógica Programación Lógica y Prolog Contenidos 1. Introducción a la Programación Lógica. 2. Programas Definidos: Sintaxis de Edimburgo. 3. Resolución SLD. 4. Intérprete abstracto
Tema 2: Métodos de Deducción para la Lógica Proposicional
Tema 2: Métodos de Deducción para la Lógica Proposicional Dpto. Ciencias de la Computación Inteligencia Artificial Universidad de Sevilla Lógica y Computabilidad Curso 2010 11 LC, 2010 11 Métodos de Deducción
INTRODUCCION A LA INTELIGENCIA ARTIFICIAL MÓDULO 6- CÁLCULO DE PREDICADOS Y LÓGICA DE PRIMER ORDEN
INTRODUCCION A LA INTELIGENCIA ARTIFICIAL MÓDULO 6- CÁLCULO DE PREDICADOS Y LÓGICA DE PRIMER ORDEN Referencias: Inteligencia Artificial Russell and Norvig Cap.6. Artificial Intellingence Nils Nilsson Ch.4
Lógica proposicional. Ivan Olmos Pineda
Lógica proposicional Ivan Olmos Pineda Introducción Originalmente, la lógica trataba con argumentos en el lenguaje natural es el siguiente argumento válido? Todos los hombres son mortales Sócrates es hombre
Tema 1. PROGRAMACION en PROLOG. 1.1. Sintaxis: Hechos, Preguntas y Reglas. 1.2. Sintaxis: Objetos estructurados. Listas.
. PROGRAMACION en PROLOG 1 Tema 1. PROGRAMACION en PROLOG 1.1. Sintaxis: Hechos, Preguntas y Reglas. 1.2. Sintaxis: Objetos estructurados. Listas. 1.3. Computación: Unificación y Regla de Resolución. 1.4.
Lógica. Matemática discreta. Matemática discreta. Lógica
Lógica Matemática discreta Lógica: rama de las matemáticas instrumento para representar el lenguaje natural proporciona un mecanismo de deducción 2 y de predicados Razonamientos Cálculo proposicional Cálculo
Tema 1: Revisión de Prolog
Razonamiento Automático Curso 999 2000 Tema : Revisión de Prolog José A. Alonso Jiménez Miguel A. Gutiérrez Naranjo Dpto. de Ciencias de la Computación e Inteligencia Artificial Universidad de Sevilla
a ij x i x j = [x] t B A+At ) t = At +(A t ) t = At +A x i x j + a ij + a ji x j x i = s ij x i x j + s ji x j x i 2
68 Matemáticas I : Álgebra Lineal Tema 7 Formas cuadráticas Aunque, pueda parecernos que vamos a estudiar un nuevo concepto, un caso particular de las formas cudráticas ya ha sido estudiado, pues el cuadrado
Tipos algebraicos y abstractos. Algoritmos y Estructuras de Datos I. Tipos algebraicos
Algoritmos y Estructuras de Datos I 1 cuatrimestre de 009 Departamento de Computación - FCEyN - UBA Programación funcional - clase Tipos algebraicos Tipos algebraicos y abstractos ya vimos los tipos básicos
Tema 1: Sintaxis y Semántica de la Lógica Proposicional
Tema 1: Sintaxis y Semántica de la Lógica Proposicional Dpto. Ciencias de la Computación e Inteligencia Artificial Universidad de Sevilla Lógica y Computabilidad Curso 2010 11 LC, 2010 11 Lógica Proposicional
Tema 9: Declaraciones de tipos y clases
Tema 9: Declaraciones de tipos y clases Programación declarativa (2009 10) José A. Alonso Jiménez Grupo de Lógica Computacional Departamento de Ciencias de la Computación e I.A. Universidad de Sevilla
Tema 2: Representación de problemas como espacios de estados
Tema 2: Representación de problemas como espacios de estados José Luis Ruiz Reina José Antonio Alonso Franciso J. Martín Mateos Departamento de Ciencias de la Computación e Inteligencia Artificial Universidad
Propiedades de lenguajes independientes del contexto
Capítulo 12. Propiedades de lenguajes independientes del contexto 12.1. Identificación de lenguajes independientes del contexto Lema de bombeo. 12.2. Propiedades Cierre, Complemento de lenguajes, Sustitución,
GUIA 4: ALGEBRA DE BOOLE
GUIA 4: ALGEBRA DE BOOLE En 1854 George Boole introdujo una notación simbólica para el tratamiento de variables cuyo valor podría ser verdadero o falso (variables binarias) Así el álgebra de Boole nos
2.1.- Formalización de enunciados en lenguaje ordinario
2.1.- Formalización de enunciados en lenguaje ordinario Una de las tareas más importantes para poder aplicar la lógica a los diferentes campos del saber humano es la formalización, también conocida como
Lógica de primer orden: Repaso y notación
Lógica de primer orden: Repaso y notación IIC3263 IIC3263 Lógica de primer orden: Repaso y notación 1 / 29 Lógica de primer orden: Vocabulario Una fórmula en lógica de primer orden está definida sobre
Ejercicio 1 Completa: Monomio Coeficiente Parte literal Grado
Soluciones a los ejercicios de Álgebra, primera parte: Ejercicio 1 Completa: Monomio Coeficiente Parte literal Grado 3xz 3 xz 3 1x zy 1 4 abc 1 5 x 5 3 x zy 6 4 abc 6 x 1 Ejercicio Halla el valor numérico
Distribuciones de Probabilidad para Variables Aleatorias Discretas 1
Distribuciones de Probabilidad para Variables Aleatorias Discretas Apellidos, nombre Martínez Gómez, Mónica ([email protected]) Marí Benlloch, Manuel ([email protected]) Departamento Centro Estadística,
23/09/2009. Introducción Hello word La familia Buendía Recursión Listas
Prolog Contenido Introducción Hello word La familia Buendía Recursión Listas Qué es Prolog? Lenguaje de programación Declarativo Programación lógica Está compuesto de: Hechos Reglas Declarativo vs Imperativo
PARADIGMAS DE PROGRAMACIÓN CALCULO LAMBDA CALCULO LAMBDA
PARADIGMAS DE PROGRAMACIÓN 2006 CALCULO LAMBDA CALCULO LAMBDA El cálculo lambda fue desarrollado por Alonso Church en la década del 30 con el objeto de dar una teoría general de las funciones. El cálculo
Límites y Continuidad
Tema 2 Límites y Continuidad Introducción En este tema se trata el concepto de límite de una función real de variable real y sus propiedades, así como algunas de las técnicas fundamentales para el cálculo
Teorema de incompletitud de Gödel
Teorema de incompletitud de Gödel Theorem (Gödel) Th(N) es una teoría indecidible. IIC2213 Teorías 79 / 109 Teorema de incompletitud de Gödel Theorem (Gödel) Th(N) es una teoría indecidible. Corolario
Inteligencia Artificial
Inteligencia Artificial Conjunto de técnicas que se aplican en el diseño de programas de computador para la resolución de problemas que por su dificultad requieren el uso de un cierto grado de inteligencia.
Lógica de Predicados
Lógica de Predicados En las últimas décadas, ha aumentado considerablemente el interés de la informática por la aplicación de la lógica a la programación. De hecho, ha aparecido un nuevo paradigma de programación,
Teoremas: Condiciones Necesarias, Condiciones Suficientes y Condiciones Necesarias y Suficientes
FUNCIONES DE VARIABLE COMPLEJA 1 Teoremas: Condiciones Necesarias, Condiciones Suficientes y Condiciones Necesarias y Suficientes Lógica Matemática Una prioridad que tiene la enseñanza de la matemática
PROLOG Inteligencia Artificial Universidad de Talca, II Semestre 2005. Jorge Pérez R.
PROLOG Inteligencia Artificial Universidad de Talca, II Semestre 2005 Jorge Pérez R. 1 Introducción a PROLOG PROLOG es un lenguaje interpretado basado en la lógica de predicados de primer orden. Puede
POLINOMIOS Y DIVISIÓN DE POLINOMIOS MATEMÁTICAS 3º ESO
POLINOMIOS Y DIVISIÓN DE POLINOMIOS MATEMÁTICAS 3º ESO Dado que los polinomios se utilizan para describir curvas de diferentes tipos, la gente los utiliza en el mundo real para dibujar curvas. Por ejemplo,
Grafos y espacios de estados
Ingeniería Informática Ingeniería Técnica en Informática Departamento de Lenguajes y Ciencias de la Computación Universidad de Málaga Contenido 1. Grafos 2. Espacios de estados 2 Grafos Grafos Definición:
Programación con Listas
Capítulo 2 Programación con Listas En Prolog la estructura de lista está predefinida como una estructura recursiva lineal cuyas componentes pueden ser heterogéneas porque en Prolog no existe una comprobación
FUNCIONES DE PROPORCIONALIDAD: y = mx. Su pendiente es 0. La recta y = 0 coincide con el eje
Funciones elementales - Matemáticas B 4º E.S.O. FUNCIONES ELEMENTALES DISTINTOS TIPOS DE FUNCIONES LINEALES FUNCIONES DE PROPORCIONALIDAD: y = mx FUNCIÓN CONSTANTE: y = n Las funciones de proporcionalidad
Redes Semánticas. Redes semánticas. Limitaciones de las redes semánticas. Notas
Redes semánticas Redes Semánticas La lógica como lenguaje de representación tiene dificultades prácticas Son necesarios mecanismos mas intuitivos y fáciles de usar La psicología cognitiva afirma: La representación
TÍTULO: MATEMÁTICA DISCRETA Y LÓGICA Disponibilidad
TÍTULO: MATEMÁTICA DISCRETA Y LÓGICA Disponibilidad Calculo proposicional 1 Argumentos y proposiciones lógicas 1 Algunos argumentos lógicos importantes 2 Proposiciones 4 Conexiones lógicas 5 Negación (tabla)
Semántica: principales usos. Semántica: principales enfoques. Semántica Operacional. Sintaxis abstracta de un lenguaje (sujeto) Semántica Operacional
Semántica: principales enfoques Semántica Operacional Se define el significado mediante una máquina abstracta (con estados) y secuencias de cómputos sobre dicha máquina Semántica Denotacional El significado
Tema 6: Estructuras de datos recursivas
Tema 6: Estructuras de datos recursivas Índice 1 Listas jerárquicas...2 2 Árboles binarios... 4 3 Árboles genéricos...7 4 Referencias...10 1. Listas jerárquicas Las listas tienen la propiedad de la clausura
REGLAS Y LEYES LOGICAS
LOGICA II REGLAS Y LEYES LOGICAS Una regla lógica, o regla de inferencia (deductiva), es una forma válida de razonamiento que es empleada para inferir deductivamente ciertos enunciados a partir de otros.
Gramáticas lógicas. Programación Lógica InCo
Gramáticas lógicas Programación Lógica InCo DCG: Definite clause grammars Gramáticas escritas con una sintaxis similar a la usual que se traducen a cláusulas definidas y, por lo tanto, a predicados Prolog.
Variables aleatorias unidimensionales
Estadística II Universidad de Salamanca Curso 2011/2012 Outline Variable aleatoria 1 Variable aleatoria 2 3 4 Variable aleatoria Definición Las variables aleatorias son funciones cuyos valores dependen
Capítulo 3. Polinomios
Capítulo 3 Polinomios 29 30 Polinomios de variable real 31 Polinomios de variable real 311 Evaluación de polinomios Para el cálculo eficiente de los valores de un polinomio se utiliza el algoritmo de Horner,
Sintaxis LÓGICA COMPUTACIONAL CÁLCULO DE PROPOSICIONES. Funciones boolenas. Semántica
Proposiciones atómicas y compuestas Sintaxis LÓGICA COMPUTACIONAL CÁLCULO DE PROPOSICIONES Francisco Hernández Quiroz Departamento de Matemáticas Facultad de Ciencias, UNAM E-mail: fhq@cienciasunammx Página
ÁLGEBRA I. Curso Grado en Matemáticas
ÁLGEBRA I. Curso 2012-13 Grado en Matemáticas Relación 1: Lógica Proposicional y Teoría de Conjuntos 1. Establecer las siguientes tautologías: (a) A A A (b) A A A (c) A B B A (d) A B B A (e) (A B) C A
CLAVE: MIS 206 PROFESOR: MTRO. ALEJANDRO SALAZAR GUERRERO
MATEMÁTICAS AVANZADAS PARA LA INGENIERÍA EN SISTEMAS CLAVE: MIS 206 PROFESOR: MTRO. ALEJANDRO SALAZAR GUERRERO 1 1. SISTEMAS LINEALES DISCRETOS Y CONTINUOS 1.1. Modelos matemáticos 1.2. Sistemas 1.3. Entrada
Conjuntos de Vectores y Matrices Ortogonales
Conjuntos de Vectores y Matrices Ortogonales Departamento de Matemáticas, CCIR/ITESM 28 de junio de 2011 Índice 21.1.Introducción............................................... 1 21.2.Producto interno............................................
5.1 DISTINTOS TIPOS DE FUNCIONES LINEALES
Tema 5 : Funciones elementales - Matemáticas B 4º E.S.O. 1 TEMA 5 FUNCIONES ELEMENTALES 5.1 DISTINTOS TIPOS DE FUNCIONES LINEALES 3º 5.1.1 - FUNCIONES DE PROPORCIONALIDAD: y = mx Las funciones de proporcionalidad
LÓGICA COMPUTACIONAL
CURSO 2006-2007 OBJETIVOS Y TEMARIO 1. Presentación y objetivos. 2. Temario. Breve descripción. 1. Presentación y objetivos La asignatura «Lógica Computacional» presenta para este año un programa que está
El ente básico de la parte de la matemática conocida como ANÁLISIS, lo constituye el llamado sistema de los número reales.
EL SISTEMA DE LOS NÚMEROS REALES Introducción El ente básico de la parte de la matemática conocida como ANÁLISIS, lo constituye el llamado sistema de los número reales. Números tales como:1,3, 3 5, e,
Sistemas de Ecuaciones Lineales y Matrices
Capítulo 4 Sistemas de Ecuaciones Lineales y Matrices El problema central del Álgebra Lineal es la resolución de ecuaciones lineales simultáneas Una ecuación lineal con n-incógnitas x 1, x 2,, x n es una
Introducción a la Matemática Discreta
Introducción a la Matemática Discreta Lógica proposicional y Álgebras de Boole Luisa María Camacho Camacho Introd. a la Matemática Discreta 1 / 25 Introducción a la Matemática Discreta Temario Tema 1.
Lógica proposicional
Lógica proposicional La palabra lógica viene del griego y significa, razón, tratado o ciencia. En matemáticas es la ciencia que estudia los métodos de razonamiento proporciona reglas y técnicas para determinar
PROPUESTA A. 3A. a) Despeja X en la ecuación matricial X A B = 2X donde A, B y X son matrices cuadradas
PROPUESTA A 1A a) Calcula el valor de a R, a > 0, para que la función sea continua en x = 0. b) Calcula el límite 2A. Calcula las siguientes integrales (1 25 puntos por cada integral) Observación: El cambio
UNIDAD I: SISTEMAS DE DOS ECUACIONES CON DOS INCÓGNITAS
UNIDAD I: SISTEMAS DE DOS ECUACIONES CON DOS INCÓGNITAS Sistemas de dos ecuaciones con dos incógnitas. Método de igualación. Método de reducción. Método de sustitución Método de eliminación Gaussiana.
LÓGICA DE PROPOSICIONAL Y PREDICADOS INGENIERÍA DE SISTEMAS
LÓGICA DE PROPOSICIONAL Y PREDICADOS INGENIERÍA DE SISTEMAS Patricia Zamora Villalobos John Alexander Coral Llanos Josué Maleaño Trejos Prof. Francisco Carrera Fecha de entrega: miércoles de setiembre
Capítulo 4. Lógica matemática. Continuar
Capítulo 4. Lógica matemática Continuar Introducción La lógica estudia la forma del razonamiento, es una disciplina que por medio de reglas y técnicas determina si un teorema es falso o verdadero, además
El TAD Árbol. El TAD Árbol
Objetivos! Presentar el árbol como estructura de datos jerárquica! Estudiar diferentes variantes de árboles, tanto en su especificación como en su implementación Contenidos 3.1 Concepto, definiciones y
Para hallar, gráficamente, la solución de un problema de Programación Lineal con dos variables, procederemos del siguiente modo:
Siempre que el problema incluya únicamente dos o tres variables de decisión, podemos representar gráficamente las restricciones para dibujar en su intersección el poliedro convexo que conforma la región
Tema 4: Redes semánticas y marcos
Inteligencia Artificial 2 Curso 2002 2003 Tema 4: Redes semánticas y marcos José A. Alonso Jiménez Francisco J. Martín Mateos José L. Ruiz Reina Dpto. de Ciencias de la Computación e Inteligencia Artificial
UNIDAD DE APRENDIZAJE I
UNIDAD DE APRENDIZAJE I Saberes procedimentales 1. Define en forma correcta el concepto de desigualdad y el de valor absoluto. 2. Explica la diferencia entre constante, parámetro y variable. 3. Define
ÁLGEBRA DE BOOLE Y FUNCIONES LÓGICAS
1. Introducción ÁLGERA DE OOLE Y FUNCIONES LÓGICAS El Álgebra de oole es una parte de la matemática, la lógica y la electrónica que estudia las variables, operaciones y expresiones lógicas. Debe su nombre
2 LÓGICA DE PRIMER ORDEN
2 LÓGICA DE PRIMER ORDEN En términos generales, la Programación Lógica atañe al uso de la lógica para representar y resolver problemas Más adelante precisaremos que, en realidad, usaremos una lógica restringida
TEMA 5 El tipo grafo. Tipo grafo
TEMA 5 El tipo grafo PROGRAMACIÓN Y ESTRUCTURAS DE DATOS Tipo grafo 1. Concepto de grafo y terminología 2. Especificación algebraica. Representación de grafos.1. Recorrido en profundidad o DFS.2. Recorrido
unicoos Funciones lineales Objetivos 1.Función de proporcionalidad directa pág. 170 Definición Representación gráfica
10 Funciones lineales Objetivos En esta lección aprenderás a: Identificar problemas en los que intervienen magnitudes directamente proporcionales. Calcular la función que relaciona a esas magnitudes a
IIC2213. IIC2213 Teorías 1 / 42
Teorías IIC2213 IIC2213 Teorías 1 / 42 Qué es una teoría? Una teoría es un cúmulo de información. Debe estar libre de contradicciones. Debe ser cerrada con respecto a lo que se puede deducir de ella. Inicialmente
