IA2 ( ) Trabajo NL (Procesamiento de Lenguaje Natural) Implementación de un algoritmo de unificación
|
|
- Juan Luis Valenzuela Toledo
- hace 6 años
- Vistas:
Transcripción
1 IA2 ( ) Trabajo NL (Procesamiento de Lenguaje Natural) Implementación de un algoritmo de unificación José F. Quesada 1 Introducción Una de las estrategias básicas para llevar a cabo la representación y manipulación de información semántica en la Ingenería del Lenguaje Natural se basa en la utilización de los algoritmos de unificación sobre estructuras complejas de rasgos. El objetivo de este trabajo es implementar un sistema que permita representar estas estructuras de datos y así mismo permita realizar operaciones de unificación sobre las mismas. 2 Definición de estructuras complejas de rasgos Con el objetivo de simplificar el alcance de este trabajo, se ofrece una definición restringida y parcial de estas estructuras. En concreto, definiremos formalmente una estructura de rasgos como una función parcial desde un conjunto de atributos en un conjunto de valores. Así por ejemplo, datos los conjuntos Σ = {agr, gen, head, num, pers, tense} Υ = {masc, fem, sing, pl, 1, 2, 3, pres, past, estudiar, estudio, estudiaba} el siguente conjunto λ 1 = {< head, comer >, < num, sing >, < pers, 3 >, < tense, pres >} define una función parcial de Σ en Υ, es decir, una función que asigna por ejemplo al atributo head de Σ el valor comer de Υ, y así sucesivamente. Podemos indicar esto mediante la siguiente notación: 1
2 λ 1 : Σ Υ Para incluir estructuras complejas en esta definición (es decir, estructuras cuyos valores sean así mismo otras estructuras de rasgos), basta con permitir que el dominio del conjunto de la función parcial sea Σ +. De esta forma podríamos definir un nueva función parcial: λ 2 = {< [head], estudiaba >, < [agr, num], sing >, < [agr, pers], 3 >, < [tense], past >} que podemos representar formalmente mediante: λ 2 : Σ + Υ Las estructuras de rasgos se pueden representar también mediante arrays: head [ comer ] λ 2 = num sing agr pers 3 tense past 3 Subsunción La relación de subsunción define un orden parcial sobre las estructuras de rasgos. Básicamente podemos considerar que una estructura de rasgos P subsume a una estructura Q, si Q es una extensión de P. Es decir, P subsume a Q, si cada elemento de información de P está incluido en Q. Consideremos por ejemplo, las siguientes estructuras de rasgos: [ ] genero masculino α 1 = genero α 2 = masculino persona 2 En este caso, α 1 subsume a α 2 (α 1 α 2 ) ya que todos los valores informativos de α 1 se encuentran también en α 2. Es interesante notar que la relación de subsución es reflexiva (toda estructura está subsumida por ella misma), y no es simétrica (si una estructura A subsume a una B, no necesariamente B tiene que subsumir a A - como se puede ver en el ejemplo anterior).
3 Además, es un orden parcial, ya que podemos encontrar dos estructuras A y B tales que ni A subsume a B, ni B subsume a A. Por ejemplo, dada: [ ] genero masculino α 3 = persona 2 no existe relación de subsunción alguna entre α 1 y α 3 4 Unificación Dadas dos estructuras, P y Q, la unificación de ambas estructuras será una nueva estructura (U = P Q), tal que U es la menor estructura que es subsumida por P y por Q. Si no existe dicha estructura, diremos que P y Q no son unificables. Por ejemplo, dadas las estructuras previas: [ ] genero masculino α 1 = [ ] genero masculino α 3 = persona 2 podemos identificar la siguiente estructura como unificación de las dos anteriores: genero masculino α 2 = persona 2 Es decir, alpha 2 = alpha 1 sqcapalpha 3, ya que alpha 1 α2 y alpha 3 α2 y además alpha 2 es la menor estructura que cumple esta condición, ya que cualquier otra estructura que cumpliese las condiciones de unificación tendría más información. Por otro lado, si definimos la siguiente estructura: [ ] genero femenino α 4 = Podemos observar que alpha 4 no es unificable ni con alpha 1, ni con alpha 3, ya que al tener un valor distinto para el atributo genero, es imposible encontrar ninguna estructura que sea subsumida por ambas. Evidentemente la relación de subsunción también se puede definir para estructuras complejas (aquellas en las que el valor de un atributo es una estructura de rasgos así mismo).
4 5 Implementación del trabajo De forma resumida, el objetivo del trabajo es la implementación de un algoritmo de unificación para estructuras complejas de rasgos. Como tal, el trabajo se organizará funcionalmente en tres bloques, aunque se deja libertad para la estructuración e implementación del mismo. El trabajo se puede implementar en C, Java, C++ o Lisp. En caso de que se desee utilizar algún otro lenguaje será necesario contactar con el profesor responsable de este trabajo. De cara a la realización del mismo se deberá enviar en los plazos establecidos tanto el código fuente del mismo, así como las restricciones relativas a uso de librerías, componente, etc., que sean necesarias para su ejecución. Por otro lado, de cara a la defensa del mismo, se recomienda que los alumnos lleven en un portátil una instalación de la aplicación (que necesariamente deberá corresponderse con la misma enviada) con el objetivo de agilizar la presentación y defensa. Como parte de la información enviada se incluirá así mismo la documentación relevante, entre la que se encontrará una descripción general del análisis, diseño e implementación del mismo, así como los tiempos de ejecución para los tests suministrados como referencia, junto con las características del entorno utilizado para su realización. 5.1 Especificación El sistema debe permitir la especificación de un conjunto de información de entrada, algo así como un diccionario de estructuras complejas de rasgos. Cada estructura estará identificada mediante una etiqueta, y llevará asociada un valor. En concreto, se utilizará la siguiente sintaxis: [ etiqueta = (ECR) ] donde ECR es la Estructura Compleja de Rasgos. Los rasgos de esta estructura serán siempre cadenas que comenzarán por una letra (minúscula o mayúscula) y podrán contener números y signos de subrayado. Se separará mediante dos puntos (:) la etiqueta y el valor. El valor podrá ser terminal (siendo en este caso un valor numérico, un string que puede ir entrecomillado, o bien una estructura compleja adicional. Por ejemplo: [ ecr1 = (genero : femenino, numero: singular) ] En este caso, estaríamos definiendo la entrada etiquetada ecr cuyo contenido es:
5 [ ] genero femenino ecr1 = Por otro lado, la estructura [ ecr2 = (head: comer, agr: (num:sing, pers:3), tense:past) ] estaría representando la siguiente estructura: ecr2 = head agr tense [ comer ] num sing pers 3 past Es posible que una etiqueta lleve asociada más de una definición. Por ejemplo: [ ecr1 = (genero : femenino, numero: singular) ] [ ecr1 = (genero : femenino, numero: plural) ] 5.2 Unificación A partir de un conjunto de estructuras de rasgos definidas según el formato anterior, el sistema deberá ser capaz de recibir instrucciones de unificación. La unificación se invocará mediante una llamada del tipo: Unif ica(a&b). donde a y b serán etiquetas de estructuras de rasgos. El resultado debe ser FALLO en caso de que las estructuras no sean unificables, o la estructura obtenida como resultado de la unificación. Por ejemplo, Unif ica(ecr1&ecr2). En el caso de que una estructura tenga más de una definición, la unificación es el producto cartesiano de todas las definiciones de cada una de las estructuras. Es decir, si ecr1 tiene 2 definiciones (A y B), y ecr2 tiene tres definiciones (P, Q y R), entonces la unificación de ambas se obtendrá aplicando la unificación todos los pares posibles. A - P, A - Q, A - R, B - P, B - Q, B - R. 5.3 Representación y optimización Es importante a la hora de analizar, diseñar e implementar el trabajo tener en cuenta distintas estrategias para la optimización del problema, tanto en lo relativa a la representación (teniendo en cuenta que se podrían tener que manipular miles o incluso millones de estructuras), así como los tiempos que consume el sistema en la resolución de la unificación.
6 5.4 Documentación y Entorno El trabajo presentado debe incluir el análisis y diseño correspondiente, así como el código fuente debidamente comentado y estructurado. Así mismo se debe incluir información relativa a la realización de pruebas de estrés. Se deja libertad de desarrollo para el modelo de ejecución (carga y unificación). Es decir, se podrá definir uno o varios ejecutables que realicen la tarea, o bien el diseño de un entorno gráfico desde el que invocar dichas tareas. La documentación que se entregue debe incluir así mismo las instrucciones para la utilización del sistema. 6 Ejemplos Tal y como se ha indicado, la especificación de un sistema estará formada por dos bloques, el bloque de especificación de estructuras y el bloque de llamadas de unificación. Supondremos que cada uno de los bloques se define en un fichero diferente. Es decir, habrá un fichero que contendrá todas las estructuras (que se especificará con la extensión.scr), y otro fichero que contendrá las llamadas de unificación (que se especificará con la extensión.unf). Fichero ejemplo01.scr: [ el = (agr: (genero : masculino, numero: singular) ) ] [ la = (agr: (genero : femenino, numero: singular) ) ] [ los = (agr: (genero : masculino, numero: plural) ) ] [ las = (agr: (genero : femenino, numero: plural) ) ] [ mesa = ( head: mesa, agr: (genero : femenino, numero: singular) ) ] [ mesas = ( head: mesa, agr: (genero : femenino, numero: plural) ) ] [ armario = ( head: armario, agr: (genero : femenino, numero: singular) ) ] [ armarios = ( head: armario, agr: (genero : femenino, numero: plural) ) ] Fichero ejemplo01.unf: $Unifica(el & la). $Unifica(el & mesa). $Unifica(el & armario). Al ejecutar el sistema, tras cargar el diccionario (fichero ejemplo01.scr), y al aplicar el fichero de unificación (fichero ejemplo01.unf), el resultado debe ser:
7 $Unifica(el & la). => FALLO $Unifica(el & mesa). => FALLO $Unifica(el & armario). => ( head: armario, agr: (genero : femenino, numero: singular) ) 7 Tests Con el objetivo de poder comprobar el funcionamiento del sistema, se incluyen tres entornos de prueba del sistema, que se pueden descargar en un fichero adjunto. A modo de ejemplo, se explica a continuación el modelo del primer test. El fichero TEST01.ecr contiene las siguientes estructuras definidas: [ WCMDHT = (FAI0001uOPVk:1) ] [ WCMObEGNOod = (FAP0003AXVHL:RASOyiFBG) ] [ WCMfqTFfP = (FAI0001uOPVk:1, FAP0003AXVHL:RASOzlQps) ] [ WCMTJxy = (FAI0001uOPVk:1, FAP0003AXVHL:RASOxOJxg) ] [ WCMkSgpj = (FAI0001uOPVk:1) ] [ WCMJjcXOf = (FCM0008QVdXB:()) ] [ WCMIyRUL = (FCM0009IUsdb:(FAP0004FamhP:RASOnHCVJ), FCM0008QVdXB:(FCM0005ugfZl:(FAI0001uOPVk:1, FAP0003AXVHL:RASOpIQgc))) ] [ WCMxmHlsAw = (FCM0009IUsdb:(FAP0004FamhP:RASOiARJV), FCM0008QVdXB:(FCM0005ugfZl:(FAI0001uOPVk:1))) ] [ WCMOuhwfFY = (FCM0009IUsdb:(), FCM0008QVdXB:()) ] [ WCMuxB = (FCM0009IUsdb:()) ] [ WCMb = (FAP0003AXVHL:RASOfJOLk) ] [ WCMlO = (FAP0003AXVHL:RASOmRdfW) ] [ WCMRDkPId = () ] [ WCMtsWVf = () ] [ WCMjVWeQYAa = (FAP0003AXVHL:RASOrQIbn) ] [ WCML = (FCM0005ugfZl:(FAP0003AXVHL:RASOrQIbn)) ] [ WCMwaZsWf = (FCM0005ugfZl:(FAP0003AXVHL:RASOGRqlk)) ] [ WCMUaUjHhW = (FCM0005ugfZl:(FAP0003AXVHL:RASOxOJxg)) ] [ WCMxS = (FCM0005ugfZl:(FAI0001uOPVk:1, FAP0003AXVHL:RASOxOJxg)) ] [ WCMVGtG = (FCM0005ugfZl:(FAI0001uOPVk:1, FAP0003AXVHL:RASOrQIbn)) ]
8 [ WCMmJLyOjqrH = (FAP0004FamhP:RASOCattp) ] [ WCMuO = (FAP0004FamhP:RASOnHCVJ) ] [ WCMmlCUR = (FAP0004FamhP:RASOITHqU) ] [ WCMWTHnl = (FAP0004FamhP:RASOPJhbd) ] [ WCMAYHHZPuA = (FAP0004FamhP:RASOITHqU) ] Por otro lado, el fichero TEST01.unf tiene las llamadas a las instrucciones de unificación: $Unifica(WCMfqTFfP & WCMDHT) $Unifica(WCMkSgpj & WCMObEGNOod) $Unifica(WCMxmHlsAw & WCMJjcXOf) $Unifica(WCMOuhwfFY & WCMxmHlsAw) $Unifica(WCMjVWeQYAa & WCMRDkPId) $Unifica(WCMtsWVf & WCMb) $Unifica(WCMxS & WCMwaZsWf) $Unifica(WCMUaUjHhW & WCML) $Unifica(WCMAYHHZPuA & WCMmlCUR) $Unifica(WCMmlCUR & WCMWTHnl) Finalmente, el fichero TEST01.trace contiene la salida de la ejecución del sistema, donde se puede ver el comportamiento del mismo. Para este ejemplo, podemos observar como en una de las llamadas de unificación para el par de etiquetas WCMxS y WCMwaZsWf se provoca un fallo de unificación ya que el valor del atributo FAP0003AXVHL es diferente: # UNIFICA Entrada 1: WCMxS -> (FCM0005ugfZl:(FAI0001uOPVk:1, FAP0003AXVHL: RASOxOJxg )) Entrada 2: WCMwaZsWf -> (FCM0005ugfZl:(FAP0003AXVHL: RASOGRqlk )) RESULTADO:
9 UNIFICACION FALLO Por otro lado, otro de los ejemplos muestra cómo la unificación puede construir nuevas estructuras: # UNIFICA Entrada 1: WCMkSgpj -> (FAI0001uOPVk:1) Entrada 2: WCMObEGNOod -> (FAP0003AXVHL: RASOyiFBG ) RESULTADO: UNIFICACION OK -> (FAI0001uOPVk:1, FAP0003AXVHL: RASOyiFBG ) 7.1 Definiciones múltiples El Test02 contiene un ejemplo de definición múltiple. En este caso, podemos observar como la etiqueta WCMS025 lleva asociada tres entradas diferentes (marcadas mediante flechas). El sistema intenta unificar cada una de estas definiciones con la especificación asociada a la primera entrada de la instrucción de unificación, obteniendo solo una unificación correcta que se muestra como resultado. # UNIFICA Entrada 1: WCMkP025
10 -> (FAI0007YpOBO:1, FAP0019oOpxl: RASONNUOv, FAP0020oCviV: RASOExnym ) Entrada 2: WCMS025 -> (FAI0003AXVHL:1, FAI0008UosQV:1, FAP0019oOpxl: RASOpSvWZ, FAP0020oCviV: RASOExnym ) -> (FAI0007YpOBO:1, FAP0020oCviV: RASObymCI ) -> (FAI0007YpOBO:1, FAI0008UosQV:1) RESULTADO: UNIFICACION OK -> (FAI0007YpOBO:1, FAI0008UosQV:1, FAP0019oOpxl: RASONNUOv, FAP0020oCviV: RASOExnym )
Universidad Autónoma Metropolitana Unidad Azcapotzalco. División de Ciencias Básicas e Ingeniería. Licenciatura en Ingeniería en Computación
Universidad Autónoma Metropolitana Unidad Azcapotzalco División de Ciencias Básicas e Ingeniería Licenciatura en Ingeniería en Computación Propuesta de Proyecto Terminal Clasificación de servicios web
APENDICE B Ensamblador IASM11/Simulador AVSIM11
APENDICE B Ensamblador IASM11/Simulador AVSIM11 El programa ensamblador IASM11, es una herramienta que permitirá editar y ensamblar programas para el microcontrolador HC11. Este programa corre bajo la
Actividad Final SOFTWARE LIBRE
Actividad Final SOFTWARE LIBRE Implementación de un sistema de control de inventarios A. PRESENTACIÓN Para finalizar la asignatura de Software libre, tendrás que elaborar una actividad final en donde aplicarás
DESCRIPCIÓN ESPECÍFICA NÚCLEO: COMERCIO Y SERVICIOS SUBSECTOR: INFORMÁTICA
DESCRIPCIÓN ESPECÍFICA NÚCLEO: COMERCIO Y SERVICIOS SUBSECTOR: INFORMÁTICA Nombre del Módulo: PROGRAMACIÓN EN JAVASCRIPT Código: CSTI0087 total: 51 Horas Objetivo General: Crear contenido web basado en
Tema 1: Matrices. El concepto de matriz alcanza múltiples aplicaciones tanto en la representación y manipulación de datos como en el cálculo numérico.
Tema 1: Matrices El concepto de matriz alcanza múltiples aplicaciones tanto en la representación y manipulación de datos como en el cálculo numérico. 1. Terminología Comenzamos con la definición de matriz
Autómatas Deterministas. Ivan Olmos Pineda
Autómatas Deterministas Ivan Olmos Pineda Introducción Los autómatas son una representación formal muy útil, que permite modelar el comportamiento de diferentes dispositivos, máquinas, programas, etc.
Capítulo 16. Diagrama de Clases UML
Capítulo 16. Diagrama de Clases UML Florentino TORRES M. CINVESTAV-Tamaulipas 15 de Oct del 2012 Florentino TORRES M. (CINVESTAV) 15 de Oct del 2012 1 / 70 1 Capítulo 16. Diagrama de Clases UML Aplicando
RESOLUCION NUMERO 3104 DE 2005
Hoja 1 de 6 MINISTERIO DE LA PROTECCION SOCIAL (Septiembre 13) Por la cual se precisan algunos aspectos del procedimiento de pago integrado realizado a través de la Planilla EL MINISTRO DE LA PROTECCIÓN
TEORÍA DE AUTÓMATAS Y LENGUAJES FORMALES TRABAJO DE PRÁCTICAS. Convocatoria de junio de 2013
TEORÍA DE AUTÓMATAS Y LENGUAJES FORMALES Ingeniería Técnica en Informática de Sistemas Segundo curso Departamento de Informática y Análisis Numérico Escuela Politécnica Superior Universidad de Córdoba
Métodos que devuelven valor Dado el siguiente triángulo rectángulo:
Métodos que devuelven valor Dado el siguiente triángulo rectángulo: hipotenusa altura base Para dibujar este triángulo necesitamos los siguientes datos: base y altura La base y la altura, se utilizarán
PROGRAMACIÓN. UNIDAD II. ALGORITMO PROFA : HAU MOY
PROGRAMACIÓN. UNIDAD II. ALGORITMO PROFA : HAU MOY ALGORITMO DEFINICIÓN: CONSISTE EN LA DESCRIPCIÓN CLARA Y DETALLADA DEL PROCEDIMIENTO A SEGUIR PARA ALCANZAR LA SOLUCIÓN A UN PROBLEMA EN DONDE SE ESTABLECE
Métodos para escribir algoritmos: Diagramas de Flujo y pseudocódigo
TEMA 2: CONCEPTOS BÁSICOS DE ALGORÍTMICA 1. Definición de Algoritmo 1.1. Propiedades de los Algoritmos 2. Qué es un Programa? 2.1. Cómo se construye un Programa 3. Definición y uso de herramientas para
Ingeniería del Software I
- 1 - Ingeniería del Software I 2do. Cuatrimestre 2005 INTRODUCCIÓN... 2 SEMÁNTICA... 2 NOTACIÓN... 3 ESTADO ACCIÓN... 3 Transiciones Simples... 3 Estados Acción Compuestos... 3 Estados Acción Iniciales
UNIDAD DIDACTICA. Esta unidad es el punto de partida para la correcta asimilación de las posteriores unidades didácticas del módulo.
UNIDAD DIDACTICA TÍTULO: INTRODUCCIÓN A LA PROGRAMACIÓN. INTRODUCCIÓN E IMPORTANCIA: La importancia de esta unidad didáctica estriba en la familiarización del alumno con la metodología requerida para la
Universidad Centroccidental Lisandro Alvarado. Decanato de Ciencias y Tecnología Departamento de Sistemas
Universidad Centroccidental Lisandro Alvarado Decanato de Ciencias y Tecnología Departamento de Sistemas PROGRAMA INSTRUCCIONAL PROGRAMA: ANALISIS DE SISTEMAS DEPARTAMENTO: SISTEMAS ASIGNATURA: INTRODUCCIÓN
SISTEMAS INFORMÁTICOS PROGRAMACION I - Contenidos Analíticos Ing. Alejandro Guzmán M. TEMA 2. Diseño de Algoritmos
TEMA 2 Diseño de Algoritmos 7 2. DISEÑO DE ALGORITMOS 2.1. Concepto de Algoritmo En matemáticas, ciencias de la computación y disciplinas relacionadas, un algoritmo (del griego y latín, dixit algorithmus
A continuación se presenta la información de la altura promedio para el año de 1998 en Holanda de hombres y mujeres jóvenes.
M150: Creciendo A) Presentación del problema LOS JOVENES CRECEN MAS ALTO A continuación se presenta la altura promedio para el año de 1998 en Holanda de hombres y mujeres jóvenes. B) Preguntas del problema
Arrays unidimensionales. Dim.Option Base. Erase. Ejemplos en Visual Basic (CU00311A)
aprenderaprogramar.com Arrays unidimensionales. Dim.Option Base. Erase. Ejemplos en Visual Basic (CU00311A) Sección: Cursos Categoría: Curso Visual Basic Nivel I Fecha revisión: 2029 Autor: Mario R. Rancel
4.1 CONGRUENCIA ENTRE LOS OBJETIVOS DEL PLAN DE ESTUDIOS Y EL PERFIL DE EGRESO CON LAS LGAC:
4.1 CONGRUENCIA ENTRE LOS OBJETIVOS DEL PLAN DE ESTUDIOS Y EL PERFIL DE EGRESO CON LAS LGAC: A continuación se muestran los objetivos así como los mapas funcionales según la línea de acentuación y la línea
Desde los programas más simples escritos en un lenguaje de programación suelen realizar tres tareas en forma secuencial.
Tipos de Datos Desde los programas más simples escritos en un lenguaje de programación suelen realizar tres tareas en forma secuencial. Entrada de datos Procesamientos de datos Salida de resultados Los
Bloque 4 Competencias a desarrollar:
Bloque 4 Competencias a desarrollar: Construir e interpretar modelos matemáticos mediante 4_CUEVAS_MAT4_B4.indd 7 la aplicación de procedimientos aritméticos, algebraicos, geométricos y variacionales para
Algoritmos y solución de problemas. Fundamentos de Programación Otoño 2008 Mtro. Luis Eduardo Pérez Bernal
Algoritmos y solución de problemas Fundamentos de Programación Otoño 2008 Mtro. Luis Eduardo Pérez Bernal Introducción Departamento de Electrónica, Sistemas e Informática En las ciencias de la computación
Universidad Central de Venezuela. Facultad de Ciencias. Escuela de Computación. Proyecto #1 (Simulación de caché)
Universidad Central de Venezuela Facultad de Ciencias Escuela de Computación Organización y Estructura del Computador 2 Proyecto #1 (Simulación de caché) Resumen: En este proyecto, usted deberá implementar
TEMA 2 Introducción a C# ANÁLISIS Y DESARROLLO DE APLICACIONES INFORMÁTICAS Curso 2010/2011
TEMA 2 Introducción a C# ANÁLISIS Y DESARROLLO DE APLICACIONES INFORMÁTICAS Curso Origen Nuevo lenguaje de propósito general de Microsoft para la plataforma.net Es el único que ha sido diseñado específicamente.net
Sobre funciones reales de variable real. Composición de funciones. Función inversa
Sobre funciones reales de variable real. Composición de funciones. Función inversa Cuando en matemáticas hablamos de funciones pocas veces nos paramos a pensar en la definición rigurosa de función real
Enteros. Son los números que no contienen componentes fraccionarios y, por tanto, no contienen punto decimal.
LENGUAJE DE PROGRAMACIÓN TURBO PASCAL El lenguaje de programación de alto nivel Pascal fue diseñado el 1968 por Niklaus Wirth con una finalidad eminentemente pedagógica El 1983, el Pascal fue estandarizado
Tema 2 Introducción a la Programación en C.
Tema 2 Introducción a la Programación en C. Contenidos 1. Conceptos Básicos 1.1 Definiciones. 1.2 El Proceso de Desarrollo de Software. 2. Lenguajes de Programación. 2.1 Definición y Tipos de Lenguajes
Recordemos que utilizaremos, como es habitual, la siguiente notación para algunos conjuntos de números que son básicos.
Capítulo 1 Preliminares Vamos a ver en este primer capítulo de preliminares algunos conceptos, ideas y propiedades que serán muy útiles para el desarrollo de la asignatura. Se trata de resultados sobre
Introducción a los códigos compresores
Introducción a los códigos compresores Parte I de la Lección 2, Compresores sin pérdidas, de CTI Ramiro Moreno Chiral Dpt. Matemàtica (UdL) Febrero de 2010 Ramiro Moreno (Matemàtica, UdL) Introducción
Ejemplo básico de descripción VHDL
Ejemplo básico de descripción VHDL Describir en VHDL un circuito que multiplexe dos líneas (a y b) de un bit, a una sola línea (salida) también de un bit; la señal selec sirve para indicar que a la salida
Fundamentos de Ciencias de la Computación Trabajo Práctico N 2 Lenguajes Libres del Contexto y Sensibles al Contexto Segundo Cuatrimestre de 2002
Departamento de Cs. e Ingeniería de la Computación Universidad Nacional del Sur Ejercicios Fundamentos de Ciencias de la Computación Trabajo Práctico N 2 Lenguajes Libres del Contexto y Sensibles al Contexto
Programación en C. Algoritmo y Estructura de Datos. Ing. M. Laura López. Programación en C
Algoritmo y Estructura de Datos Ing. M. Laura López 1 Estructura de un programa en C 2 Estructura de un programa en C #include Archivos de cabecera # define Definición de constantes Declaraciones Globales
Instructivo para la aplicación de encuestas de percepción de servicios
Clave:IT-06-02-01 Fecha de emisión: 20/04/2015 Versión N. 3 Página: 1 de 5 Instructivo para la aplicación de encuestas de percepción de servicios Elaboró Revisó Lic. Sandra Leticia Ochoa Larios Ing. José
ACTIVIDAD: Control de Lectura # 1: Benchmarking para Competir con Ventaja Por: Roberto J. Boxwell. MATERIA: Ingeniería de Software.
UNIVERSIDAD DON BOSCO FACULTAD DE INGENIERIA ESCUELA DE COMPUTACION CICLO II/2008 ACTIVIDAD: Control de Lectura # 1: Benchmarking para Competir con Ventaja Por: Roberto J. Boxwell MATERIA: Ingeniería de
3. DOCUMENTACIÓN 3.1. DOCUMENTACIÓN DE APLICACIONES. OBJETIVOS PARA MODIFICAR HACE FALTA COMPRENDER/ESTUDIAR:
3. DOCUMENTACIÓN 3.1. DOCUMENTACIÓN DE APLICACIONES. OBJETIVOS UN SISTEMA SOFTWARE QUE SEA: + DIFÍCIL DE COMPRENDER + SÓLO UTILIZABLE POR SUS REALIZADORES + DIFÍCIL DE MODIFICAR NO ES VÁLIDO PARA EVITAR
UIT-T I.230 SECTOR DE NORMALIZACIÓN DE LAS TELECOMUNICACIONES DE LA UIT
UNIÓN INTERNACIONAL DE TELECOMUNICACIONES UIT-T I.230 SECTOR DE NORMALIZACIÓN DE LAS TELECOMUNICACIONES DE LA UIT RED DIGITAL DE SERVICIOS INTEGRADOS (RDSI) ESTRUCTURA GENERAL DEFINICIÓN DE LAS CATEGORÍAS
Algoritmos. Diagramas de Flujo. Informática IV. L. S. C. Heriberto Sánchez Costeira
Informática IV Algoritmos Diagramas de Flujo L. S. C. Heriberto Sánchez Costeira Algoritmos 1 Definición Es una serie finita de pasos o instrucciones que deben seguirse para resolver un problema. Es un
PRACTICA FINAL. Diseño e implementación de un servidor Web básico y cliente http. Protocolo HTTP-RC
PRACTICA FINAL Diseño e implementación de un servidor Web básico y cliente http Descripción de la práctica Protocolo HTTP-RC Se pretende desarrollar un servidor Web básico con soporte a múltiples conexiones
Descomposición en forma canónica de Jordan (Segunda versión)
Descomposición en forma canónica de Jordan (Segunda versión) Francisco J. Bravo S. 1 de septiembre de 211 En esta guía se presentan los resultados necesarios para poder construir la forma de Jordan sin
DOCUMENTO DE APOYO PARA PROYECTOS
DOCUMENTO DE APOYO PARA PROYECTOS Los ejemplos que a continuación se encuentran en este documento de apoyo al estudiante, tiene como objetivo dar una serie de ejemplos mínimos de algunas partes de los
1.3.- V A L O R A B S O L U T O
1.3.- V A L O R A B S O L U T O OBJETIVO.- Que el alumno conozca el concepto de Valor Absoluto y sepa emplearlo en la resolución de desigualdades. 1.3.1.- Definición de Valor Absoluto. El valor absoluto
Programación en java. Estructuras algorítmicas
Programación en java Estructuras algorítmicas Estructuras algoritmicas 1. Conceptos basicos 1. Dato 2. Tipos de datos 3. Operadores 2. dsd Conceptos Basicos DATO: se considera una representación simbólica
Diagramas de interacción
Tema 6: Diagramas de Interacción Diagramas de interacción Los diagramas de interacción son diagramas que describen cómo grupos de objetos colaboran para conseguir algún fin. Estos diagramas muestran objetos,
Algoritmos. Medios de expresión de un algoritmo. Diagrama de flujo
Algoritmos En general, no hay una definición formal de algoritmo. Muchos autores los señalan como listas de instrucciones para resolver un problema abstracto, es decir, que un número finito de pasos convierten
ADMINISTRACIÓN GENERAL DE COMUNICACIONES Y TECNOLOGÍAS DE LA INFORMACIÓN. Manual de Operación
MANUAL DE OPERACIÓN Nombre del Sistema: Tabla de Versiones y Modificaciones Versión Descripción del cambio Responsable de la Versión Fecha 1.0 Creación del documento Proveedor VUCEM 2 13/11/2016 SAT-AGCTI
BANCO CENTRAL DE VENEZUELA
BANCO CENTRAL DE VENEZUELA RIF: G-20000110-0 INSTRUCTIVO PARA EL USUARIO EXTERNO DEL SISTEMA DE INTEGRACIÓN CON ENTES EXTERNOS Junio, 2009 TÍTULO: INSTRUCTIVO PARA EL USUARIO EXTERNO DEL SISTEMA DE INTEGRACIÓN
Análisis Costo-Beneficio
Análisis Costo-Beneficio 1 I. Resumen Ejecutivo Nombre del PPI En esta sección, deben llenarse los campos de la tabla que se muestran a continuación, a manera de resumen de las secciones que componen el
SESIÓN 11 DERIVACIÓN DE FUNCIONES TRIGONOMETRICAS INVERSAS
SESIÓN 11 DERIVACIÓN DE FUNCIONES TRIGONOMETRICAS INVERSAS I. CONTENIDOS: 1. Función inversa, conceptos y definiciones 2. Derivación de funciones trigonométricas inversas 3. Ejercicios resueltos 4. Estrategias
PROGRAMA DE AYUDA. OTRAS UTILIDADES
PROGRAMA DE AYUDA. OTRAS UTILIDADES 1. Importar ficheros externos La importación de ficheros externos es interesante para automatizar la confección y envío de declaraciones cuyos datos residen en bases
El TAD Grafo. El TAD Grafo
Objetivos! Estudiar la especificación del TAD Grafo! Presentar diferentes alternativas de implementación! Conocer los algoritmos más importantes de manipulación de grafos Contenidos.1 Conceptos. Especificación
MATEMÁTICAS PARA LA COMPUTACIÓN CAPÍTULO 1. SISTEMAS NUMÉRICOS
MATEMÁTICAS PARA LA COMPUTACIÓN CAPÍTULO 1. SISTEMAS NUMÉRICOS INSTRUCTIVO PARA EL SIMULADOR DE UNA MÁQUINA DE ESTADOS FINITOS. AUTOR: JOSÉ ALFREDO JIMÉNEZ MURILLO AVC APOYO VIRTUAL PARA EL CONOCIMIENTO
Guía práctica de estudio 05: Diagramas de flujo
Guía práctica de estudio 05: Diagramas de flujo Elaborado por: M.C. Edgar E. García Cano Ing. Jorge A. Solano Gálvez Revisado por: Ing. Laura Sandoval Montaño Guía práctica de estudio 05: Diagramas de
Ubicación de la asignatura. Propósito de la asignatura. Desarrollando proyectos. Asignaturas relacionadas. Una mirada hacia la optimización económica
EL CÁLCULO EN MI VIDA DIARIA OPTATIVAS ÁREA: MATEMÁTICAS Ubicación de la asignatura La asignatura El cálculo en mi vida diaria, se encuentra dentro del bloque de las asignaturas optativas del Bachillerato
Manual de turbo pascal
Universidad Nacional Experimental De Los Llanos Occidentales Ezequiel Zamora UNELLEZ-Barinas Manual de turbo pascal Bachilleres: Martinez Ninibeth C.I:20.867.002 Mora Yaco C.I:17.205.073 Estructura de
A continuación entramos en detalle sobre cada uno de los pasos.
CERTIFICADO DIGITAL (Fábrica Nacional de Moneda y Timbre) Cómo obtener el certificado digital? http://www.cert.fnmt.es/clase2/main.htm A continuación entramos en detalle sobre cada uno de los pasos. Paso
Aprendizaje Automatizado
Aprendizaje Automatizado Aprendizaje Automatizado Programas que mejoran su comportamiento con la experiencia. Dos formas de adquirir experiencia: A partir de ejemplos suministrados por un usuario (un conjunto
DISEÑO DEL SISTEMA DE INFORMACION (DSI)
DISEÑO DEL SISTEMA DE INFORMACION (DSI) El objetivo del proceso de Diseño del Sistema de Información (DSI) es la definición de la arquitectura del y del entrono tecnológico que le va a dar soporte, junto
SOLICITUD DE PREINSCRIPCIÓN EN TÍTULOS PROPIOS UNIVERSIDAD REY JUAN CARLOS CURSO ACADÉMICO
SOLICITUD DE PREINSCRIPCIÓN EN TÍTULOS PROPIOS UNIVERSIDAD REY JUAN CARLOS CURSO ACADÉMICO 2013-14 Manual del Alumno Contenido 1 Introducción... 2 2 Plazos de Preinscripción... 2 3 Plazos de Matrícula...
TECNICO SUPERIOR EN INFORMÁTICA EMPRESARIAL MÓDULO INTRUCCIONAL
1 TECNICO SUPERIOR EN INFORMÁTICA EMPRESARIAL MÓDULO INTRUCCIONAL TECNOLOGÍA DE LA COMPUTADORA FACILITADOR: PARTICIPANTE: DAVID, CHIRIQUÍ 2015 2 Qué es un programa? Un programa informático es un conjunto
M465: Tanque de Agua. A) Presentación del problema
M465: Tanque de Agua A) Presentación del problema El diagrama muestra la forma y dimensiones de un tanque de almacenamiento de agua. Al inicio el tanque está vacío. Una llave está llenando el tanque a
DISTAFARMA: APLICACIÓN PARA LA VENTA A DISTANCIA DE MEDICAMENTOS DE USO HUMANO NO SUJETOS A PRESCRIPCIÓN MÉDICA MANUAL PARA LA OFICINA DE FARMACIA
DISTAFARMA: APLICACIÓN PARA LA VENTA A DISTANCIA DE DE USO HUMANO NO SUJETOS A PRESCRIPCIÓN MÉDICA MANUAL PARA LA OFICINA DE FARMACIA VERSIÓN: 23/06/2015 Página 1 de 16 ÍNDICE 1. DESCRIPCIÓN GENERAL DE
La última versión disponible cuando se redactó este manual era la 5 Beta (versión ), y sobre ella versa este manual.
Manual de Dev-C++ 4.9.9.2 Página 1 de 11 Introducción Dev-C++ es un IDE (entorno de desarrollo integrado) que facilita herramientas para la creación y depuración de programas en C y en C++. Además, la
Grado en que el producto software satisface las necesidades expresadas o implícitas, cuando se usa bajo condiciones determinadas. ISO
Grado en que el producto software satisface las necesidades expresadas o implícitas, cuando se usa bajo condiciones determinadas. ISO 25000. Aspectos de la calidad de software Interna: medible a partir
Práctica 3. Paso de parámetros entre subrutinas. 3. Consideraciones sobre el paso de parámetros
Práctica 3. Paso de parámetros entre subrutinas 1. Objetivo de la práctica El objetivo de esta práctica es que el estudiante se familiarice con la programación en ensamblador y el convenio de paso de parámetros
Grafos. Amalia Duch Brown Octubre de 2007
Grafos Amalia Duch Brown Octubre de 2007 Índice 1. Definiciones Básicas Intuitivamente un grafo es un conjunto de vértices unidos por un conjunto de líneas o flechas dependiendo de si el grafo es dirigido
Capítulo 2 Conjuntos. 2.1 Introducción. 2.2 Determinación de conjuntos. Definición:
Capítulo 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
2007/ PROGRAMACIÓN. Tipo: TRO Curso: 1 Semestre: AB CREDITOS Totales TA TS AT AP PA OBJETIVOS. 1.-Introducción.
2007/2008 Tipo: TRO Curso: 1 Semestre: AB CREDITOS Totales TA TS AT AP PA OBJETIVOS 1.-Introducción. -Comprender cómo funciona un lenguaje de programación 2. Características del lenguaje C -Entender las
FORMATO CONDICIONAL EN EXCEL
FORMATO CONDICIONAL EN EXCEL El Formato Condicional es una herramienta muy útil como información gráfica adicional para los datos numéricos que están en celdas o en rangos. Este tipo de formato tiene un
Tema V Generación de Código
Tema V Generación de Código Una vez que se ha realizado la partición HW/SW y conocemos las operaciones que se van a implementar por hardware y software, debemos abordar el proceso de estas implementaciones.
1. Introducción Generalidades Configuración del Equipo Instalación de Java... 3
Ú CONTENIDO 1. Introducción... 2 2. Generalidades... 2 3. Configuración del Equipo... 3 3.1 Instalación de Java... 3 3.2 Instalación de la aplicación AutoFirma... 12 3.3 Desarrollo de un proceso de firma
ANEXO II. Resumen de la actuación
ANEXO II. Resumen de la actuación Nº EXPEDIENTE: REFERENCIA: FE2010 NIF del Solicitante: 1. DETALLES DE LA SITUACIÓN ACTUAL 1.1. ERP utilizado: Nombre del ERP: Versión: (*) Si aplica Fabricante : Fecha
Bloque temático I. Planear el proyecto de animación en 2D a partir de los requeriemientos del cliente
Bloque temático I 1 Planear el proyecto de animación en 2D a partir de los requeriemientos del cliente Guion BLOQUE TEMÁTICO I 2 Es un escrito detallado en el que se expone todo los elementos necesarios
SESIÓN N 07 III UNIDAD RELACIONES Y FUNCIONES
SESIÓN N 07 III UNIDAD RELACIONES Y FUNCIONES RELACIONES BINARIAS PAR ORDENADO Es un arreglo de dos elementos que tienen un orden determinado donde a es llamada al primera componente y b es llamada la
BLOQUE I: HOJA DE CÁLCULO
4. Organización, secuenciación y temporización de contenidos BLOQUE I: HOJA DE CÁLCULO En este bloque se pretende conocer y utilizar tanto la hoja de cálculo Excel como sus gráficos. Se aplicará la hoja
Agradecimientos. Nota de los autores. 1 Problemas, algoritmos y programas 1
Prologo Agradecimientos Nota de los autores Índice general I III V VII 1 Problemas, algoritmos y programas 1 1.1 Programas y la actividad de la programación.................... 4 1.2 Lenguajes y modelos
SERVICIO NACIONAL DE APRENDIZAJE SENA SISTEMA INTEGRADO DE GESTIÓN Procedimiento Ejecución de la Formación Profesional Integral GUÍA DE APRENDIZAJE
Nº 1 1. IDENTIFICACIÓN DE LA GUIA DE APRENDIZAJE Programa de Formación: Técnico en programación de software Nombre del Proyecto: Sistema de información para la gestión empresarial Fase del proyecto: FASE
Algoritmos y programas. Algoritmos y Estructuras de Datos I
Algoritmos y programas Algoritmos y Estructuras de Datos I Primer cuatrimestre de 2012 Departamento de Computación - FCEyN - UBA Programación funcional - clase 1 Funciones Simples - Recursión - Tipos de
Sistema electrónico digital (binario) que procesa datos siguiendo unas instrucciones almacenadas en su memoria
1.2. Jerarquía de niveles de un computador Qué es un computador? Sistema electrónico digital (binario) que procesa datos siguiendo unas instrucciones almacenadas en su memoria Es un sistema tan complejo
INDICE Parte 1. Visual Basic Capitulo 1. Qué es Visual Basic? Capitulo 22. Mi Primera Aplicación Capitulo 3. Elementos del lenguaje
INDICE Prólogo XV Parte 1. Visual Basic 1 Capitulo 1. Qué es Visual Basic? 3 Introducción 3 Como crear una aplicación 5 Otras facilidades de Visual Basic 6 Un lenguaje de alto nivel 9 Menús 10 Colores
UNIDAD 1: NÚMEROS RACIONALES OBJETIVOS
UNIDAD 1: NÚMEROS RACIONALES Distinguir las distintas interpretaciones de una fracción. Reconocer fracciones equivalentes. Amplificar fracciones. Simplificar fracciones hasta obtener la fracción irreducible.
BLOQUE I: GEOMETRÍA PLANA Y FIGURAS GEOMÉTRICAS. Ecuaciones y sistemas. 2 (20 horas) Funciones y gráficas. 2 (20 horas) Estadística y probabilidad
PROGRAMACIÓN DIDÁCTICA Materia IV Período FBPI Tramo II Ámbito Científico-Tecnológico Bloque I Geometría plana y figuras geométricas Créditos 3 (30 horas) Bloque II Créditos Ecuaciones y sistemas 2 (20
Bases de Datos OTROS ASPECTOS MODELO E-R
Bases de Datos OTROS ASPECTOS MODELO E-R Bases de Datos GENERALIZACIÓN Y ESPECIALIZACIÓN Bases de Datos ESPECIALIZACIÓN Bases de Datos -> Especialización Un conjunto de entidades, puede incluir subgrupos
La etiqueta logística
Cuba La etiqueta logística La etiqueta logística EAN/UCC La necesidad de registrar y monitorear el movimiento de artículos o mercancías es una fase del manejo de la cadena de suministros. La etiqueta EAN/UCC
LABORATORIO DE PROCESADORES DE LENGUAJE Curso: Práctica 2: Analizador léxico/sintáctico/semántico con Flex y Bison
LABORATORIO DE PROCESADORES DE LENGUAJE Curso: 2008-2009 Práctica 2: Analizador léxico/sintáctico/semántico con Flex y Bison Planteamiento del problema En esta práctica se trata de realizar, mediante el
UNIDAD 1 GENERALIDADES HTML
UNIDAD 1 GENERALIDADES HTML GENERALIDADES HTML5 Una página web es un archivo con texto en el que se insertan diferentes etiquetas HTML, para que ese contenido pueda ser interpretado por el navegador web.
SISTEMAS OPERATIVOS MONOPUESTO 1. CONTENIDOS MÍNIMOS PARA LA EVALUACIÓN POSITIVA
1ª evaluación DEPARTAMENTO MATERIA CURSO INFORMATICA SISTEMAS OPERATIVOS MONOPUESTO 1º S.M.R 1. CONTENIDOS MÍNIMOS PARA LA EVALUACIÓN POSITIVA Caracterización de sistemas operativos: Utilización de sistemas
Contenido. 1. El proceso 2. Los modelos 3. Los diagramas 4. Ejemplo
Tutorial Contenido 1. El proceso 2. Los modelos 3. Los diagramas 4. Ejemplo 1. El proceso Fases soportadas por UML Análisis de requisitos de usuario Análisis de requisitos de software Diseño de la plataforma
SESIÓN 14 DERIVADAS SUCESIVAS DE UNA FUNCION, DE MÁXIMOS Y MÍNIMOS Y LA CONCAVIDAD DE UNA CURVA APLICANDO EL CRITERIO DE LA SEGUNDA DERIVADA
SESIÓN 14 DERIVADAS SUCESIVAS DE UNA FUNCION, DE MÁXIMOS Y MÍNIMOS Y LA CONCAVIDAD DE UNA CURVA APLICANDO EL CRITERIO DE LA SEGUNDA DERIVADA I. CONTENIDOS: 1. Derivadas sucesivas de una función 2. Concavidad
QUÉ ES UNA CLASE JAVA? ATRIBUTOS (PROPIEDADES O CAMPOS), CONSTRUCTOR Y MÉTODOS. (CU00623B)
APRENDERAPROGRAMAR.COM QUÉ ES UNA CLASE JAVA? ATRIBUTOS (PROPIEDADES O CAMPOS), CONSTRUCTOR Y MÉTODOS. (CU00623B) Sección: Cursos Categoría: Curso Aprender programación Java desde cero Fecha revisión:
Guía del Curso Técnico en Mantenimiento de CRM: Recursos Empresariales y de Gestión de Relaciones con Clientes
Guía del Curso Técnico en Mantenimiento de CRM: Recursos Empresariales y de Gestión de Relaciones con Clientes Modalidad de realización del curso: Número de Horas: Titulación: Online 160 Horas Diploma
1. Computadores y programación
1. Computadores y programación Informática y computadora (RAE) Informática (Ciencia de la computación) Conjunto de conocimientos científicos y técnicos que hacen posible el tratamiento automático de la
El Autómata con Pila: Transiciones
El Autómata con Pila: Transiciones El Espacio de Configuraciones Universidad de Cantabria Esquema Introducción 1 Introducción 2 3 Transiciones Necesitamos ahora definir, paso por paso, como se comporta
relación de las redes sociales y la internacionalización de empresas; ferias virtuales; portales verticales y comunidades. - Seminarios tipo 3:
PLIEGO DE ESPECIFICACIONES TÉCNICAS PARA LA PLANIFICACIÓN, EJECUCIÓN Y SEGUIMIENTO DE UN PROGRAMA FOMENTO DE LA CULTURA INNOVADORA, EN EL MARCO DEL PROYECTO REDINCOPYME 1. ANTECEDENTES Y ÁMBITO DEL PROCESO
Tema Contenido Contenidos Mínimos
1 Estadística unidimensional - Variable estadística. - Tipos de variables estadísticas: cualitativas, cuantitativas discretas y cuantitativas continuas. - Variable cualitativa. Distribución de frecuencias.
Edición HTML. Estilos CSS MINISTERIO DE EDUCACIÓN Y CIENCIA SECRETARÍA GENERAL DE EDUCACIÓN Y FORMACIÓN PROFESIONAL
MINISTERIO DE EDUCACIÓN Y CIENCIA SECRETARÍA GENERAL DE EDUCACIÓN Y FORMACIÓN PROFESIONAL DIRECCIÓN GENERAL DE EDUCACIÓN, FORMACIÓN PROFESIONAL E INNOVACIÓN EDUCATIVA CENTRO NACIONAL DE INFORMACIÓN Y COMUNICACIÓN
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
Todo programa en 'C' consta de una o más funciones, una de las cuales se llama main.
LENGUAJE C CARACTERISTICAS DEL LENGUAJE 'C' El lenguaje 'C' se conoce como un lenguaje compilado. Existen dos tipos de lenguaje: interpretados y compilados. Los interpretados son aquellos que necesitan
Tema 2 Conceptos básicos de programación. Fundamentos de Informática
Tema 2 Conceptos básicos de programación Fundamentos de Informática Índice Metodología de la programación Programación estructurada 2 Pasos a seguir para el desarrollo de un programa (fases): Análisis
CONTENIDO 1 Diagrama de flujo 2 Pseudocodigo 3 Diagrama estructurado (nassi-schneiderman)
CONTENIDO 1 Diagrama de flujo 2 Pseudocodigo 3 Diagrama estructurado (nassi-schneiderman) Las dos herramientas utilizadas comúnmente para diseñar algoritmos son: Diagrama de Flujo Pseuducodigo 1 Diagrama