Objetivos. Contenidos. Revisar los principales conceptos de la lógica de primer orden

Tamaño: px
Comenzar la demostración a partir de la página:

Download "Objetivos. Contenidos. Revisar los principales conceptos de la lógica de primer orden"

Transcripción

1 Especificación TEMA 1 formal de problemas Objetivos Revisar los principales conceptos de la lógica de primer orden Entender el concepto de estado de cómputo y cómo se modela con predicados lógicos Familiarizarse con los elementos de la especificación formal Especificar formalmente algoritmos simples Contenidos 1.1 Introducción. 1.2 Revisión de lógica de predicados 1.3 Especificación con predicados. 1

2 Motivación Necesitamos exponer nuestra idea a otros programadores Poder hacerle ver a otro colega que esto hace lo que digo Poder dejar claro qué es lo que tiene que hacer el programador Necesitamos especificar formalmente el algoritmo Especificación de una función en lenguaje natural Diseñar un algoritmo de una función que nos diga si dado un vector de 1000 elementos enteros y un número n entero entre 0 y 1000, ambos incluidos, hay algún elemento en el vector, en una posición que n, que sea igual a la suma de sus elementos anteriores en el vector. En el caso en que n sea 0 la función deberá devolver falso. En el caso en que el primer elemento del vector sea 0 y n mayor que 0, la función deberá devolver verdadero. Especificación pre-post con predicados lógicos α = α α = β β = 2

3 Especificación formal con predicados Ventajas Brevedad Precisión Permite la derivación y la verificación formal Especificación pre-post con predicados Algoritmo como caja negra del que se conocen solamente sus parámetros de entrada y salida (su interfaz). Es una función de estados en estados Comienza su ejecución en un estado inicial válido El valor de sus parámetros de entrada Termina en un estado final En el que los resultados están en los parámetros de salida {Q} S {R} Si S comienza su ejecución en un estado descrito por Q, S termina, y lo hace en un estado descrito por R Especificación pre-post Especificación de la interfaz de la función/procedimiento fun nombrefunción (p 1 : t 1 ; p 2 : t 2.. p n : t n ) dev (q 1 : r 1 ; q 2 : r 2.. q m : r m ) accion nombreacción (p 1 : cf t 1 ; p 2 : cf t 2.. p n : cf t n ) cf : nada o ent para sólo entrada sal para sólo salida ent/sal para entrada y salida 3

4 Especificación pre-post Q Precondición Predicado que tiene como variables libres los parámetros de entrada de S Caracteriza el conjunto de estados iniciales para los que está garantizado que el algoritmo devuelve un resultado correcto Describe las obligaciones del usuario Si se llama al algoritmo en un estado no definido por Q, el resultado es impredecible (no terminar, resultado absurdo, razonable, ) R Postcondición Predicado que tiene como variables libres los parámetros de entrada y de salida de S Caracteriza la relación entre cada estado inicial válido y el estado final correspondiente que alcanzará el algoritmo Describe las obligaciones del implementador, suponiendo que el usurio cumple las suyas Lógica de proposiciones Es la lógica más simple Simboliza y describe razonamientos basados en enunciados declarativos Está lloviendo, Antonio corre, 3+2=5 La extiende la lógica de predicados (objetos y sus relaciones) Algunas plantas tienen flores Lógica de proposiciones Proposiciones (variables proposicionales) Son los enunciados Sólo verdad o falso P, q, r, s, Fórmulas (sentencias) Combinación de variables proposicionales y conectivas (y, o, ) Valores de verdad o falso según las variables y las tablas de verdad de las conectivas 4

5 Lógica de proposiciones Sintaxis Regla de formación: una fórmula es una secuencia finita de proposiciones, conectivas y paréntesis Fórmula bien formada es la que tiene sentido Lógica de proposiciones Semántica tabla de verdad Lógica de predicados Situaciones imposible de expresar en lógica de proposiones Todos los hombres son mortales Sócrates es un hombre Luego Sócrates es mortal Tenemos Propiedades de individuos (ser hombre, mortal) Se pueden aplicar a un individuo cualquiera o a uno concreto (variable y constante) Necesitamos expresar una propiedad para todos los individuos o para alguno de ellos (cuantificadores) 5

6 Lógica de predicados Los predicados se especifican mediante fórmulas lógicas Los predicados se denotan con letras mayúsculas P x+y > 0; Q α N.a[α] < n Componentes de un predicado Variables libres (letras minúsculas) y ligadas (letras griegas) Conectivas,,, Cuantificadores,,,,N Lógica de predicados Variables en los predicados: Variables libres: corresponden a las variables del programa Variables mudas o ligadas: van asociadas a algún tipo de cuantificador. Ayudan a describir aspectos sobre un dominio. Están ligadas al cuantificador más cercano Un mismo identificador denota distintas variables Ej.: x D1. (f(x) ^ x D2.g(x))) Ej: x(x>y) ^ y(y<=x), en el primer conjuntante x es ligada e y es libre, en el segundo y es ligada y x libre. Lógica de predicados Predicados atómicos Una constante booleana (verdadero,falso) Una variable de tipo booleano (x,y) Una expresión relacional (x < y, x + y > 0) Una función booleana (espar(x), estaordenado(x)) 6

7 Lógica de predicados Siendo P y Q predicados y D un dominio de valores son también predicados P P Q P Q P Q P Q D. P() D. P() Lógica de predicados Cuantificadores y dominios vacíos Cuando el dominio de un cuantificador es vacío, la expresión cuantificada es igual al elemento neutro de la operación que representa el cuantificador cierto falso 0 1 N 0 7

8 Sustitución de variables libres Resultado de sustituir todas las apariciones libres de la variable x en la fórmula P por la expresión e Condiciones de la expresión e no debe contener variables ligadas de P debe ser del mismo tipo de datos que x Sustitución de variables libres Denota el resultado de sustituir simultáneamente todas las apariciones de las variables libres x 1,.,x n en el predicado P por las expresiones e 1,..,e n (Cada e i con las mismas condiciones ) Estados Estado de una variable de un programa Estado de un programa 8

