La Jerarquía de Chomsky



Documentos relacionados
Expresiones Regulares y Derivadas Formales

Introducción. Las gramáticas definen las reglas que definen a los lenguajes Las reglas pueden tener una diversa variedad de esquemas

Lenguajes No Regulares

UNIVERSIDAD SAN MARCOS

Introducción a Autómatas Finitos

El cuerpo de los números reales

2: Autómatas finitos y lenguajes regulares.

TEMA 5. GRAMÁTICAS REGULARES.

UNIDAD I. ALGORITMOS

I PRELIMINARES 3 1 Identidades notables Productos y potencias notables Uso del símbolo de sumatoria Símbolo de sumatoria:

1 of 18 10/25/2011 6:42 AM

Introducción a la Teoría de Automátas

Tema 1 Conjuntos numéricos

Proposiciones Condicionales

Expresiones Regulares

Definición formal de autómatas finitos deterministas AFD

lasmatemáticas.eu Pedro Castro Ortega materiales de matemáticas

Tema 3.- Gramáticas formales

Autómatas finitos no deterministas (AFnD)

Tema 2: Autómatas finitos

UNIDAD DE APRENDIZAJE II UNIDAD DE APRENDIZAJE 2 ( 12 HORAS)

TEORÍA DE AUTÓMATAS Y LENGUAJES FORMALES

1.2 Números enteros El concepto de número entero

Autómatas Finitos y Lenguajes Regulares

Las Gramáticas Formales

Lenguajes Regulares. Antonio Falcó. - p. 1

APUNTES DE MATEMÁTICAS 1º BACHILLERATO TEMA 5: GEOMETRÍA AFÍN PROBLEMAS MÉTRICOS

Expresiones Regulares y Derivadas Formales

Herramientas digitales de auto-aprendizaje para Matemáticas

Apuntes de Matemática Discreta 2. Operaciones con Conjuntos

CURSOSO. Aritmética: Númerosnaturalesyenteros. Númerosracionalesyfraciones. MATEMÁTICAS. AntonioF.CostaGonzález

Existen distintas formas de representar una función lógica, entre las que podemos destacar las siguientes:

Excel Básico para Educación Financiera

MATEMÁTICAS BÁSICAS UNIVERSIDAD NACIONAL DE COLOMBIA - SEDE MEDELLÍN CLASE # 5

Polinomios. Un polinomio tiene la siguiente forma general: Donde: y las potencias de las variables descienden en valor

Sucesiones y series de números reales

UNIDAD DE APRENDIZALE III UNIDAD DE APRENDIZAJE 3 ( 8 HORAS)

Uso de representaciones geométricas para facilitar la transición de la aritmética al álgebra 1

Tema 1. Cálculo diferencial

Repaso de Álgebra. Los subconjuntos de los reales de relevancia para nuestra discusión serán denotados según indicamos a continuación:

Un conjunto se considera como una colección de objetos, llamados miembros o elementos del conjunto. Existen dos formas de expresar un conjunto:

1. El sistema de los números reales

Máquinas Secuenciales, Autómatas y Lenguajes Formales. Tema 4: Autómatas finitos deterministas. Holger Billhardt holger.billhardt@urjc.

2. ENTIDADES PRIMITIVAS PARA EL DESARROLLO DE ALGORITMOS

Teoría elemental de números

TEMA II TEORÍA INTUITIVA DE CONJUNTOS

Matemáticas I: Hoja 1

Desde la secundaria estamos acostumbrados a trabajar con polinomios, los cuales identificamos con expresiones de la forma

Vectores y Matrices. Tema 3: Repaso de Álgebra Lineal Parte I. Contenidos

Tema 2. Grupos. 3. El conjunto de matrices de orden 2 con coeficientes enteros (o reales) con la suma es un grupo conmutativo.

Sintaxis y Semántica del Lenguaje. Gramáticas

Dependencia e independencia lineal

REGLAS DE LOS SIGNOS

Complementos de Matemáticas, ITT Telemática

Números enteros. Dado cualquier número natural, éste siempre será menor que su sucesor, luego los naturales son ordenados.

Teoría de Conjuntos. Conjunto es: colección de cosas, o una colección determinada de objetos.

PROPIEDADES DE LOS NUMEROS REALES

APUNTES DE FUNCIONES PARA 4º ESO

Notación de Conjuntos

Unidad 1 Números. Los números naturales son aquellos que se utilizan para contar los elementos de un conjunto.

SISTEMAS DE NUMERACIÓN

MATEMÁTICAS 2º ESO. TEMA 1

TEMA I: LOS CONCEPTOS FUNDAMENTALES DE LA TEORÍA DE LA COMPUTABILIDAD

PROBLEMAS RESUELTOS SELECTIVIDAD ANDALUCÍA 2015 MATEMÁTICAS II TEMA 3: ESPACIO AFIN Y EUCLIDEO

Autómatas y Lenguajes Formales. Tema 3.2: Autómatas Finitos No Deterministas. Luis Peña luis.pena@urjc.es

