el

l este artículo está sobre el lenguaje formal del término como se utiliza en matemáticas, lógica y de informática. Para el formalismo de la gramática para las idiomas naturales, ver el marco de la gramática. Para la información sobre un modo de expresión que sea disciplinada o precise que discurso diario, ver el colocar (lingüística) .

Un lenguaje formal es un organizado determinado de los símbolos la característica esencial cuyo es que puede se define exacto en términos de apenas formas y localizaciones de esos símbolos. Tal lengua se puede definir, entonces, sin ninguna referencia a cualquier significado de cualesquiera de sus expresiones; puede existir antes de que cualquier interpretación se asigne ella --es decir, antes de ella tiene cualquier significado. Es una herramienta en el campo de la lógica . En las matemáticas, y el de informática, un lenguaje formal es definido por fórmulas procesables matemáticas o de la máquina exactas.

Como idiomas en lingüística, los lenguajes formales tienen generalmente dos aspectos: sintaxis y semántica. El sintaxis de una lengua es lo que parece la lengua. Es definido por el sistema de las expresiones posibles que son elocuciones válidas en la lengua. La semántica de una lengua es lo que significan las elocuciones de la lengua. Esto se formaliza de varias maneras, dependiendo del tipo de lengua en la pregunta.

El la rama de las matemáticas y de informática que los estudios la teoría del sintaxis de la lengua se conocen exclusivamente como teoría del lenguaje formal. En teoría del lenguaje formal, una lengua no está nada más que su sintaxis; las cuestiones de la semántica no se tratan en esta especialidad.

Ejemplo elemental

En matemáticas, un lenguaje formal consiste en dos porciones, un alfabeto del y reglas del sintaxis del . El alfabeto del se fija de símbolos; las reglas del sintaxis del definen qué secuencias (encadenamientos de los elementos del alfabeto) se consideran parte del lenguaje formal.

Como ejemplo simple, considerar el alfabeto { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 del, +, = } junto con las reglas siguientes del sintaxis del :

cada cadena no vacía que no contenga el + o el = y no comience con el 0 está en la lengua.
El " de la secuencia; 0" está en la lengua.
Una secuencia que contiene el = es en la lengua si y solamente si hay exactamente un =, y separa dos secuencias en la lengua.
Una secuencia que contiene el + es en la lengua si y solamente si cada + en la secuencia separa dos secuencias válidas en la lengua.
No hay secuencia en la lengua con excepción de ésos implicados por las reglas anteriores.

Bajo estas reglas, el " de la secuencia; 23+4=555" está en la lengua, el " de la secuencia; =234=+" no es. Este lenguaje formal expresa números enteros, declaraciones bien formadas de la adición, e igualdades bien formadas de la adición, pero expresa solamente qué parecen (su sintaxis ), no qué él significa (la semántica ). Por ejemplo, en ninguna parte en estas reglas está definió que el 0 significa el número cero, o que + significa la adición.

El resto de este artículo se dedica a las nociones básicas de la teoría del lenguaje formal.

Ejemplos avanzados

Como ejemplo de un lenguaje formal, un alfabeto pudo ser \ se fue \ {a, b \ derecho \} , y una secuencia sobre ese alfabeto pudo ser ababba \, .

Una lengua típica sobre ese alfabeto, conteniendo esa secuencia, sería el sistema de todas las secuencias que contienen el mismo número de a de los símbolos \, de y de b \, de .

La palabra vacía (es decir, secuencia del de la longitud-cero) es permitida y denotada a menudo por el e \, , \ épsilon \, o el \ lambda \, . Mientras que el alfabeto es un sistema finito y cada secuencia tiene longitud finita, una lengua puede muy bien tener infinitamente muchas secuencias del miembro (porque la longitud de las palabras que pertenecen a ella puede ser ilimitada).

Más ejemplos:

sistema de todo el palabra sobre {a,} \, de b
el del sistema \ ido \ {a^ {n} \ derecho \} , donde está un número natural y a^n \, significa a \, n el n \, repetido \, tiempos de
Finito lengua, por ejemplo \ {a, b, ab, cba \} \, o \ {CA, aca, bba \} \,
el sistema de programas sintácticamente correctos en un lenguaje de programación dado; o
el sistema de las entradas sobre las cuales cierta máquina de Turing para; o,
el sistema de las cadenas más largas de carácteres alfanuméricos ASCII en esta línea, (es decir, el sistema {, fijar, de, el más largo, secuencias, alfanumérico, ASCII, carácteres, encendido, éste, línea, i, e})
el sistema de todas las secuencias que pertenecen a las idiomas demostrable indefinibles por la teoría del lenguaje formal