9 Evaluación de predicados Para poder evaluar un predicado hay que conocer el estado de todas sus variables libres Un predicado P define un conjunto de estados -estados (P)- Predicado P más fuerte (más débil) que otro Q estados(p) estados(q) (estados(p) estados(q)) P Q ( P es más fuerte que Q, Q es más débil que P, Q es deducible de P Predicados no comparables Evaluación de predicados Para poder evaluar un predicado hay que conocer el estado de todas sus variables libres Un predicado P define un conjunto de estados -estados (P)- Predicado P más fuerte (más débil) que otro Q estados(p) estados(q) (estados(p) estados(q)) P Q ( P es más fuerte que Q, Q es más débil que P, Q es deducible de P Predicados no comparables Evaluación de predicados Siempre se puede reforzar un predicado P P Q P Siempre se puede debilitar un predicado P P P Q Hay otra técnica para debilitar predicados El predicado más debil es cierto cierto P cierto El predicado más fuerte es falso falso P falso Como consecuencia falsop 9

10 Especificación pre-post PLs α = α α = β β = Las llamadas a essuma con valores de n<0 o >1000 son incorrectas. En las llamadas con n=0 la función ha de devolver falso en b. En las llamadas con n>0 y a[1]=0 la función ha de devolver cierto en b. En el resto de las llamadas la función ha de devolver: cierto en b, si al menos hay un elemento de a[i], siendo i n, que sea igual a la suma de sus predecesores falso en b, si no hay ninguno que cumpla dicha propiedad 10

{} representa al conjunto vacío, es decir, aquel que no contiene elementos. También se representa por.

{} representa al conjunto vacío, es decir, aquel que no contiene elementos. También se representa por. 2. Nociones sobre Teoría de Conjuntos y Lógica Para llevar a cabo nuestro propósito de especificar formalmente los problemas y demostrar rigurosamente la correctitud de nuestro programas, introduciremos

Más detalles

UNIDAD I: LÓGICA PROPOSICIONAL

UNIDAD I: LÓGICA PROPOSICIONAL UNIDAD I: LÓGICA PROPOSICIONAL ASIGNATURA: INTRODUCCIÓN A LA COMPUTACIÓN CARRERAS: LICENCIATURA Y PROFESORADO EN CIENCIAS DE LA COMPUTACIÓN DEPARTAMENTO DE INFORMÁTICA FACULTAD DE CIENCIAS FÍSICO MATEMÁTICA

Más detalles

Tipos Abstractos de Datos

Tipos Abstractos de Datos Objetivos Repasar los conceptos de abstracción de datos y (TAD) Diferenciar adecuadamente los conceptos de especificación e implementación de TAD Presentar la especificación algebraica como método formal

Más detalles

Introducción a los Tipos Abstractos de Datos

Introducción a los Tipos Abstractos de Datos Página 1 de 8 Introducción a los Tipos Abstractos de Datos Introducción: Concepto de abstracción Abstracción funcional y abstracción de datos Construcción de tipos abstractos de datos Especificación de

Más detalles

Introducción. Lógica de proposiciones: introducción. Lógica de proposiciones. P (a) x. Conceptos

Introducción. Lógica de proposiciones: introducción. Lógica de proposiciones. P (a) x. Conceptos Introducción César Ignacio García Osorio Lógica y sistemas axiomáticos 1 La lógica ha sido históricamente uno de los primeros lenguajes utilizados para representar el conocimiento. Además es frecuente

Más detalles

Significado de las f.b.f (fórmulas bien formadas) en términos de objetos, propiedades y relaciones en el mundo

Significado de las f.b.f (fórmulas bien formadas) en términos de objetos, propiedades y relaciones en el mundo Significado de las f.b.f (fórmulas bien formadas) en términos de objetos, propiedades y relaciones en el mundo Semánticas del cálculo de predicados proporcionan las bases formales para determinar el valor

Más detalles

INSTITUTO SUPERIOR TECNOLÓGICO NORBERT WIENER

INSTITUTO SUPERIOR TECNOLÓGICO NORBERT WIENER INSTITUTO SUPERIOR TECNOLÓGICO NORBERT WIENER Manual del Alumno ASIGNATURA: Matemática I PROGRAMA: S3C Lima-Perú SESION 1 SISTEMAS DE NUMERACION DEFINICION : Es un conjunto de reglas y principios que nos

Más detalles

Semántica Denotacional

Semántica Denotacional Semántica Denotacional Idea: El significado de un programa es la función denotada por el programa Componentes del metalenguaje para la definición semántica denotacional de un L.P.: Dominios sintácticos

Más detalles

Repaso de Lógica de Primer Orden

Repaso de Lógica de Primer Orden Repaso de Lógica de Primer Orden IIC3260 IIC3260 Repaso de Lógica de Primer Orden 1 / 29 Lógica de primer orden: Vocabulario Una fórmula en lógica de primer orden está definida sobre algunas constantes

Más detalles

Espacios Vectoriales

Espacios Vectoriales Espacios Vectoriales Departamento de Matemáticas, CCIR/ITESM 4 de enero de 2 Índice 3.. Objetivos................................................ 3.2. Motivación...............................................

Más detalles

Scripting en el cliente: Javascript. Tecnologías Web

Scripting en el cliente: Javascript. Tecnologías Web Scripting en el cliente: Javascript Tecnologías Web Motivación Por qué usar JavaScript? Permite crear efectos atractivos visualmente Permite crear sitios WEB que se visualicen de la misma manera en distintos

Más detalles

INDICE Parte I. Conceptos 1. El estudio de los lenguajes de programación 2. Cuestiones de diseño de lenguajes

INDICE Parte I. Conceptos 1. El estudio de los lenguajes de programación 2. Cuestiones de diseño de lenguajes INDICE Parte I. Conceptos 1 1. El estudio de los lenguajes de programación 1.1. Por qué estudiar lenguajes de programación? 2 1.2. Breve historia de los lenguajes de programación 1.2.1. Desarrollo de los

Más detalles

Lenguajes y Compiladores

Lenguajes y Compiladores Información: http://www.cs.famaf.unc.edu.ar/wiki/ Profesores: Héctor Gramaglia, Miguel Pagano, Demetrio Vilela Régimen de regularidad y Promoción Se tomarán 2 parciales Promoción: obteniendo al menos 7

Más detalles

INDICE. XVII Prólogo a la edición en español. XXI 1. Calculo proporcional 1.1. Argumentos y proporciones lógicas

INDICE. XVII Prólogo a la edición en español. XXI 1. Calculo proporcional 1.1. Argumentos y proporciones lógicas INDICE Prologo XVII Prólogo a la edición en español XXI 1. Calculo proporcional 1.1. Argumentos y proporciones lógicas 1 1.1.1. Introducción 1.1.2. Algunos argumentos lógicos importantes 2 1.1.3. Proposiciones

Más detalles

personal.us.es/elisacamol Elisa Cañete Molero Curso 2011/12

personal.us.es/elisacamol Elisa Cañete Molero Curso 2011/12 Teoría de conjuntos. Teoría de Conjuntos. personal.us.es/elisacamol Curso 2011/12 Teoría de Conjuntos. Teoría de conjuntos. Noción intuitiva de conjunto. Propiedades. Un conjunto es la reunión en un todo

Más detalles

((X A Y ) = A ) si y solo si X = Y, A = B, A X = X, (X A Y ) = X Y, (X A Y ) = X Y

((X A Y ) = A ) si y solo si X = Y, A = B, A X = X, (X A Y ) = X Y, (X A Y ) = X Y El examen de Lógica y fundamentos del 11-02-2005 resuelto por cortesía de Alberto Castellón 1) Sea A = P(B) el conjunto de los subconjuntos de un conjunto B. a) Pruébese que A es un modelo de la teoría

