Reformularé esta pregunta por razones obvias en mi respuesta: ¿Cómo pueden las dos afirmaciones siguientes ser verdaderas simultáneamente?
- L (∅ *) = {ε}
- L (∅ A) = ∅
La operación Kleene-star aplicada al lenguaje vacío efectivamente produce el lenguaje de cadena vacío como se afirma en 1 (arriba), pero no por las razones proporcionadas hasta ahora en las explicaciones de otros encuestados. Además, la concatenación del lenguaje vacío con cualquier lenguaje arbitrario A produce el lenguaje vacío, como se afirma en 2 (arriba). Mis comentarios intentan aclarar la terminología y los conceptos involucrados. Aquí hay una pista: el elemento clave de la explicación se refiere a la unión de idiomas, no a la concatenación de cadenas.
Repasemos alguna teoría de conjuntos. Esta rama de las matemáticas formaliza una organización lógica para las declaraciones sobre objetos. La teoría de conjuntos proporciona un número infinito de conjuntos. Un conjunto puede tener ninguno, uno o muchos elementos (únicos). El conjunto sin elementos es el conjunto vacío: existe exactamente uno de estos conjuntos. Un conjunto con un elemento es un singleton, hay infinitos singletons. Del mismo modo, existen infinitos conjuntos con más de un elemento.
- Si [math] z [/ math] es un número complejo, entonces, ¿cuál es el lugar geométrico de [math] z [/ math] tal que [math] z ^ 2-6z = iz- | z - [/ math] [math ] 1 | [/ matemáticas]?
- ¿A qué es igual [math] \ sqrt {x ^ 2} [/ math]?
- ¿Existe una ecuación matemática para representar la teoría de la evolución por selección natural?
- Para un no ingeniero / matemático, ¿cómo puede explicar cuál es la utilidad de la dinámica y el caos?
- ¿Cuál es la mejor opción en una calculadora gráfica?
Repasemos algo de teoría de autómatas. El teorema de Kleene establece una correlación fundamental entre expresiones regulares, autómatas e idiomas. Una expresión regular particular se puede compilar en un autómata que codifica o acepta un conjunto particular de cadenas (donde una cadena es una secuencia de símbolos), también conocida como lenguaje. Cada cadena aceptada por un autómata es un miembro del conjunto de cadenas que constituye el lenguaje de ese autómata.
Ahora distingamos entre el conjunto vacío, el idioma vacío y la cadena vacía. Así como el conjunto vacío no tiene miembros, el idioma vacío no contiene cadenas. Además, el idioma vacío es distinto de la cadena vacía (significada como ε), que contiene cero símbolos. Tanto el conjunto vacío como el lenguaje vacío se representan convencionalmente como ∅.
El autómata para ∅ contiene un estado no final y no hay transiciones. Por lo tanto, no acepta condiciones. El lenguaje de cadena vacío no es un conjunto vacío ya que contiene un elemento, que es ε. Su autómata consta de un estado final y ninguna transición.
La operación de concatenación es conmutativa, por lo que L (∅ A) = L (A ∅). En la teoría de autómatas, es axiomático que la concatenación de un lenguaje vacío siempre produce el lenguaje vacío, validando así la declaración 2 (arriba).
Hay dos operadores de iteración de Kleene en la teoría de autómatas. Kleene-plus (A + anotado para el lenguaje A) denota la concatenación de A consigo mismo una o más veces. Kleene-star (A * anotado para el lenguaje A) denota la unión de A + con el lenguaje de cadena vacío.
Esta información de antecedentes aclara la pregunta en cuestión. La operación Kleene-star aplicada a otes denota la unión de A + con el lenguaje de cadena vacío. Dado que A + en este caso denota la concatenación de sin cadenas una o más veces, esta operación produce ∅. Finalmente, la unión de este producto with con el lenguaje de cadena vacío produce solo un elemento, la cadena vacía. Por lo tanto, ∅ * produce el lenguaje de cadena vacío como se afirma en 1 (arriba), y la concatenación del idioma vacío con un lenguaje arbitrario produce el lenguaje vacío como se afirma en 2 (arriba). QED