Operaciones con Cadenas

Slides:



Advertisements
Presentaciones similares
Algoritmos y Programas
Advertisements

Introducción al Teorema de Gödel Eduardo Alejandro Barrio UBA - CONICET 2do Cuatrimestre de 2009 Eduardo Alejandro Barrio UBA.
La aritmetización de la sintaxis
Introducción al Teorema de Gödel
Introducción al Teorema de Gödel Eduardo Alejandro Barrio UBA - CONICET 2do Cuatrimestre de 2009 Eduardo Alejandro Barrio UBA.
Introducción al Teorema de Gödel Eduardo Alejandro Barrio UBA - CONICET 2do Cuatrimestre de 2009 Eduardo Alejandro Barrio UBA.
Conceptos básicos Def. Un símbolo es cualquier carácter imprimible.
Gramáticas.
Máquinas de Turing (MT)
TIPOS DE GRAMATICAS JERARQUIAS DE CHOMSKY
CADENAS Y LENGUAJES.
Tema: Decibilidad Integrantes: Ileana Rdguez Soto
Programas y Máquinas de Turing
¿Cómo hacer para que una máquina comprenda el LN?
Introducción a la máquina
TEORÍA DE CONJUNTOS.
TEÓRIA DE CONJUNTOS.
Unidad II: Teoría de Conjuntos.
Introducción a la Programación
TEÓRIA DE CONJUNTOS Profesor: Rubén Alva Cabrera.
Introducción a la Estadística Informática
Tema 1.- Lenguajes. Gramáticas
UNIVERSIDAD LATINA (UNILA) I.- FUNDAMENTOS DE ALGORITMOS
UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE INGENIERIA DIVISIÓN DE INGENIERÍA ELÉCTRICA COMPUTACIÓN PARA INGENIEROS NOTA IMPORTANTE: Para complementar.
Introducción y sintaxis
3. INTRODUCCIÓN A LA PROGRAMACIÓN
ANALISIS SINTACTICO El análisis gramatical es la tarea de determinar la sintaxis, o estructura, de un programa. Por esta razón también se le conoce como.
Conceptos Fundamentales
PROGRAMACIÓN LÓGICA.
Sistemas Evolutivos Introduccion.
Tema 1.- Lenguajes. Gramáticas
Tema 2 Lenguajes Formales.
Introducción a la Teoría de Lenguajes Preparado por Manuel E. Bermúdez, Ph.D. Profesor Asociado University of Florida Curso de Compiladores.
Programación de sistemas
Introducción a la NP_Completitud
2º curso Ingeniería Técnica en Informática de Sistemas UNED
1 CALCULO DE PREDICADOS Introducción y sintaxis äPermite acceder a los componentes de una aserción individual äLas expresiones pueden contener variables,
2º curso Ingeniería Técnica en Informática de Sistemas UNED
Problemas, algoritmos y programas: Modelar: Simular o programar su solución en un computador. Algoritmos: Es un conjunto finito, y no ambiguo de etapas.
Agenda Clase 16 Motivación e Historia de la Programación Funcional y la Programación Lógica. Concepto y Características de la Programación Funcional. Ventajas.
Tema 6. Conceptos básicos de programación (Repaso) Prof. María Alejandra Quintero Informática Año 2013.
Diseño de algoritmos La computadora puede realizar procesos y darnos resultados, sin que tengamos la noción exacta de las operaciones que realiza. Con.
Algoritmia. La computadora como herramienta para resolver problemas.
Teoría de lenguajes y compiladores
Universidad Autónoma San Francisco CARRERA PROFESIONAL: Lengua, Traducción e Interpretación Asignatura: MATEMÁTICA Tema: “SISTEMA FORMAL”
TEÓRIA DE CONJUNTOS.
TEÓRIA DE CONJUNTOS.
Unidad 1: FUNDAMENTOS DE COMPUTACIÓN Y PSEUDOLENGUAJE
Gramáticas Formales Cadenas y Lenguajes.
TEÓRIA DE CONJUNTOS Docente: Jesús Huaynalaya García.
INTRODUCCIÓN A LA INTELIGENCIA ARTIFICIAL Y LOS SISTEMAS EXPERTOS
¿Qué matemáticas están presentes en la aplicación de la computación en el ámbito científico? César Fernández R. Hipótesis cognitiva: La matemática que.
Gramáticas Otoño2012. Importancia de las gramáticas 2 Son una herramienta muy poderosa para describir y analizar lenguajes.
Algoritmos y pseudocódigos
1 AFDAFN AF Gramáticas lineales derecha Expresiones regulares Tema 2 Método de los AF Método de las derivadas Sistemas de Ecuaciones Tema 1.
LE, EI, Profesor Ramón Castro Liceaga UNIVERSIDAD LATINA (UNILA) I.- FUNDAMENTOS DE ALGORITMOS (CONCEPTOS)
LE, EI, Profesor Ramón Castro Liceaga UNIVERSIDAD LATINA (UNILA) TRADUCTORES Y ANALIZADOR LEXICOGRÁFICO.
ARQUITECTURA DE LOS SISTEMAS DE INFORMACIÓN
ALGORITMO QUE ES ??.
TEÓRIA DE CONJUNTOS Profesor: Ing. Oscar Guaypatin Pico.
I.- ESTUDIO DE LOS LENGUAJES DE PROGRAMACIÓN.
Elaboración de algoritmos usando lógica de programación
Daniel Camilo Albarracín torres Christian David Donoso Beltrán 1002.
TEMA: DISEÑO DE LA SOLUCION INTREGRANTES DE EQUIPO: ERIKA CRUZ MARTINEZ RODOLFO LOPEZ ANOTA LUIS ARMANDO LIÑA QUECHA JOSE FRANCISCO MEZO VARELA LUIS ENRIQUE.
Lic. Carla Aguirre Montalvo
Algoritmos Programación
* Cuando nos permite desarrollar un programa que necesitamos para tomar un conjunto de buenas prácticas para hacer eso. Esto se debe a que podemos ahorrar.
COMPUTER SCIENCE PARCIAL 1 Introducción a los programas.
Sintaxis y Semántica. S.Takahashi Fases en el proceso de análisis de lenguajes Lexer Parser caracteres tokensrespuesta.
Introducción al cálculo lambda Programación lógica funcional.
Transcripción de la presentación:

Operaciones con Cadenas Gramáticas Formales Operaciones con Cadenas

Concatenación Producto de cadenas. m : W X W ↔ W. Concatenar la cadena x con la cadena z se logra haciendo seguir a la cadena x con los símbolos de z. Si x = a1, a2, a3... an; z = b1, b2, b3... bn entonces m(x, z) = a1, a2... an b1, b2... bn Denotamos m(x, z), x•z, xz.

Modelos de computabilidad Sistemas formales… los símbolos se despojan de significado y se trabaja exclusivamente con la sintaxis. Se buscan procedimientos mecánicos para resolver problemas … algoritmos. Modelos de computabilidad … sistemas formales y la mecanización de procesos de solución.

Aportaciones a los Modelos Godel (1931) Funciones recursivas primitivas. Herramienta fundamental para estudiar computabilidad; mecanismo inductivo para la definición de funciones. Hedrbrand (1931) Funciones recursivas generales. Introducción de la minimalidad en las funciones recursivas primitivas extendiéndolas a funciones primitivas parciales. Kleene (1936). Funciones recursivas parciales. Lógica ecuacional y manejo de cuantificadores mecanismo ecuacional con cuantificadores en lógica. Alonzo Church (1936) Cálculo lambda. Relaciona el trabajo de Godel y Kleene, con definiciones inductivas restringidas; inspiración de lenguajes como LISP. Alan Turing (1936) Máquina de Turing. Herramienta estándar para complejidad; modelo mecanicista de solución de problemas. Emile Post (1943) Sistemas de Post. Mecanismos deductivos; modelos de algoritmos, desarrollados con gramáticas. A. A. Markov (1954) Cadenas de Markov. Modelo de algoritmos; similar a las gramáticas formales. Noam Chomsky (1958) Jerarquía de Chomsky. Modelo de lenguajes y jerarquización de los mismos; utilizado para gramáticas formales. Shepherdson y Sturgis (1963). Máquinas de acceso directo. Modelo explícito de computadoras modernas; utilizado en complejidad, para medir pasos elementales.

Cadenas y Lenguajes Interesan problemas de decisión. Un problema de decidibilidad es una función que produce como resultado "sí" o "no". Se refieren a la pertenencia de un elemento a un conjunto, si un objeto tiene o no una determinada propiedad, si un conjunto puede o no particionarse en clases de equivalencia, etc.

Cadenas y Lenguajes Cuando decimos que un problema es decidible, quiere decir que podemos describir a todos los posibles argumentos a la función, y podemos especificar también el subconjunto de entradas para las que la función responderá afirmativamente. Las entradas son cadenas de símbolos.

Definición 1 Un símbolo es un objeto indivisible. Vamos a utilizar para representar a los símbolos las letras minúsculas al frente del alfabeto (a, b, c) y los dígitos (0... 9).

Definición 2 Un alfabeto es un conjunto de símbolos, que puede ser finito o infinito. En general se usa la letra griega Σ. También se utilizan las letras mayúsculas hacia el final del alfabeto (V, X, Y, Z).

Definición 3 Una cadena (palabra, frase) es una sucesión finita de símbolos, tomados éstos de un alfabeto también finito. Se utilizan las letras minúsculas hacia el final del alfabeto para denotar cadenas (x, y, w,...).

Conclusión Decimos que x es una cadena sobre Σ si x está formada con símbolos tomados del alfabeto Σ. Sea x = a1, a2, a3... an una cadena sobre Σ tal que ai Є Σ, i = 1,., n. La longitud de x es n, el número de símbolos en x y lo denotamos con |x|. |x| = n ↔ x = a1, a2, a3... an, ai Є Σ, i = 1,.,n

Ejemplos Sea Σ = {0,1} y x = 0011001. x es una cadena sobre Σ de longitud 7. Sea Σ = {a, b, c} y x = acb. x es una cadena sobre Σ de longitud 3.