Más detalles

Basic Object Oriented Programming (BOOP) Gramática del Lenguaje. Ever Mitta Flores

Basic Object Oriented Programming (BOOP) Gramática del Lenguaje. Ever Mitta Flores Ever Mitta Flores Índice 1. Clase @Principal...3 2. Comentarios...3 3. Definición de Atributos...3 4. Definición de Métodos...4 5. Declaración de Variables...4 6. Asignación de Valores...5 7. Definición

Más detalles

Tema 1. Introducción a los TAD

Tema 1. Introducción a los TAD Tema 1. Introducción a los TAD Objetivos En este tema nos ocupamos inicialmente del concepto de abstracción, dedicando la mayor atención a la abstracción de datos, estudiando aspectos relacionados con

Más detalles

INTRODUCCIÓN. Estructura de Datos Tipos Abstractos de Datos (TAD S) Profs. Lorna Figueroa M. Mauricio Solar F. UTFSM 1 / 2008

INTRODUCCIÓN. Estructura de Datos Tipos Abstractos de Datos (TAD S) Profs. Lorna Figueroa M. Mauricio Solar F. UTFSM 1 / 2008 INTRODUCCIÓN Estructura de Datos Tipos Abstractos de Datos (TAD S) Para poder obtener un programa que resuelva un problema dado, son necesarios varios pasos : La formulación y especificación del problema

Más detalles

Ejemplos: Sean los conjuntos: A = { aves} B = { peces } C = { anfibios }

Ejemplos: Sean los conjuntos: A = { aves} B = { peces } C = { anfibios } La Teoría de Conjuntos es una teoría matemática, que estudia básicamente a un cierto tipo de objetos llamados conjuntos y algunas veces, a otros objetos denominados no conjuntos, así como a los problemas

Más detalles

Ejemplo 1.2 En el capitulo anterior se demostró que el conjunto. V = IR 2 = {(x, y) : x, y IR}

Ejemplo 1.2 En el capitulo anterior se demostró que el conjunto. V = IR 2 = {(x, y) : x, y IR} Subespacios Capítulo 1 Definición 1.1 Subespacio Sea H un subconjunto no vacio de un espacio vectorial V K. Si H es un espacio vectorial sobre K bajo las operaciones de suma y multiplicación por escalar

Más detalles

ELEMENTOS DE LÓGICA Y TEORÍA DE CONJUNTOS. Dra. Patricia Kisbye Dr. Alejandro L. Tiraboschi

ELEMENTOS DE LÓGICA Y TEORÍA DE CONJUNTOS. Dra. Patricia Kisbye Dr. Alejandro L. Tiraboschi ELEMENTOS DE LÓGICA Y TEORÍA DE CONJUNTOS Dra. Patricia Kisbye Dr. Alejandro L. Tiraboschi 3 INTRODUCCIÓN Estas notas han sido elaboradas con el objetivo de ofrecer al ingresante a las carreras de la

Más detalles

MLM 1000 - Matemática Discreta

MLM 1000 - Matemática Discreta MLM 1000 - Matemática Discreta L. Dissett Clase 04 Resolución. Lógica de predicados c Luis Dissett V. P.U.C. Chile, 2003 Aspectos administrativos Sobre el tema vacantes: 26 personas solicitaron ingreso

Más detalles

Tipos de datos. Lección 1. Programación. Curso 2006-2007. J. A. Bañares, Pedro J. Álvarez, S. Velilla

Tipos de datos. Lección 1. Programación. Curso 2006-2007. J. A. Bañares, Pedro J. Álvarez, S. Velilla Lección 1. Programación. Curso 2006-2007 Tipos de datos J. A. Bañares, Pedro J. Álvarez, S. Velilla http://diis.unizar.es/ Departamento de Informática e Ingeniería de Sistemas 2 Tipos de datos, constantes

Más detalles

Tecnologías en la Educación Matemática. Expresiones. Datos. Expresiones Aritméticas. Expresiones Aritméticas 19/08/2014

Tecnologías en la Educación Matemática. Expresiones. Datos. Expresiones Aritméticas. Expresiones Aritméticas 19/08/2014 Tecnologías en la Educación Matemática jac@cs.uns.edu.ar Dpto. de Ciencias e Ingeniería de la Computación UNIVERSIDAD NACIONAL DEL SUR 1 Datos Los algoritmos combinan datos con acciones. Los datos de entrada

Más detalles

ACTIONSCRIPT (AS) Proyectos II. Audiovisuales. Dpto. Escultura. UPV. [sintaxis elemental]

ACTIONSCRIPT (AS) Proyectos II. Audiovisuales. Dpto. Escultura. UPV. [sintaxis elemental] ACTIONSCRIPT (AS) Proyectos II. Audiovisuales. Dpto. Escultura. UPV. [sintaxis elemental] Action script es el lenguaje de programación que lleva incorporado el software de creación multimedia Macromedia

