Вы находитесь на странице: 1из 34

Lenguaje de Autómatas I

ISC MÓNICA LAURENT


LEON JUAREZ
CRITERIOS DE VALORACIÓN POR
PARCIAL
Ejemplo:

Preguntas orales (d) (10%),


Evaluación(e)(30%)

Evaluaciones Formativas: Investigar, analizar e Integrar la


información de la unidad en una página web, redacción y
gramática
Evaluaciones Sumativas: Cuadros
Sinópticos(20%) Mapa Mental
(b)(20%), Investigación 2ª(c)(20%),
MATERIAL
RUBRICA INVESTIGACIÓN PRACTICA EXA ORAL
PORTADA 5 5
CONTENIDO 55 50
CONOCIMIENTO 15 10
ORTOGRAFIA 5 5
INTRODUCCIÓN 10 10
CONCLUSIÓN 10 10
OBJETIVO 10
CUATRO PREGUNTAS CORRECTAS 10
TRES PREGUNTAS CORRECTAS 9
DOS PREGUNTAS CORRECTAS 7
UNA PREGUNTA CORRECTA 3
100 100

EVA. SUMATIVAS porcentaje


EXA ESCRITO 30
Entre Practica e Investigación 60
Examen oral 10
total 100
1.-Introducción a la Teoría de Lenguajes
Formales.

1.1 Alfabeto.
1.2 Cadenas.
1.3 Lenguajes, tipos y herramientas.
1.4 Estructura de un traductor
1.5 Fases de un compilador
2.- Expresiones Regulares.
2.1. Definición formal de una ER.
2.2. Diseño de ER.
2.3. Aplicaciones en problemas reales.
3.- Autómatas Finitos.

3.1 Conceptos: Definición y Clasificación de Autómata


Finito (AF).
3.2 Conversión de un Autómata Finito No Determinista
(AFND) a Autómata
Finito Determinista (AFD).
3.3 Representación de ER usando AFND
3.4 Minimización de estados en un AF
3.5 Aplicaciones (definición de un caso de estudio)
4.- Análisis Léxico.
4.1 Funciones del analizador léxico.
4.2 Componentes léxicos, patrones y lexemas.
4.3 Creación de Tabla de tokens.
4.4 Errores léxicos.
4.5 Generadores de analizadores Léxicos.
4.6 Aplicaciones (Caso de estudio).
5.- Análisis Sintáctico.

5.1 Definición y clasificación de gramáticas.


5.2 Gramáticas Libres de Contexto (GLC).
5.3 Árboles de derivación.
5.4 Formas normales de Chomsky.
5.5 Diagramas de sintaxis
5.6 Eliminación de la ambigüedad.
5.7 Tipos de analizadores sintácticos
5.- Análisis Sintáctico.

5.8 Generación de matriz predictiva (cálculo first y


follow)
5.9 Manejo de errores
5.10 Generadores de analizadores sintácticos
6.- Máquinas de Turing.

6.1 Definición formal MT


6.2 Construcción modular de una MT
6.3 Lenguajes aceptados por la MT.
1.-Introducción a la Teoría de Lenguajes
Formales.

1.1 Alfabeto.
1.2 Cadenas.
1.3 Lenguajes, tipos y herramientas.
1.4 Estructura de un traductor
1.5 Fases de un compilador
1.-Introducción a la Teoría de Lenguajes
Formales.

1.1 Alfabeto.
1.2 Cadenas.
1.3 Lenguajes, tipos y herramientas.
1.4 Estructura de un traductor
1.5 Fases de un compilador
Ciencias de la Computación

• Teoría de Autómatas.
Trata del estudio de máquinas de computación
abstractas.
• Teoría de la Computación.
Trata del estudio de la computabilidad y de la
complejidad.
• Lenguajes y Gramáticas.
Trata del estudio y formalización de los lenguajes.
Alfabeto

1. Un alfabeto es un conjunto finito no vacío cuyos elementos se llaman símbolos.