Formalismos de la especificación de la lengua

La teoría del lenguaje formal se refiere raramente a idiomas particulares (excepto como ejemplos), pero se trata principalmente al estudio de varios tipos de formalismos para describir idiomas. Por ejemplo, una lengua se puede dar como
El sistema de las secuencias que se pueden generar por una cierta gramática (véase la jerarquía de Chomsky);
El sistema de secuencias descritas o emparejadas por una expresión regular particular;
El sistema de secuencias aceptadas por un poco de autómata, tal como una máquina de Turing o autómata finito del estado;
El sistema de las secuencias para las cuales un cierto procedimiento (un algoritmo de la decisión que pide una secuencia de preguntas SÍ/NO relacionadas) produce la respuesta SÍ.

Las preguntas típicas preguntaron por tales formalismos incluyen:
¿

cuál es su energía expresiva? ¿(Puede el formalismo X describir cada lengua que el formalismo Y pueda describir? Puede describir otras idiomas?)
¿Cuál es su recognizability? (Cómo es difícil es para decidir a si una palabra dada pertenece a una lengua descrita por el formalismo X?)
¿Cuál es su comparabilidad? (Cómo es difícil es para decidir a si dos idiomas, una descrita en el formalismo X y uno en el formalismo Y, o en X otra vez, son realmente la misma lengua?).

Asombrosamente a menudo, la respuesta a estos problemas de decisión es " no puede ser hecha en el all", o " es extremadamente expensive" (con una caracterización exacta de cómo es costoso exactamente). Por lo tanto, la teoría del lenguaje formal es un área de aplicación importante de la teoría del computability y de la teoría de complejidad .

Operaciones en idiomas

Ciertas operaciones en idiomas son comunes. Esto incluye las operaciones determinadas estándar, tales como unión, intersección, y complementación. Otra clase de operación es el uso del elementwise de las operaciones de la secuencia.

Ejemplos: suponer que el _ del {L} {1} _ de y del {L} {2} es idiomas sobre un cierto alfabeto común.
encadenamiento {L} _ {1} _ {L} {2} \, consiste en todo el secuencia de forma vw \, donde v \, está secuencia de {L} _ {1} \, y w \, es secuencia de {L} _ {2} \, .
intersección el {L} _1 \ el casquillo {L} _2 de el {L} el _ {1} \, y el {L} _ {2} \, consiste en todas las secuencias que se contengan en ambas idiomas
El del complemento del \ el neg L de una lengua w. un alfabeto dado consiste en todas las secuencias sobre el alfabeto que no estén en la lengua.

Tales operaciones se utilizan para investigar las características de encierro de clases de idiomas. Una clase de idiomas es cerrado debajo de una operación particular cuando la operación, aplicada a las idiomas en la clase, produce siempre una lengua en la misma clase otra vez. Por ejemplo, las idiomas sin contexto se saben para ser cerradas bajo la unión, el encadenamiento, e intersección con las idiomas regulares pero para no ser cerradas bajo la intersección o complementación.

Otras operaciones en idiomas

Algunas otras operaciones usadas con frecuencia en el estudio de lenguajes formales son las siguientes:
La estrella de Kleene.
Revocación del : Dejar e ser la palabra vacía, entonces e^R=e, y
para cada palabra no vacía w=x_1… x_n sobre un cierto alfabeto, dejar el w^R = el x_n… x_1,
entonces para un lenguaje formal L, L^R= \ {w^R|w \ en L \} .
Homomorfismo y homomorfismo E-libre .

  • Zenithic
  • Mungo National Park
    Random links:Osiris | Tenenit | Mujahedin de la gente de Irán | Universidad del este de Illinois | IBM 729

  • © 2007-2008 enciclopediaespana.com; article text available under the terms of GFDL, from en.wikipedia.org
    ="http://pagead2.googlesyndication.com/pagead/show_ads.js">