Más detalles

Lógica de Predicados 1

Lógica de Predicados 1 Lógica de Predicados 1 rafael ramirez rafael@iua.upf.es Ocata 320 Porqué Lógica de Predicados La logica proposicional maneja bien afirmaciones compuestas de no, y, o, si entonces En situaciones con un

Más detalles

IIC 2252 - Matemática Discreta

IIC 2252 - Matemática Discreta IIC 2252 - Matemática Discreta L. Dissett Clase 04 Lógica de predicados. Reglas de inferencia en lógica de predicados. Lógica de predicados Definiciones básicas: Un predicado es una afirmación que depende

Más detalles

Una variable de clase escalar tiene un nivel de indirección igual a 1. Por ejemplo, las variables i, b y x definidas como se muestra a continuación.

Una variable de clase escalar tiene un nivel de indirección igual a 1. Por ejemplo, las variables i, b y x definidas como se muestra a continuación. Descripción de la semántica de ALFA En esta descripción sólo se mencionarán los aspectos en los que el lenguaje de programación ALFA pueda diferir de otros lenguajes de programación de alto nivel. Se sobreentienden

Más detalles

Introducción al lenguaje del Robot

Introducción al lenguaje del Robot Capítulo 2 Algoritmos y Lógica Introducción al lenguaje del Robot Objetivos En este capítulo se verán con mayor profundidad algunos de los conceptos utilizados anteriormente para la deición de algoritmos.

Más detalles

Álgebras de Boole. Juan Medina Molina. 25 de noviembre de 2003

Álgebras de Boole. Juan Medina Molina. 25 de noviembre de 2003 Álgebras de Boole Juan Medina Molina 25 de noviembre de 2003 Introducción Abordamos en este tema el estudio de las álgebras de Boole. Este tema tiene una aplicación directa a la electrónica digital ya

Más detalles

Tema 3. El modelo Relacional

Tema 3. El modelo Relacional Tema 3. El modelo Relacional Juan Ignacio Rodríguez de León Resumen Presenta el modelo entidad-relación. Visión de alto nivel de las cuestiones referentes a diseño de bases de datos y los problemas encontrados

Más detalles

Proyecto Unico Interpretador de SetCalc

Proyecto Unico Interpretador de SetCalc Universidad Simón Bolívar Dpto. de Computación y Tecnología de la Información CI3721 - Traductores e Interpretadores Abril-Julio 2008 Proyecto Unico Interpretador de SetCalc A continuación se describe

Más detalles

INDICE Programación Introducción Capitulo 21 BASIC Capitulo 22. COBOL Capitulo 23 DELPHI Capitulo 24. FORTRAN Capitulo 25.

INDICE Programación Introducción Capitulo 21 BASIC Capitulo 22. COBOL Capitulo 23 DELPHI Capitulo 24. FORTRAN Capitulo 25. INDICE Programación Introducción 706 Capitulo 21 BASIC 711 Introducción 711 Sintaxis 713 Procedimientos y control de flujo 713 Tipos de datos 714 Disponibilidad y variantes del dialecto 714 Capitulo 22.

Más detalles

Procesadores de lenguaje Tema 5 Comprobación de tipos

Procesadores de lenguaje Tema 5 Comprobación de tipos Procesadores de lenguaje Tema 5 Comprobación de tipos Departamento de Ciencias de la Computación Universidad de Alcalá Resumen Sistemas de tipos. Expresiones de tipo. Equivalencia de tipos. Sobrecarga,

Más detalles

Números Reales. MathCon c 2007-2009

Números Reales. MathCon c 2007-2009 Números Reales z x y MathCon c 2007-2009 Contenido 1. Introducción 2 1.1. Propiedades básicas de los números naturales....................... 2 1.2. Propiedades básicas de los números enteros........................

Más detalles

Lenguaje C. Tipos de Datos Simples y Estructuras de Control

Lenguaje C. Tipos de Datos Simples y Estructuras de Control Lenguaje C Tipos de Datos Simples y Estructuras de Control Lenguaje C C es un lenguaje de programación creado en 1972 por Dennis M. Ritchie en los Laboratorios Bell como evolución del anterior lenguaje

Más detalles

Estructuras Discretas. César Bautista Ramos Carlos Guillén Galván Daniel Alejandro Valdés Amaro

Estructuras Discretas. César Bautista Ramos Carlos Guillén Galván Daniel Alejandro Valdés Amaro Estructuras Discretas César Bautista Ramos Carlos Guillén Galván Daniel Alejandro Valdés Amaro Facultad de Ciencias de la Computación Benemérita Universidad Autónoma de Puebla 1. CONJUNTOS Y CLASES 1

Más detalles

Etimológicamente el término variable proviene del latín variabilis : cambiante.

Etimológicamente el término variable proviene del latín variabilis : cambiante. Variable (I) Etimológicamente el término variable proviene del latín variabilis : cambiante. Definición Una variable es un símbolo que representa un elemento no determinado de un conjunto. Cada elemento

Más detalles

1.1. PROPOSICIONES CAPÍTULO 1. LÓGICA. 1.1.4. Tabla de verdad

1.1. PROPOSICIONES CAPÍTULO 1. LÓGICA. 1.1.4. Tabla de verdad CAPÍTULO 1 Lógica En lógica se analiza, entre otros muchos temas, si un razonamiento dado es correcto o no. Si bien sus aplicaciones prácticas son muy diversas, mencionaremos apenas dos: en las demostraciones

Más detalles

Introducción al lenguaje Java Práctica Editor de Línea

Introducción al lenguaje Java Práctica Editor de Línea Introducción al lenguaje Java Práctica Editor de Línea (Diciembre 2006) 1 Introducción al lenguaje Java Práctica Editor de Línea Dpto. LSIIS. Unidad de Programación Normas y Objetivos Objetivo: el objetivo

Más detalles

3.2 Operaciones aritmético-lógicas en Pascal

3.2 Operaciones aritmético-lógicas en Pascal 3.2 Operaciones aritmético-lógicas en Pascal Operadores Los operadores sirven para combinar los términos de las expresiones. En Pascal, se manejan tres grupos de operadores : 1. ARITMÉTICOS 2. RELACIONALES