Denotamos un alfabeto arbitrario con la letra Σ. Símbolos: Es una entidad
abstracta que no se puede definir, ya que se dejaría como una axioma. Igual que
se define un punto en la geometría. La cual normalmente los símbolos son letras
(a, b, c,…. z), dígitos (0,1,…9, caracteres (+, -, *, /,>,< …..). los símbolos
pueden estar formados por varias letras o caracteres.
Alfabeto

Alfabeto: El alfabeto o abecedario es un conjunto de letras, con un determinado


orden. podríamos precisamente decir que el alfabeto es un conjunto de letras
(caracteres o grafemas) de un sistema de escritura, cada una representa
aproximadamente un fonema (consonante o vocal).
Cadenas

Una cadena o palabra sobre un alfabeto Σ. admitimos la existencia de una única


cadena que no tiene símbolos, la cual se denomina cadena vacía y se denota con λ.
la cadena vacía desempeña, en la teoría de lenguajes formales, un papel similar al
que desempeña el conjunto vacío Ø en la teoría de conjuntos.
Longitud de cadena

Es el número de símbolos que contiene. La notación empleada es la que es la que


se indica en el ejemplo:
Utilizamos las cadenas de los ejemplos:
I abcb I = b
4, I a + I
2*b I = 5 =
I 000111 I = 9
6 I if a
> b then a
Cadena Vacía.

Es la única cadena de caracteres de tamaño cero. Y la podemos denotar


usualmente con letras λ o Є (Griegas).
Concatenación de cadenas.

La concatenación de dos cadenas u y v, escrita uv, es "pegar" las dos cadenas para
formar una nueva.
Ejemplo:
Sea u = ab
v = ca
w = bb.

Entonces uv = abca
uw = cabb
Concatenación de cadenas.

El resultado de la concatenación de u, v y w es independiente


del orden en que las operaciones son ejecutadas.

Matemáticamente esta propiedad es conocida como


asociatividad.
Universo del discurso.

Es un conjunto de todas las cadenas donde podemos formar con


símbolos del alfabeto V le denominamos universo del discurso de
V y la representamos de la siguiente manera W (V). Es evidente
que W(V) es un conjunto infinito y que la cadena vacía pertenece
a W(V).
Ejemplo:
Un alfabeto con una sola letra V = { a }, podemos decir que el
universo del discurso es: W(V) = { λ, a, aa, aaa, aaaa,....} y asi
contiene una cadenas infinitas.
Lenguajes.

Es un conjunto de cadenas, de todas las seleccionadas de un Σ*.


donde Σ determinado el alfabeto se denomina lenguaje. Si Σ es
un alfabeto y L Σ*, entonces L es un lenguaje de Σ. Observe que
un lenguaje de Σ no necesita incluir cadenas con todos los
símbolos de Σ, ya que una vez que hemos esta que L es un
lenguaje de Σ, también sabemos que es un lenguaje de cualquier
alfabeto que sea un súper conjunto de Σ.
Lenguajes.

La elección del termino "lenguaje" puede parecer extraña. Sin


embargo, los lenguajes habituales pueden interpretarse como
conjuntos de cadenas. Un ejemplo seria el Ingles, donde la
colección de las palabras correctas inglesas es un conjunto de
cadenas del alfabeto que consta de todas las letras. Otro
ejemplo es el lenguaje C.
Tipos de lenguajes.

Lenguaje natural (castellano)


Nosotros estamos relacionados con el concepto tradicional de
gramática que, de esta forma intuitiva, podemos considerar un
conjunto de reglas el cual nos indican que es correcto y que no
lo es del, lenguaje natural. Con este fin podemos acércanos a la
definición mas clara y formal de la lengua castellana.
Tipos de lenguajes.

Lenguaje artificial.
en este lenguaje aplicamos el mismo método en el cual
definimos un fragmento del lenguaje de programación. Donde
pretendemos describir las instrucciones el cual nos permite
asignar un valor a una expresión ó a una variable en un lenguaje
C.
Tipos de lenguajes.

Lenguaje regular.
Llamamos así a los lenguajes porque sus palabras contienen
"regularidades" o repeticiones de los mismos componentes, por
ejemplo en este lenguaje L1 = { ab, abab, ababab, abababab,...}
Este ejemplo podemos apreciar las palabras de L1 son solo
repeticiones de "ab" donde se repiten varias veces. Su
regularidad consiste en las palabras que contienen "ab" varias
veces.
Herramientas computadoras ligadas con
lenguajes.
Traductor.
Un traductor es un programa que tiene como entrada un texto
escrito en un lenguaje (lenguaje fuente) y como salida produce
un texto escrito en un lenguaje (lenguaje objeto) que preserva el
significado de origen.

Ejemplos de traductores son los ensambladores y los


compiladores.
Herramientas computadoras ligadas con
lenguajes.
Compilador.
El compilador es un programa informático que traduce un
programa escrito en lenguaje de programación y lo pasa a
lenguaje de programación, podemos decir que este programa nos
permite traducir un código fuente de un programa en lenguaje
de nivel alto, y lo pasmos a otro nivel inferior (lenguaje
maquina).
Herramientas computadoras ligadas con
lenguajes.
Ensambladores.
El ensamblador es el programa en que se realiza la tracción de
un programa escrito en ensamblador y lo pasa a lenguaje
maquina. Directa o no directa la traducción en que las
instrucciones no son mas que instrucciones que ejecuta la
computadora.
Herramientas computadoras ligadas con
lenguajes.
Interpretes.
Los interpretes son los que realizan normalmente dos
operaciones:
Traducen el código fuente a un formato interno.
Ejecuta o interpretan el programa traducido al formato interno.
Donde la primera pertenece al interprete el cual llama a veces al
compilador, así se genera el código interno, pero no es el
lenguaje de maquina, ni lenguaje de símbolos, ni mucho menos
un lenguaje de nivel alto.
Herramientas computadoras ligadas con
lenguajes.
Interpretes.
Los interpretes son los que realizan normalmente dos
operaciones:
Traducen el código fuente a un formato interno.
Ejecuta o interpretan el programa traducido al formato interno.
Donde la primera pertenece al interprete el cual llama a veces al
compilador, así se genera el código interno, pero no es el
lenguaje de maquina, ni lenguaje de símbolos, ni mucho menos
un lenguaje de nivel alto.
Conclusión

De esta manera se vio los conceptos teóricos de alfabeto,


cadena, símbolo, longitud de cadena, etc. Así como cada uno de
sus temas y subtemas.

Вам также может понравиться