Articulo de referencia

Lenguaje de empalme

En matemáticas y ciencias de la computación teórica, un lenguaje de empalme es un lenguaje formal que formaliza la acción de empalme de genes en biología molecular . Los lenguaj...

En matemáticas y ciencias de la computación teórica, un lenguaje de empalme es un lenguaje formal que formaliza la acción de empalme de genes en biología molecular . Los lenguajes de empalme tienen diversas definiciones basadas en la forma de las reglas de empalme permitidas, que describen cómo se pueden "cortar" y "pegar" cadenas del lenguaje para obtener nuevas cadenas. En todos ellos, dado un lenguaje inicialI{\displaystyle I}sobre un alfabeto finitoΣ{\displaystyle \Sigma }y un conjunto de reglas de empalmeR{\displaystyle R}, un lenguaje de empalme es el lenguaje más pequeño que contieneI{\displaystyle I}que se cierra aplicando cualquier regla de empalmerR{\displaystyle r\in R}.

La definición original de un lenguaje de empalme fue dada por Head en 1987. [ 1 ] Posteriormente, Păun [ 2 ] y Pixton [ 3 ] proporcionaron definiciones alternativas y no equivalentes. La clase de lenguajes generados por el empalme de Head está estrictamente contenida en la de los generados por el empalme de Păun, que a su vez está estrictamente contenida en la de los generados por el empalme de Pixton. [ 4 ]

Definición

La siguiente definición es la de un sistema de empalme Păun, [ 5 ] que es el más común:

DejarΣ{\displaystyle \Sigma }ser un alfabeto finito yIΣ{\displaystyle I\subseteq \Sigma ^{*}}un idioma. Una regla de empalme es una cuádrupler=(1,v1,2,v2)(Σ)4{\displaystyle r=(u_{1},v_{1},u_{2},v_{2})\in (\Sigma ^{*})^{4}}(a menudo escrito)r=(1,v1;2,v2){\ Displaystyle r = (u_ {1}, v_ {1}; u_ {2}, v_ {2})}). Paraw1,w2Σ{\displaystyle w_{1},w_{2}\in \Sigma ^{*}}y una regla de empalmer=(1,v1;2,v2)(Σ)4{\displaystyle r=(u_{1},v_{1};u_{2},v_{2})\in (\Sigma ^{*})^{4}}, escribimos(w1,w2)rz{\displaystyle (w_{1},w_{2})\vdash _{r}z}siw1=incógnita11v1y1{\ Displaystyle w_ {1} = x_ {1} u_ {1} v_ {1} y_ {1}},w2=incógnita22v2y2{\ Displaystyle w_ {2} = x_ {2} u_ {2} v_ {2} y_ {2}}, yz=incógnita11v2y2{\displaystyle z=x_{1}u_{1}v_{2}y_{2}}. SiR{\displaystyle R}es un conjunto de reglas de empalme sobreΣ{\displaystyle \Sigma }, decimos queσ=(Σ,R){\displaystyle \sigma =(\Sigma ,R)}es un esquema H y define la acción deσ{\displaystyle \sigma }enI{\displaystyle I}serσ(I)={zΣ:w1,w2I calle (w1,w2)rz rR}{\displaystyle \sigma (I)=\{z\in \Sigma ^{*}:\exists w_{1},w_{2}\in I{\text{ st }}(w_{1},w_{2})\vdash _{r}z{\text{ }}\forall r\in R\}}Ahora, inductivamente, dejemos queσ0(I)=I{\displaystyle \sigma ^{0}(I)=I}yσi+1(I)=σ(σi(I)){\displaystyle \sigma ^{i+1}(I)=\sigma (\sigma ^{i}(I))}.σ(I)=iZ0+σi(I){\displaystyle \sigma ^{*}(I)=\bigcup _{i\in \mathbb {Z} _{0}^{+}}\sigma ^{i}(I)}es el lenguaje de empalme generado por el sistema HH=(Σ,I,R){\displaystyle H=(\Sigma ,I,R)}. Es decir, el lenguaje más pequeño que contieneI{\displaystyle I}y cerrado bajo solicitudes de cualquierrR{\displaystyle r\in R}.

Un conjunto de reglasR{\displaystyle R}es reflexivo si(1,v1;2,v2)R{\displaystyle (u_{1},v_{1};u_{2},v_{2})\in R}implica que(1,v1;1,v1),(2,v2;2,v2)R{\displaystyle (u_{1},v_{1};u_{1},v_{1}),(u_{2},v_{2};u_{2},v_{2})\in R}Un conjunto de reglas R{\displaystyle R}es simétrico si(1,v1;2,v2)R{\displaystyle (u_{1},v_{1};u_{2},v_{2})\in R}implica que(2,v2;1,v1)R{\displaystyle (u_{2},v_{2};u_{1},v_{1})\in R}. Un lenguaje de empalme se denomina reflexivo (o simétrico) si es generado por un sistema H reflexivo (o simétrico).

Resultados y ejemplos