Más detalles

Introducción a la Computación

Introducción a la Computación UNIVERSIDAD RAFAEL BELLOSO CHACÍN FACULTAD DE INGENIERIA INTRODUCCIÓN A LA COMPUTACION UNIDAD II: DATOS, ALGORITMOS Y PSEUDOCODIGOS http://www.urbe.edu/info-consultas/web-profesor/12697883/ ALGORITMO Un

Más detalles

Escenas de episodios anteriores

Escenas de episodios anteriores Clase 16/10/2013 Tomado y editado de los apuntes de Pedro Sánchez Terraf Escenas de episodios anteriores objetivo: estudiar formalmente el concepto de demostración matemática. caso de estudio: lenguaje

Más detalles

Para representar los conjuntos, los elementos y la relación de pertenencia, mediante símbolos, tendremos en cuenta las siguientes convenciones:

Para representar los conjuntos, los elementos y la relación de pertenencia, mediante símbolos, tendremos en cuenta las siguientes convenciones: 2. Conjuntos 2.1 Introducción El concepto de conjunto, de singular importancia en la ciencia matemática y objeto de estudio de una de sus disciplinas más recientes, está presente, aunque en forma informal,

Más detalles

Lógica Clásica de Primer Orden con Igualdad

Lógica Clásica de Primer Orden con Igualdad Lógica Clásica de Primer Orden con Igualdad José Alfredo Amor Facultad de Ciencias Universidad Nacional Autónoma de México jaam@hp.fciencias.unam.mx 1 Introducción La lógica clásica de primer orden con

Más detalles

1. Sintaxis de Prolog

1. Sintaxis de Prolog 1. Sintaxis de Prolog Términos: Constantes: enteros (Ejs: 3, 4), átomos (Ejs: juan, pi) (en minúscula). Variables: Ejs: X, Casa (en mayúscula) Estructuras: functor, seguido de uno o más argumentos, es

Más detalles

BANCO DE PREGUNTAS PARA EVALUACIÓN DE CONOCIMIENTOS DEL CONCURSO DE MÉRITOS Y OPOSICIÓN EXPERTO EN DESARROLLO DE SISTEMAS 1

BANCO DE PREGUNTAS PARA EVALUACIÓN DE CONOCIMIENTOS DEL CONCURSO DE MÉRITOS Y OPOSICIÓN EXPERTO EN DESARROLLO DE SISTEMAS 1 BANCO DE PREGUNTAS PARA EVALUACIÓN DE CONOCIMIENTOS DEL CONCURSO DE MÉRITOS Y OPOSICIÓN EXPERTO EN DESARROLLO DE SISTEMAS 1 1. Cuáles de los siguientes enunciados son declaraciones válidas? 2. Cuál de

Más detalles

ISSN 1988-6047 DEP. LEGAL: GR 2922/2007 Nº 15 FEBRERO DE 2009

ISSN 1988-6047 DEP. LEGAL: GR 2922/2007 Nº 15 FEBRERO DE 2009 LÓGICA PROPOSICIONAL AUTORÍA SILVIA BORREGO DEL PINO TEMÁTICA MATEMÁTICAS. LÓGICA ETAPA UNIVERSITARIA Resumen La lógica forma parte de la filosofía, en la que se distinguen dos dimensiones, la dimensión

Más detalles

INTRODUCCION A LA LÓGICA DE ENUNCIADOS

INTRODUCCION A LA LÓGICA DE ENUNCIADOS INTRODUCCION A LA LÓGICA DE ENUNCIADOS Carlos S. Chinea 0. Enunciados: Lo fundamental en el lenguaje ordinario, la herramienta para manifestar las ideas, sentimientos, descripción de situaciones diversas,

Más detalles

Preliminares. Tipos de variables y Expresiones

Preliminares. Tipos de variables y Expresiones Preliminares. Tipos de variables y Expresiones Felipe Osorio Instituto de Estadística Pontificia Universidad Católica de Valparaíso Marzo 5, 2015 1 / 20 Preliminares Computadoras desarrollan tareas a un

Más detalles

Apuntes de Matemática Discreta 6. Relaciones

Apuntes de Matemática Discreta 6. Relaciones Apuntes de Matemática Discreta 6. Relaciones Francisco José González Gutiérrez Cádiz, Octubre de 2004 Universidad de Cádiz Departamento de Matemáticas ii Lección 6 Relaciones Contenido 6.1 Generalidades.....................................

Más detalles

Prácticas: Introducción a la programación en Java. Informática (1º Ingeniería Civil) Curso 2011/2012

Prácticas: Introducción a la programación en Java. Informática (1º Ingeniería Civil) Curso 2011/2012 Prácticas: Introducción a la programación en Java Informática (1º Ingeniería Civil) Índice Introducción a Java y al entorno de desarrollo NetBeans Estructura de un programa Tipos de datos Operadores Sentencias

Más detalles

Tema 7: Programación con Matlab

Tema 7: Programación con Matlab Tema 7: Programación con Matlab 1. Introducción Matlab puede utilizarse como un lenguaje de programación que incluye todos los elementos necesarios. Añade la gran ventaja de poder incorporar a los programas

Más detalles

2.3.- Modelo relacional de datos (aproximación lógica)

2.3.- Modelo relacional de datos (aproximación lógica) 2.3.- Modelo relacional de datos (aproximación lógica) Existen dos lenguajes lógicos de manipulación para el modelo relacional: El Cálculo Relacional de Tuplas. El Cálculo Relacional de Dominios. La perspectiva

Más detalles

MINISTERIO DE EDUCACIÓN DIRECCIÓN DE EDUCACIÓN TÉCNICA Y PROFESIONAL PROGRAMA DE LA ASIGNATURA PROGRAMACIÓN I ESPECIALIDAD INFORMÁTICA.

MINISTERIO DE EDUCACIÓN DIRECCIÓN DE EDUCACIÓN TÉCNICA Y PROFESIONAL PROGRAMA DE LA ASIGNATURA PROGRAMACIÓN I ESPECIALIDAD INFORMÁTICA. MINISTERIO DE EDUCACIÓN DIRECCIÓN DE EDUCACIÓN TÉCNICA Y PROFESIONAL PROGRAMA DE LA ASIGNATURA PROGRAMACIÓN I ESPECIALIDAD INFORMÁTICA. AUTORES: LIC. EDUARDO BRITO, LIC. MANUEL FARIÑAS, LIC. ROBERTO JORGE