Lección 8: Potencias con exponentes enteros

ENTIDADES PRIMITIVAS PARA EL DESARROLLO DE ALGORITMOS Tipos de datos Expresiones Operadores y operandos Identificadores como localidades de memoria

Capítulo 1. Algoritmos, diagramas de flujo y programas.

Combinación Lineal. Departamento de Matemáticas, CCIR/ITESM. 10 de enero de 2011

Herramientas digitales de auto-aprendizaje para Matemáticas

Ámbito Científico-Tecnológico Módulo III Bloque 3 Unidad 2 Cuanto más, mejor y viceversa

Los números enteros. > significa "mayor que". Ejemplo: 58 > 12 < significa "menor que". Ejemplo: 3 < 12 Cualquier número positivo siempre es mayor

Lógica y compuertas (Parte 2): Circuitos Combinacionales y Secuenciales

IES Fco Ayala de Granada Junio de 2011 (Específico 2 Modelo 1) Soluciones Germán-Jesús Rubio Luna

Universidad Politécnica de Puerto Rico Departamento de Ciencias y Matemáticas. Preparado por: Prof. Manuel Capella-Casellas, M.A.Ed.

Definición de Funciones MATE 3171

RAZONES Y PROPORCIONES

CAPITULO II. ENTIDADES PRIMITIVAS PARA EL DESARROLLO DE ALGORITMOS

Conjuntos finitos y conjuntos numerables

Sistemas de Ecuaciones Lineales

k k N b Sistemas Númericos Sistemas con Notación Posicional (1) Sistemas con Notación Posicional (2) Sistemas Decimal

UNIDAD #1: CONJUNTOS NUMERICOS

Universidad de Puerto Rico en Arecibo Departamento de Matemáticas Expresiones Algebraicas y Polinomios

Inversas Generalizadas

Clase 09: AFN, AFD y Construcción de Thompson

Lógica Proposicional, Teoremas y Demostraciones

Método de simplificación de funciones lógicas utilizando el método de Quine McCluskey

CENTRO DE EDUCACIÓN MEDIA CURSO CERO. Departamento: Matemáticas y Física. Área Académica: Matemáticas. Nombre de la materia: Curso Cero

Teoría de conjuntos. Tema 1: Teoría de Conjuntos.

Algebra Operativa. Matías Enrique Puello Chamorro 26 de julio de 2015

CAPITULO 2. ELEMENTOS Y OPERACIONES DE LAS EXPRESIONES ALGEBRAICAS. Cuando nos encontramos con dos o más términos algebraicos en un

Area Académica: Licenciatura en Administración. Profesor: I.E.C. Roxana Sifuentes Carrillo

Divisibilidad y congruencias

Proyecciones. Producto escalar de vectores. Aplicaciones

Estructuras algebraicas

Determinante de una matriz

UNIDAD 1. Los números racionales

Transcripción:

La Apuntes sobre la Complejidad Universidad de Cantabria

Esquema Motivación 1 Motivación 2

Ideas y Nociones Motivación Como se ha mencionado anteriormente, los lenguajes son conjuntos de palabras definidos por un alfabeto. No estamos interesados en cualquier conjunto, los lenguajes que nos interesan tienen una estructura inherente.

Ideas y Nociones Motivación Las gramáticas nos marcan las reglas que han construido el lenguaje. Para detectar esas reglas nos podemos preguntar: Es nuestro lenguaje una sucesión de símbolos donde el siguiente depende del anterior (o del siguiente)? en cualquiera de los casos vemos una relación simétrica. Se puede separar cada palabra del lenguaje en partes más pequeñas que no dependan unas de otras? Hay elementos que cambien su significado dependiendo del contexto? No se ajusta a ninguna de estas premisas pero se reconoce su estructura de alguna manera (mediante algún algoritmo).

Ideas y Nociones Motivación Las gramáticas nos marcan las reglas que han construido el lenguaje. Para detectar esas reglas nos podemos preguntar: Es nuestro lenguaje una sucesión de símbolos donde el siguiente depende del anterior (o del siguiente)? en cualquiera de los casos vemos una relación simétrica. Se puede separar cada palabra del lenguaje en partes más pequeñas que no dependan unas de otras? Hay elementos que cambien su significado dependiendo del contexto? No se ajusta a ninguna de estas premisas pero se reconoce su estructura de alguna manera (mediante algún algoritmo).

Ideas y Nociones Motivación Las gramáticas nos marcan las reglas que han construido el lenguaje. Para detectar esas reglas nos podemos preguntar: Es nuestro lenguaje una sucesión de símbolos donde el siguiente depende del anterior (o del siguiente)? en cualquiera de los casos vemos una relación simétrica. Se puede separar cada palabra del lenguaje en partes más pequeñas que no dependan unas de otras? Hay elementos que cambien su significado dependiendo del contexto? No se ajusta a ninguna de estas premisas pero se reconoce su estructura de alguna manera (mediante algún algoritmo).

