Está en la página 1de 6

INSTITUTO TECNOLOGICO DE MAZATLAN

AMABELY SILVA HERNANDEZ MAESTRA

CHRISTIAN YAMIL RODRIGUEZ CASTILLO ALUMNO

LENGUAJES Y AUTOMATAS MATERIA

TIPOS DE AUTOMATAS TRABAJO

6TO SEMESTRE

INGENIERIA EN SISTEMAS COMPUTACIONALES CARRERA

MAZATLAN, SINALOA A LUNES 4 DE MARZO DEL 2013

Introduccin
En este documento se trataran de forma general, temas como expresiones regulares y tipos de autmatas, siendo las expresiones regulares muy utilizadas en diferentes mbitos, ya que brindan una herramienta que nos permitir utilizar en motores de bsqueda, siendo muy utilizadas en editores de texto, as como en leguajes de programacin. La teora de autmatas nos habla a su vez de los diferentes tipos autmatas que existen, as como la descripcin de la forma en la cual se construye un autmata.

Desarrollo
Una expresin regular, describe un conjunto de cadenas sin enumerar sus elementos, por lo tanto, una expresin regular es una forma de representar a los lenguajes regulares, que pueden ser finitos o no finitos y se construye utilizando caracteres del alfabeto sobre el cual se define el lenguaje. Las expresiones regulares proveen una manera muy flexible de buscar o reconocer cadenas de texto. Para construir una expresin regulare se utiliza operadores unin, concatenacin y cerradura de Kleene. Adems cada expresin regular tiene un autmata que la describe aun ms. Un cuantificador tras un carcter especifica la frecuencia con la que ste puede ocurrir. Los cuantificadores ms comunes son +, ? y *: ( + ) Este signo indica que el carcter que le precede debe aparecer al menos una vez. Por ejemplo, "ho+la" describe el conjunto infinito hola, hoola, hooola, hoooola, etctera. ( ? ) El signo indica que el carcter que le precede puede aparecer como mucho una vez. Por ejemplo, "ob?scuro" casa con oscuro y obscuro. ( * ) El asterisco indica que el carcter que le precede puede aparecer cero, una, o ms veces. Por ejemplo, "0*42" casa con 42, 042, 0042, 00042, etctera.

Agrupacin Los parntesis pueden usarse para definir el mbito y precedencia de los dems operadores, as como agrupacin de trminos. La sintaxis precisa de las expresiones regulares cambia segn las herramientas y que sean utilizadas. Las expresiones regulares tienes aplicacin como: editores de texto y otras utilidades usan expresiones regulares para buscar y reemplazar patrones en un texto. Las expresiones regulares tambin se utilizan en programacin ya que son un mtodo por medio del cual se pueden realizar bsquedas dentro de cadenas de caracteres. Para poder utilizar las expresiones regulares al programar es necesario tener acceso a un motor de bsqueda con la capacidad de utilizarlas. Es posible clasificar los motores disponibles en dos tipos: Motores para el programador y Motores para el usuario final. Motores para el usuario final

Son programas que permiten realizar bsquedas sobre el contenido de un archivo o sobre un texto extrado. Son diseados para que el usuario realice bsquedas avanzadas. Estos son algunos de los programas: grep: programa de los sistemas operativos Unix/Linux. sed: programa de los sistemas operativos Unix/Linux que permite la modificacin de la salida. PowerGrep: versin de grep para los sistemas operativos Windows. RegexBuddy: ayuda a crear las expresiones regulares en forma interactiva, permite al usuario usarlas y guardarlas. EditPad Pro: realiza bsquedas con expresiones regulares sobre archivos y las muestra por medio de cdigo de colores para facilitar su lectura y comprensin. Motores para el programador

Automatizan el proceso de bsqueda de modo que sea posible utilizarlo muchas veces para un propsito especfico. Se cuentan con herramientas como: AWK: Forma una parte esencial Unix/Linux Java: permite el uso de RegEx, y Sun dando soporte a estas desde el SDK

JavaScript: soporte integrado para expresiones regulares. Perl: es el lenguaje que hizo crecer a las expresiones regulares en el mbito de la programacin hasta llegar a lo que son hoy en da. PCRE: biblioteca de ExReg para C, C++ y otros lenguajes que puedan utilizar bibliotecas dll. PHP: tiene dos tipos diferentes de expresiones regulares disponibles para el programador. Python: lenguaje de "scripting" popular con soporte a Expresiones Regulares. .Net Framework: provee un conjunto de clases mediante las cuales es posible utilizar expresiones regulares para hacer bsquedas, reemplazar cadenas y validar patrones.

TIIPOS DE AUTOMATAS La teora de autmatas estudia las mquinas abstractas y los problemas que stas son capaces de resolver, debido a que est muy relacionada los autmatas son clasificados a menudo por la clase de lenguajes formales que son capaces de reconocer. Un autmata es un modelo matemtico para una mquina de estado finita, que es una mquina que al tener una entrada de smbolos, pasa a travs de una serie de estados de acuerdo a una funcin de transicin (que puede ser expresada como una tabla). Los conceptos bsicos de smbolos, palabras, alfabetos son comunes en la mayora de los autmatas. Siendo estos: Smbolo: Un dato que tiene algn significado o efecto en la mquina. Palabra: Cadena finita formada por concatenacin de nmeros o smbolos. Alfabeto: Conjunto finito de smbolos. Lenguaje: Conjunto de palabras, formado por smbolos en un alfabeto dado.

Autmatas finitos Un autmata finito (AF) puede ser descrito como una 5-tupla. Existen tres tipos de autmatas finitos Autmata finito determinista (AFD) Cada estado de un autmata de este tipo puede o no tener una transicin por cada smbolo del alfabeto.

Autmata finito no determinista (AFND) Los estados pueden, o no, tener una o ms transiciones por cada smbolo del alfabeto. Si una transicin no est definida, de manera que el autmata no puede saber cmo continuar, la palabra es rechazada.

Los autmatas ms potentes pueden aceptar lenguajes ms complejos, algunos de estos autmatas son: Autmata con pila Son mquinas idnticas a los AFD, con la diferencia que disponen de una memoria adicional, haciendo uso de una pila. Este tipo de autmatas aceptan los lenguajes independientes del contexto. Autmata linealmente acotado: Se trata de una mquina de Turing limitada. Mquina de Turing Son las mquinas computacionales ms potentes. Poseen una memoria infinita en forma de cinta, as como un cabezal que puede leer y cambiar esta cinta, y moverse en cualquier direccin a lo largo de la cinta.

Conclusin
Gracias a las expresiones regulares, se utilizan los motores de bsqueda, ya que son la base de editores de texto, ya que carcter (o smbolo) por carcter realiza la bsqueda que previamente fue solicitada por el usuario. En el caso de la teora de autmatas donde se tuvo conocimientos de los diferentes tipos que existen y la forma en cmo se emplean, se puede decir que son la base para el funcionamiento de las maquinas abstractas, as como el conocer de manera eficaz la forma en que resuelven un problema, debido a que un autmata es un modelo matemtico puede resultar difcil de comprender, aunque una forma sencilla de orientarse a este modelo, es ver el autmata como una entrada de smbolos, sin pensar tanto en todas las matemticas que se estn empleando para la solucin del problema que se busque resolver.

Bibliografa
http://es.wikipedia.org/wiki/Expresi%C3%B3n_regular

http://www.slideshare.net/guestfefd1a4/automatas1

http://es.wikipedia.org/wiki/Teor%C3%ADa_de_aut%C3%B3matas

También podría gustarte