Un ejemplo contrario de un lenguaje de empalme es(aa){\displaystyle (aa)^{*}}, mientrasb(aa){\displaystyle b(aa)^{*}}es un lenguaje de empalme. De hecho, siL{\displaystyle L}es un lenguaje regular en el alfabetoΣ{\displaystyle \Sigma }, yb{\displaystyle b}es una carta que no estáΣ{\displaystyle \Sigma }, entonces el idiomabL={bw:wL}{\displaystyle bL=\{bw:w\in L\}}es un lenguaje de empalme. [ 6 ]

Todos los lenguajes de empalme generados por un lenguaje inicial finito y un conjunto de reglas finito son regulares . [ 5 ]

Es decidible si un lenguaje regular es o no un lenguaje de empalme [ 7 ] y si es o no reflexivo. [ 8 ] Ambos algoritmos utilizan la decidibilidad de si una regla de empalme respeta o no un lenguaje regular, lo que significa que el lenguaje es cerrado bajo empalme por esa regla.

Cada lenguaje de empalme regular contiene una constante , que es una palabra.doΣ{\displaystyle c\in \Sigma ^{*}}de tal manera que1dov1,2dov2L{\displaystyle u_{1}cv_{1},u_{2}cv_{2}\in L}implica que1dov2,2dov1L{\displaystyle u_{1}cv_{2},u_{2}cv_{1}\in L}para cualquier1,v1,2,v2Σ{\displaystyle u_{1},v_{1},u_{2},v_{2}\in \Sigma ^{*}}. [ 9 ]

b(aa)(aa)b(aa){\displaystyle b(aa)^{*}\cup (aa)^{*}b\cup (aa)^{*}}es un lenguaje de empalme reflexivo que no es simétrico. También es generado por un sistema de empalme finito. [ 10 ]

ababaabaa{\displaystyle a^{*}ba^{*}ba^{*}\cup a^{*}ba^{*}\cup a^{*}}es un lenguaje de empalme generado por un sistema de empalme finito que no es ni reflexivo ni simétrico. [ 10 ]

Referencias

  1. Head, T (1987). "Teoría del lenguaje formal y ADN: Un análisis de la capacidad generativa de comportamientos recombinantes específicos" . Bulletin of Mathematical Biology . 49 (6): 737– 759. doi : 10.1016/S0092-8240(87)90018-8 (inactivo el 9 de octubre de 2025).{{cite journal}}: CS1 maint: DOI inactivo desde octubre de 2025 ( enlace )
  2. Păun, Gheorghe; Rozenberg, Grzegorz; Salomaa, Arto (1996-11-20). "Computing by splicing" . Theoretical Computer Science . 168 (2): 321– 336. doi : 10.1016/S0304-3975(96)00082-5 . ISSN 0304-3975 . 
  3. Pixton, Dennis (13 de agosto de 1996). "Regularidad de los lenguajes de empalme" . Matemáticas Aplicadas Discretas . 69 (1): 101– 124. doi : 10.1016/0166-218X(95)00079-7 . ISSN 0166-218X . 
  4. Bonizzoni, P.; Ferretti, C.; Mauri, G.; Zizza, R. (30 de septiembre de 2001). "Separando algunos modelos de empalme" . Information Processing Letters . 79 (6): 255– 259. doi : 10.1016/S0020-0190(01)00139-9 . ISSN 0020-0190 . 
  5. 1 2 Păun, Gheorghe; Rozenberg, Grzegorz; Salomaa, Arto (1998). Computación del ADN . doi : 10.1007/978-3-662-03563-4 . ISBN 978-3-642-08388-4.
  6. Anderson, James A. (2006). Teoría de autómatas con aplicaciones modernas . Cambridge: Cambridge University Press. doi : 10.1017/cbo9780511607202 . ISBN 978-0-521-84887-9.
  7. Kari, Lila; Kopecki, Steffen (1 de marzo de 2017). "Decidir si un lenguaje regular es generado por un sistema de empalme" . Journal of Computer and System Sciences . 84 : 263–287 . doi : 10.1016/j.jcss.2016.10.001 . ISSN 0022-0000 . 
  8. Head, Tom; Pixton, Dennis; Goode, Elizabeth (2003). "Sistemas de empalme: regularidad y por debajo" . En Hagiya, Masami; Ohuchi, Azuma (eds.). Computación de ADN . Notas de clase en ciencias de la computación. Vol. 2568. Berlín, Heidelberg: Springer. pp. 262–268 . doi : 10.1007/3-540-36440-4_23 . ISBN   978-3-540-36440-5.
  9. Bonizzoni, Paola; Jonoska, Nataša (1 de junio de 2015). " Existencia de constantes en lenguajes de empalme regulares" . Information and Computation . 242 : 340–353 . doi : 10.1016/j.ic.2015.04.001 . ISSN 0890-5401 . PMC 4866503. PMID 27185985 .   
  10. 1 2 Goode, Elizabeth; Pixton, Dennis (2007-04-15). "Reconociendo lenguajes de empalme: monoides sintácticos y bombeo simultáneo" . Matemáticas Aplicadas Discretas . 155 (8): 989– 1006. doi : 10.1016/j.dam.2006.10.006 . ISSN 0166-218X .