Ideas y Nociones Motivación Las gramáticas nos marcan las reglas que han construido el lenguaje. Para detectar esas reglas nos podemos preguntar: Es nuestro lenguaje una sucesión de símbolos donde el siguiente depende del anterior (o del siguiente)? en cualquiera de los casos vemos una relación simétrica. Se puede separar cada palabra del lenguaje en partes más pequeñas que no dependan unas de otras? Hay elementos que cambien su significado dependiendo del contexto? No se ajusta a ninguna de estas premisas pero se reconoce su estructura de alguna manera (mediante algún algoritmo).

Ejemplos Las sumas expresiones matemáticas que involucren simplemente números sumas y restas. Que significa 3 4 + 2? Que pasa si a esa expresión le añadimos paréntesis de este modo 3 (4 + 2)? En JAVA, que significa i + j?, es lo mismo que las variables i, j sean strings que sean enteros ó números en punto flotante? Pensemos ahora en alguna lengua humana, como español, es fácil detectar ironía?

Ejemplos Las sumas expresiones matemáticas que involucren simplemente números sumas y restas. Que significa 3 4 + 2? Que pasa si a esa expresión le añadimos paréntesis de este modo 3 (4 + 2)? En JAVA, que significa i + j?, es lo mismo que las variables i, j sean strings que sean enteros ó números en punto flotante? Pensemos ahora en alguna lengua humana, como español, es fácil detectar ironía?

Ejemplos Las sumas expresiones matemáticas que involucren simplemente números sumas y restas. Que significa 3 4 + 2? Que pasa si a esa expresión le añadimos paréntesis de este modo 3 (4 + 2)? En JAVA, que significa i + j?, es lo mismo que las variables i, j sean strings que sean enteros ó números en punto flotante? Pensemos ahora en alguna lengua humana, como español, es fácil detectar ironía?

Ejemplos Las sumas expresiones matemáticas que involucren simplemente números sumas y restas. Que significa 3 4 + 2? Que pasa si a esa expresión le añadimos paréntesis de este modo 3 (4 + 2)? En JAVA, que significa i + j?, es lo mismo que las variables i, j sean strings que sean enteros ó números en punto flotante? Pensemos ahora en alguna lengua humana, como español, es fácil detectar ironía?

Definición ( o de Tipo 3) Definiremos las gramáticas con producciones lineales del modo siguiente: Llamaremos gramática lineal por la izquierda a toda G := (V, Σ, Q 0, P) gramática tal que todas las producciones de P son de uno de los dos tipos siguientes: A a, donde A V y a Σ {λ}. A ab, donde A, B V y a Σ {λ}.

Ejemplo de Gramática Linear Sea G := ({Q 0, Op}, {Num, +, }, Q 0, P) gramática la siguiente gramática: P = {Q 0 Num Op Num, Op +Q 0 Q 0 }. Esta gramática genera el lenguaje de todas las operaciones aritméticas que involucren solo sumas y restas.

Definición ( o de Tipo 2) Llamaremos gramática libre de contexto a toda G = (V, Σ, Q 0, P) gramática tal que todas las producciones de P son del tipo siguiente: A ω, donde A V y ω (Σ V ). Un lenguaje libre de contexto es un lenguaje generado por una gramática libre de contexto.

Ejemplo Motivación Tomemos la gramática G que habíamos definido anteriormente y añadamos una variable G := ({Q 0, Q 1, Op}, {Num, +,, (, )}, Q 1, P). Las producciones van a ser ahora P = {Q 0 Q 1 Op Q 1, Op +Q 1 Q 1, Q 1 Num (Q 0 )}.

Definición (Gramáticas sensibles al contexto o de Tipo 1) Llamaremos gramática sensible al contexto a toda G = (V, Σ, Q 0, P) gramática tal que todas las producciones de P son del tipo siguiente: γaδ γωδ, donde A V y ω, γ, δ (Σ V ), ω λ. Un lenguaje sensible al contexto es un lenguaje generado por una gramática libre de contexto.

Supongamos que queremos definir el lenguaje que solo acepta programas donde las variables hayan sido especificadas. Por simplicidad supongamos que solo vamos a utilizar programas con una sola variable.

Boolean a a=true Es un programa válido, pero Boolean a b=true no lo es.

Una posible gramática (solo en el caso de los identificadores estén formados por las letras a,b) : S Boolean CD=true, C aca bcb λ, D λ AD ad, BD bd Aa aa, Ab ba Ba ab, Bb bb

Definición (Gramáticas de Tipo 0) Llamaremos gramática de tipo 0 a toda G = (V, Σ, Q 0, P) gramática tal que todas las producciones de P son del tipo siguiente: γ ω, donde γ, ω (Σ V ).

Notar que un lenguaje regular es siempre un lenguaje libre de contexto. Nuestra preocupación será encontrar cual es la mínima estructura que tiene un lenguaje.