Jump to content

Splicing language

From Wikipedia, the free encyclopedia

In mathematics and theoretical computer science, a splicing language is a formal language which formalizes the action of gene splicing in molecular biology. Splicing languages have a variety of definitions based on the form of splicing rules allowed, which describe how one may "cut" and "paste together" strings from the language to obtain new strings. In all of them, given an initial language over a finite alphabet and a set of splicing rules , a splicing language is the smallest language containing which is closed under applying any splicing rule .

The original definition of a splicing language was given by Head in 1987.[1] Later on, alternative and inequivalent definitions were provided by Păun[2] and Pixton.[3] The class of languages generated by Head splicing is strictly contained in that of those generated by Păun splicing, which is in turn strictly contained in that of those generated by Pixton splicing.[4]

Definition

[edit]

The following definition is that of a Păun splicing system,[5] which is most common:

Let be a finite alphabet and a language. A splicing rule is a quadruple (often written ). For and a splicing rule , we write if , , and . If is a set of splicing rules over , we say that is an H-scheme and define the action of on to be . Now, inductively, let and . is the splicing language generated by the H-system . That is, the smallest language containing and closed under applications of any .

A rule set is reflexive if implies that . A rule set is symmetric if implies that . A splicing language is called reflexive (resp. symmetric) if it is generated by a reflexive (resp. symmetric) H-system.

Results and Examples

[edit]

A non-example of a splicing language is , whereas is a splicing language. In fact, if is a regular language on the alphabet , and is a letter not in , then the language is a splicing language.[6]

All splicing languages generated by a finite initial language and finite rule set are regular.[5]

It is decidable whether or not a regular language is a splicing language[7] and whether or not it is reflexive.[8] Both algorithms make use of the decidability of whether or not a splicing rule respects a regular language, meaning that the language is closed under splicing by that rule.

Every regular splicing language contains a constant, which is a word such that implies that for any .[9]

References

[edit]
  1. ^ Head, T (1987). "Formal language theory and DNA: An analysis of the generative capacity of specific recombinant behaviors". Bulletin of Mathematical Biology. 49 (6): 737–759. doi:10.1016/S0092-8240(87)90018-8.
  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 (1996-08-13). "Regularity of splicing languages". Discrete Applied Mathematics. 69 (1): 101–124. doi:10.1016/0166-218X(95)00079-7. ISSN 0166-218X.
  4. ^ Bonizzoni, P.; Ferretti, C.; Mauri, G.; Zizza, R. (2001-09-30). "Separating some splicing models". Information Processing Letters. 79 (6): 255–259. doi:10.1016/S0020-0190(01)00139-9. ISSN 0020-0190.
  5. ^ a b Păun, Gheorghe; Rozenberg, Grzegorz; Salomaa, Arto (1998). "DNA Computing". SpringerLink. doi:10.1007/978-3-662-03563-4.
  6. ^ Anderson, James A. (2006). Automata Theory with Modern Applications. Cambridge: Cambridge University Press. doi:10.1017/cbo9780511607202. ISBN 978-0-521-84887-9.
  7. ^ Kari, Lila; Kopecki, Steffen (2017-03-01). "Deciding whether a regular language is generated by a splicing system". 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). Hagiya, Masami; Ohuchi, Azuma (eds.). "Splicing Systems: Regularity and Below". DNA Computing. Berlin, Heidelberg: Springer: 262–268. doi:10.1007/3-540-36440-4_23. ISBN 978-3-540-36440-5.
  9. ^ Bonizzoni, Paola; Jonoska, Nataša (2015-06-01). "Existence of constants in regular splicing languages". Information and Computation. 242: 340–353. doi:10.1016/j.ic.2015.04.001. ISSN 0890-5401. PMC 4866503. PMID 27185985.