Más detalles

2.3.- Modelo relacional de datos (aproximación lógica) 2.3.1.- La lógica de 1er orden. 2.3.1.- La lógica de 1er orden. 2.3.1.- La lógica de 1er orden

2.3.- Modelo relacional de datos (aproximación lógica) 2.3.1.- La lógica de 1er orden. 2.3.1.- La lógica de 1er orden. 2.3.1.- La lógica de 1er orden 2.3.- Modelo relacional de datos (aproximación lógica). Existen dos lenguajes lógicos de manipulación para el modelo relacional: El Cálculo Relacional de Tuplas. El Cálculo Relacional de Dominios. La perspectiva

Más detalles

U i n d id d a 3. El Element os á bá i s cos de un programa

U i n d id d a 3. El Element os á bá i s cos de un programa Programación Digital U id d 3 El t bá i Unidad 3. Elementos básicos de un programa 1. Concepto de Programa Es un conjunto de instrucciones (órdenes dadas a la computadora), que producirán la ejecución

Más detalles

OPERACIONES FUNDAMENTALES DEL ÁLGEBRA RELACIONAL. Bases de Datos Ingeniería de Sistemas y Computación Universidad Nacional de Colombia 2007

OPERACIONES FUNDAMENTALES DEL ÁLGEBRA RELACIONAL. Bases de Datos Ingeniería de Sistemas y Computación Universidad Nacional de Colombia 2007 OPERACIONES FUNDAMENTALES DEL ÁLGEBRA RELACIONAL Bases de Datos Ingeniería de Sistemas y Computación Universidad Nacional de Colombia 2007 Álgebra Relacional Álgebra Relacional El álgebra relacional es

Más detalles

Introducción a la Computación TFA

Introducción a la Computación TFA Introducción a la Computación TFA Departamento de Informática Facultad de Ciencias Físico, Matemáticas y Naturales- UNSL Lenguaje de Diseño de Algoritmos Estructura de Control Condicional Simple y Múltiple

Más detalles

BASES DE DATOS TEMA 3. MODELO RELACIONAL

BASES DE DATOS TEMA 3. MODELO RELACIONAL Contenidos generales BASES DE DATOS TEMA 3. MODELO RELACIONAL * Conceptos del modelo relacional * Notación del modelo relacional * Lenguajes de consulta - Algebra relacional - Cálculo relacional Motivación

Más detalles

8. Sentencia return y métodos

8. Sentencia return y métodos 92 A. García-Beltrán y J.M. Arranz 8. Sentencia return y métodos Objetivos: a) Describir el funcionamiento de la sentencia return b) Interpretar el resultado de una sentencia return en el código fuente

Más detalles

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. 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

Más detalles

UNIDAD I Introducción. M.C. Juan Carlos Olivares Rojas

UNIDAD I Introducción. M.C. Juan Carlos Olivares Rojas UNIDAD I Introducción M.C. Juan Carlos Olivares Rojas Contenido 1.1 Máquina de Von Neumann y concepto de algoritmo 1.2 Lenguajes de programación 1.3 Datos, tipos de datos y operaciones básicas 1.4 Constantes

Más detalles

Universidad Católica del Maule. Fundamentos de Computación Especificación de tipos de datos ESPECIFICACIÓN ALGEBRAICA DE TIPOS DE DATOS

Universidad Católica del Maule. Fundamentos de Computación Especificación de tipos de datos ESPECIFICACIÓN ALGEBRAICA DE TIPOS DE DATOS Especificación algebraica ESPECIFICACIÓN ALGEBRAICA DE TIPOS DE DATOS Un tipo abstracto de datos se determina por las operaciones asociadas, incluyendo constantes que se consideran como operaciones sin

Más detalles

1 ELEMENTOS BASICOS DEL LENGUAJE

1 ELEMENTOS BASICOS DEL LENGUAJE 1 ELEMENTOS SICOS DEL LENGUJE Contenido: Variables su declaracion y asignacion Caracteres en java Secuencias de escape y comentarios Tipos de datos Operadores aritméticos, relacionales y lógicos Entrada

Más detalles

Escuela Politécnica Superior de Ingeniería Departamento de Ingeniería Informática

Escuela Politécnica Superior de Ingeniería Departamento de Ingeniería Informática Escuela Politécnica Superior de Ingeniería Departamento de Ingeniería Informática Fundamentos de la informática 2. Algoritmos, diagramas de flujo y pseudocódigo Contenido Algoritmos Diagramas de flujo

Más detalles

Compiladores y Lenguajes de Programación. Maria de Guadalupe Cota Ortiz

Compiladores y Lenguajes de Programación. Maria de Guadalupe Cota Ortiz Compiladores y Lenguajes de Programación Maria de Guadalupe Cota Ortiz Organizaciones que rigen las normas para estandarización de Lenguajes de Programación IEEE (Instituto de Ingenieros Eléctricos y Electrónicos)

Más detalles

Estructuras algebraicas

Estructuras algebraicas Tema 2 Estructuras algebraicas básicas 2.1. Operación interna Definición 29. Dados tres conjuntos A, B y C, se llama ley de composición en los conjuntos A y B y resultado en el conjunto C, y se denota

Más detalles

Capítulo 4 PROLOG 4.1 Introducción

Capítulo 4 PROLOG 4.1 Introducción 4.1 Introducción PROLOG es un lenguaje declarativo e interpretado, en este tipo de lenguajes se representan los conocimientos sobre un determinado dominio y sus relaciones. A partir de ese conocimiento,

Más detalles

Espacios vectoriales

