Documente Academic
Documente Profesional
Documente Cultură
Lenguaje formal
En matemticas, lgica, y ciencias de la computacin, un lenguaje formal es un lenguaje cuyos smbolos primitivos y reglas para unir esos smbolos estn formalmente especificados. Al conjunto de los smbolos primitivos se le llama el alfabeto (o vocabulario) del lenguaje, y al conjunto de las reglas se lo llama la gramtica formal (o sintaxis). A una cadena de smbolos formada de acuerdo a la gramtica se la llama una frmula bien formada (o palabra) del lenguaje. Estrictamente hablando, un lenguaje formal es idntico al conjunto de todas sus frmulas bien formadas. A diferencia de lo que ocurre con el alfabeto (que debe ser un conjunto finito) y con cada frmula bien formada (que debe tener una longitud tambin finita), un lenguaje formal puede estar compuesto por un nmero infinito de frmulas bien formadas. Por ejemplo, un alfabeto podra ser el conjunto {a,b}, y una gramtica podra definir a las frmulas bien formadas como aquellas que tienen el mismo nmero de smbolos a que b. Entonces, algunas frmulas bien formadas del lenguaje seran: ab, ba, abab, ababba, etc.; y el lenguaje formal sera el conjunto de todas esas frmulas bien formadas.
Esta imagen muestra la relacin entre las cadenas de caracteres, las frmulas bien formadas y los teoremas. En algunos sistemas formales, sin embargo, el conjunto de los teoremas coincide con el de las frmulas bien formadas.
Para algunos lenguajes formales existe una semntica formal que puede interpretar y dar significado a las frmulas bien formadas del lenguaje. Sin embargo, una semntica formal no es condicin necesaria para definir un lenguaje formal, y eso es una diferencia esencial con los lenguajes naturales. En algunos lenguajes formales, la palabra vaca (esto es, la cadena de smbolos de longitud cero) est permitida, notndose frecuentemente mediante , o .
Operaciones
Se pueden utilizar varias operaciones para producir nuevos lenguajes a partir de otros dados. Supngase que L1 y L2 son lenguajes sobre un alfabeto comn. Entonces: La concatenacin L1L2 consiste de todas aquellas palabras de la forma vw donde v es una palabra de L1 y w es una palabra de L2 La interseccin L1&L2 consiste en todas aquellas palabras que estn contenidas tanto en L1 como en L2 La unin L1|L2 consiste en todas aquellas palabras que estn contenidas ya sea en L1 o en L2 El complemento ~L1 consiste en todas aquellas palabras producibles sobre el alfabeto de L1 que no estn ya contenidas en L1 El cociente L1/L2 consiste de todas aquellas palabras v para las cuales existe una palabra w en L2 tales que vw se encuentra en L1 La estrella L1* consiste de todas aquellas palabras que pueden ser escritas de la forma W1W2...Wn donde todo Wi se encuentra en L1 y n 0. (Ntese que esta definicin incluye a en cualquier L*) La intercalacin L1*L2 consiste de todas aquellas palabras que pueden ser escritas de la forma v1w1v2w2...vnwn; son palabras tales que la concatenacin v1...vn est en L1, y la concatenacin w1...wn est en L2 Una pregunta que se hace tpicamente sobre un determinado lenguaje formal L es cun difcil es decidir si incluye o no una determinada palabra v. Este tema es del dominio de la teora de la computabilidad y la teora de la complejidad computacional. Por contraposicin al lenguaje propio de los seres vivos y en especial el lenguaje humano, considerados lenguajes naturales, se denomina lenguaje formal a los lenguajes artificiales propios de las matemticas o la informtica, los lenguajes artificiales son llamados lenguajes formales (incluyendo lenguajes de programacin). Sin embargo, el lenguaje humano tiene una caracterstica que no se encuentra en los lenguajes de programacin: la diversidad. En 1956, Noam Chomsky cre la jerarqua de Chomsky para organizar los distintos tipos de lenguaje formal.
infinito (contable o incontable), entonces incontable, la prueba ha finalizado. Demostracin del Teorema 1
Puede derivarse fcilmente que la aseveracin delineada en el Teorema 1 es verdadera, porque el conjunto de lenguajes en general es justamente una unin infinita de conjuntos del tipo , donde es un conjunto infinito contable.
Lenguaje formal Teorema 2 Los lenguajes son conjuntos contables. Se sabe que un lenguaje infinito contable, por ende, prueba ha culminado. Teorema 3 El conjunto de lenguajes formales es contable. Como sabemos un lenguaje formal puede ser generado por una gramtica formal (o de estructura de frase), lo cual implica que todo lenguaje formal puede ser aceptado por una MT, lo que a su vez implica que se puede definir una biyeccin entre el conjunto de lenguajes formales y el conjunto de las MTs (debido a la propiedad transitiva de la relacin "existe biyeccin entre y "). Para demostrar el teorema se utilizar el concepto de codificacin de MTs que se introduce en el estudio de las MTs universales, generalmente se codifica una MT con una funcin que tiene precisamente como dominio al conjunto de las MTs (lo llamaremos )y como codominio de ) y como e biyeccin (entre , esa funcin puede ser una biyeccin si el codominio pasa a ser Y (un subconjunto es contable, ese subconjunto tambin ser contable y como existe dicha ), la asercin ha sido demostrada, prueba concluida. en un alfabeto es un subconjunto de y como ya se hizo mencin, es ), la es como mucho un conjunto infinito contable (del mismo tamao que
Licencia
Creative Commons Attribution-Share Alike 3.0 //creativecommons.org/licenses/by-sa/3.0/