Ingenieria artificial
INTELIGENCIA ARTIFICIAL
UNIDAD II: Introducción AL Lenguaje de programación Lógica
1. INTRODUCCIÓN AL LENGUAJE DE PROGRAMACIÓN LÓGICA ............................................. 2
1.1 Paradigmas de Programación...................................................................................... 2 1.2 Programación Lógica .................................................................................................. 3 2. LÓGICA ...................................................................................................................... 5 2.1 Lógica Proposicional................................................................................................... 5 2.2 Lógica de Predicados de Primer Orden .......................................................................... 6 3. FUNDAMENTOS DE PROLOG ....................................................................................... 11 3.1 Programación Lógica ................................................................................................ 12 3.2 Programas enPROLOG ............................................................................................. 12 3.3 Comentarios ........................................................................................................... 21 4. 5. ENTORNO DE DESARROLLO PROLOG ........................................................................... 21 FUNDAMENTOS DE VISUAL PROLOG............................................................................ 22
Docente: Ing. María Nícida Malca Quispe
1
1. INTRODUCCIÓN AL LENGUAJE DE PROGRAMACIÓN LÓGICA
1.1 Paradigmas de Programación
Un paradigma de programación representa un enfoque particular o filosofía para la construcción del software. No es mejor uno que otro sino que cada uno tiene ventajas y desventajas. También hay situacionesdonde un paradigma resulta más apropiado que otro. Entre algunos paradigmas tenemos: Programación Imperativa: Describe la programación en términos del estado del programa y sentencias que cambian dicho estado. Los programas imperativos son un conjunto de instrucciones que le indican al computador ¿CÓMO? realizar una tarea. Algoritmos + Estructura de Datos = Programa. En la programaciónprocedimental o imperativa generalmente debemos pensar y elaborar el cómo nosotros mismos. No hay ninguna diferencia entre el hecho de que estemos programando en ensamblador o en otro lenguaje como C, C++, C#… El modo de construir nuestro programa será articular una por una las instrucciones que queremos que se ejecuten, ya que de ningún otro modo serán ejecutadas. En la programación procedimental sólo seejecuta aquello que nosotros, imperativamente, exigimos que sea ejecutado. Los lenguajes de programación imperativa están orientados a la arquitectura del computador: Secuencialidad +Saltos Estado, Variable, Dirección El concepto básico es la instrucción. No orientados al modo de pensar humano. Sus elementos han ido avanzando para hacerse más cómodos (subprogramas, módulos, objetos). Elparalelismo/concurrencia aparece de forma implícita Ejemplos: Ensamblador, Fortran, Cobol, ASP, C, C++, BASIC, Java.
Programación Declarativa: Basado en el desarrollo de programas especificando (¿QUE? necesito) o "declarando" un conjunto de condiciones, proposiciones, afirmaciones, restricciones, ecuaciones o transformaciones que describen el problema y detallan su solución. La solución esobtenida mediante mecanismos internos de control, sin especificar exactamente cómo encontrarla. No existen asignaciones destructivas, y las variables son utilizadas con Transparencia referencial Modelos de Desarrollo: Funcional, Lógico y de Flujo de Datos. Basada en el pensamiento humano: las matemáticas. Elementos básicos: los que nosotros nos hemos dotado: funciones, relaciones, fórmulas,...
Regístrate para leer el documento completo.