Espacios vectoriales Espacios vectoriales Natalia Boal María Luisa Sein-Echaluce Universidad de Zaragoza 1 Concepto de espacio vectorial y propiedades 1.1 Definición Se llama espacio vectorial sobre K (IR o C a toda terna

Más detalles

EJERCICIOS DE LENGUAJES Y PARADIGMAS DE PROGRAMACIÓN (CUESTIONES DE EXAMEN) PROGRAMACIÓN FUNCIONAL

EJERCICIOS DE LENGUAJES Y PARADIGMAS DE PROGRAMACIÓN (CUESTIONES DE EXAMEN) PROGRAMACIÓN FUNCIONAL EJERCICIOS DE LENGUAJES Y PARADIGMAS DE PROGRAMACIÓN (CUESTIONES DE EXAMEN) PROGRAMACIÓN FUNCIONAL María Alpuente y María José Ramírez 1 LENGUAJES Y PARADIGMAS: INTRODUCCIÓN 1. Indica cuál de las siguientes

Más detalles

Introducción al lenguaje de especificación JML

Introducción al lenguaje de especificación JML Introducción al lenguaje de especificación JML Elena Hernández Pereira Óscar Fontenla Romero Tecnología de la Programación Octubre 2006 Departamento de Computación Facultad de Informática Universidad de

Más detalles

TEMA 2: DESARROLLO DEL SOFTWARE

TEMA 2: DESARROLLO DEL SOFTWARE TEMA 2: DESARROLLO DEL SOFTWARE EDI I Curso 2007/08 Escuela Politécnica Superior Universidad Autónoma de Madrid TEMA 2: DESARROLLO DEL SOFTWARE 2.1. Ciclo de vida del Software 2.2. Corrección de errores

Más detalles

APUNTS DE REPRESENTACIÓ DEL CONEIXEMENT

APUNTS DE REPRESENTACIÓ DEL CONEIXEMENT Intel.ligència Artificial Grau en Informàtica APUNTS DE REPRESENTACIÓ DEL CONEIXEMENT Departament de Llenguatges i Sistemes Informàtics CURS 2011/2012 1Q This work is licensed under the Creative Commons

Más detalles

Ingeniería en Informática

Ingeniería en Informática Departamento de Informática Universidad Carlos III de Madrid Ingeniería en Informática Aprendizaje Automático Junio 2007 Normas generales del examen El tiempo para realizar el examen es de 3 horas No se

Más detalles

Definición 1.1.1. Dados dos números naturales m y n, una matriz de orden o dimensión m n es una tabla numérica rectangular con m filas y n columnas.

Definición 1.1.1. Dados dos números naturales m y n, una matriz de orden o dimensión m n es una tabla numérica rectangular con m filas y n columnas. Tema 1 Matrices Estructura del tema. Conceptos básicos y ejemplos Operaciones básicas con matrices Método de Gauss Rango de una matriz Concepto de matriz regular y propiedades Determinante asociado a una

Más detalles

construcción de programas Prof. Eliana Guzmán U.

construcción de programas Prof. Eliana Guzmán U. Unidad II. Metodología para la construcción de programas Prof. Eliana Guzmán U. Semestre: A-2015 Introducción Resolver un problema con una computadora conduce a la escritura de un programa y a su ejecución.

Más detalles

Capítulo 1: Fundamentos: Lógica y Demostraciones Clase 1: Lógica Proposicional

Capítulo 1: Fundamentos: Lógica y Demostraciones Clase 1: Lógica Proposicional Capítulo 1: Fundamentos: Lógica y Demostraciones Clase 1: Lógica Proposicional Matemática Discreta - CC3101 Profesor: Pablo Barceló P. Barceló Matemática Discreta - Cap. 1: Fundamentos: Lógica y Demostraciones

Más detalles

2.3 El Mundo de Tarski. http://cursos.clavijero.edu.mx/cursos/007_cp/modulo2/contenidos/documentos/tarski.zip

2.3 El Mundo de Tarski. http://cursos.clavijero.edu.mx/cursos/007_cp/modulo2/contenidos/documentos/tarski.zip 2.3 El Mundo de Tarski El mundo de Tarski es una herramienta de software desarrollada expresamente para enseñar y mejorar la capacidad del estudiante para describir situaciones en un mundo simple utilizando

Más detalles

DISEÑO DE COMPONENTES DE SOFTWARE *

DISEÑO DE COMPONENTES DE SOFTWARE * DISEÑO DE COMPONENTES DE SOFTWARE * NOTAS DEL CURSO Ingeniería de Software I DRA. MARIA DEL PILAR GÓMEZ GIL INAOEP * Resumen del capítulo 10 de libro de [Pressman 2010] V:18-11-2008 (c) P. Gomez-Gil, INAOE.

Más detalles

Tipos Abstractos de Datos y Diseño por Contrato

Tipos Abstractos de Datos y Diseño por Contrato Tipos Abstractos de Datos y Diseño por Contrato 1.- Motivación de los tipos abstractos de datos Nuestro objetivo es obtener descripciones apropiadas de los objetos, para lo cual se necesita un método que

Más detalles

INTRODUCCION A LA LOGICA

INTRODUCCION A LA LOGICA INTRODUCCION A LA LOGICA Renato Lewin Pontificia Universidad Católica de Chile I Parte LOGICA PROPOSICIONAL Introducción 1 Lógica Cuando deseamos establecer una verdad, cuando queremos convencer a alguien

Más detalles

Tema IV Programación lógica con estructuras

Tema IV Programación lógica con estructuras Tema IV Programación lógica con estructuras Programación Lógica - E.T.S.I. Informática - Málaga 1 Términos La estructura de datos básica en PROLOG es el término. Los términos se clasifican en : variables

Más detalles

FICHEROS Y BASES DE DATOS (E44) 3º INGENIERÍA EN INFORMÁTICA. Tema 11. Cálculo Relacional

FICHEROS Y BASES DE DATOS (E44) 3º INGENIERÍA EN INFORMÁTICA. Tema 11. Cálculo Relacional FICHEROS Y BASES DE DATOS (E44) 3º INGENIERÍA EN INFORMÁTICA Tema 11. Cálculo Relacional 1.- Introducción. 2.- Cálculo Relacional Orientado a Tuplas. 3.- Cálculo Relacional vs Álgebra Relacional: Algoritmo

Más detalles

Programación en lenguaje C++

Programación en lenguaje C++ Programación en Lenguaje C++ Objetivos Unidad Tema Subtema Objetivos VI 6.1 Metodología de la programación Metodologías Diseños de algoritmos Creación de algoritmos Entender y aplicar los pasos a seguir

Más detalles

INTRODUCCIÓN A LA INTELIGENCIA ARTIFICIAL

INTRODUCCIÓN A LA INTELIGENCIA ARTIFICIAL INTRODUCCIÓN A LA INTELIGENCIA ARTIFICIAL MÓDULO 3: REPRESENTACIÓN DEL CONOCIMIENTO 3.1. INTRODUCCIÓN La IA involucra la construcción de programas que resuelvan problemas que, de ser resueltos por seres

Más detalles

CAPÍTULO IV BREVE DESCRIPCIÓN DE LA INFRAESTRUCTURA DE CÓMPUTO VISUAL BASIC 6.0 PARA WINDOWS

CAPÍTULO IV BREVE DESCRIPCIÓN DE LA INFRAESTRUCTURA DE CÓMPUTO VISUAL BASIC 6.0 PARA WINDOWS CAPÍTULO IV BREVE DESCRIPCIÓN DE LA INFRAESTRUCTURA DE CÓMPUTO VISUAL BASIC 6.0 PARA WINDOWS 4.1 Antecedentes históricos El lenguaje de programación BASIC (Beginner's All purpose Symbolic Instruction Code)

Más detalles

MATEMÁTICAS I TEMA 1: Espacios Vectoriales. 1 Definición de espacio vectorial. Subespacios

MATEMÁTICAS I TEMA 1: Espacios Vectoriales. 1 Definición de espacio vectorial. Subespacios Sonia L. Rueda ETS Arquitectura. UPM Curso 2007-2008. 1 MATEMÁTICAS I TEMA 1: Espacios Vectoriales 1 Definición de espacio vectorial. Subespacios Dados dos conjuntos V y K se llama ley de composición externa

Más detalles

Lógica Proposicional Cálculo Proposicional de Orden Cero (Cero)

Lógica Proposicional Cálculo Proposicional de Orden Cero (Cero) Introducción a la Computación (TFA) Lógica Proposicional Cálculo Proposicional de Orden Cero (Cero) Teoría de Lógica Proposicional - Autor: Ana Garis Modificaciones: E. Benegas Temas a Desarrollar - Motivaciones

Más detalles

Elementos léxicos del lenguaje de programación Java

Elementos léxicos del lenguaje de programación Java Elementos léxicos del lenguaje de programación Java Elementos léxicos del lenguaje de programación Java Palabras reservadas Identificadores Literales Operadores Delimitadores Comentarios Apéndices Operadores

Más detalles

ÍNDICE PRESENTACIÓN... 9. INTRODUCCIÓN... 11 Lógica y Filosofía de la Lógica... 11 Más allá de este libro... 16

ÍNDICE PRESENTACIÓN... 9. INTRODUCCIÓN... 11 Lógica y Filosofía de la Lógica... 11 Más allá de este libro... 16 ÍNDICE PRESENTACIÓN... 9 INTRODUCCIÓN... 11 Lógica y Filosofía de la Lógica... 11 Más allá de este libro... 16 I. VERDAD Y PORTADORES DE VERDAD... 19 1. De qué tipo de entidades predicamos la verdad?...

Más detalles

Introducción al álgebra relacional. Con ejemplos en SQL

Introducción al álgebra relacional. Con ejemplos en SQL OpenStax-CNX module: m18351 1 Introducción al álgebra relacional. Con ejemplos en SQL Miguel-Angel Sicilia This work is produced by OpenStax-CNX and licensed under the Creative Commons Attribution License

Más detalles

1 Estructura básica de un programa C++

1 Estructura básica de un programa C++ Elementos básicos de un lenguaje de alto nivel: C++ CONTENIDOS 1. Estructura básica de un programa C++. 2. Tipos de datos simples. 3. Constantes y variables en C++. Declaración. 4. Operadores y expresiones.

Más detalles

Notación algorítmica (seudocódigo en castellano) (fecha: 2013-10-30)

Notación algorítmica (seudocódigo en castellano) (fecha: 2013-10-30) Notación algorítmica (seudocódigo en castellano) (fecha: 2013-10-30) 1. Tipos de datos predeidos booleano carácter natural {incluímos el 0 en los naturales, comentarios entre llaves} entero real cadena

Más detalles

SEMINARIO DE ESPECIFICACIONES ALGEBRAICAS

SEMINARIO DE ESPECIFICACIONES ALGEBRAICAS Algoritmos y Estructuras de Datos Ingeniería en Informática, Curso 2º, Año 2004/2005 SEMINARIO DE ESPECIFICACIONES ALGEBRAICAS Contenidos: 1. Descripción general de Maude 2. Comandos básicos 3. Formato

Más detalles

Módulo 9 Sistema matemático y operaciones binarias

Módulo 9 Sistema matemático y operaciones binarias Módulo 9 Sistema matemático y operaciones binarias OBJETIVO: Identificar los conjuntos de números naturales, enteros, racionales e irracionales; resolver una operación binaria, representar un número racional

Más detalles

Arreglos. // Incluir E/S y Librerías Standard #include #include

Arreglos. // Incluir E/S y Librerías Standard #include <stdlib.h> #include <stdio.h> Arreglos Introducción. En los temas anteriores se han estudiado los diferentes tipos de datos simples de C++, usados para representar valores simples como enteros, reales o caracteres. Sin embargo, en

Más detalles

1 Agencia de viajes: enunciado

1 Agencia de viajes: enunciado 1 AGENCIA DE VIAJES: ENUNCIADO 1 1 Agencia de viajes: enunciado Una agencia de viajes mantiene una base de datos con exactamente N clientes y M destinos turísticos. En una situación real, estos valores

Más detalles

I. ALGEBRA DE BOOLE. c) Cada operación es distributiva con respecto a la otra: a. ( b + c) = a. b + a. c a + ( b. c ) = ( a + b ).

I. ALGEBRA DE BOOLE. c) Cada operación es distributiva con respecto a la otra: a. ( b + c) = a. b + a. c a + ( b. c ) = ( a + b ). I. I.1 DEFINICION. El Algebra de Boole es toda clase o conjunto de elementos que pueden tomar dos valores perfectamente diferenciados, que designaremos por 0 y 1 y que están relacionados por dos operaciones

Más detalles