title: Effective ambiguity checking in biosequence analysis.
abstract: BACKGROUND
  Ambiguity is a problem in biosequence analysis that arises in various analysis tasks solved via dynamic programming, and in particular, in the modeling of families of RNA secondary structures with stochastic context free grammars. Several types of analysis are invalidated by the presence of ambiguity. As this problem inherits undecidability (as we show here) from the namely problem for context free languages, there is no complete algorithmic solution to the problem of ambiguity checking.
  
  
  RESULTS
  We explain frequently observed sources of ambiguity, and show how to avoid them. We suggest four testing procedures that may help to detect ambiguity when present, including a just-in-time test that permits to work safely with a potentially ambiguous grammar. We introduce, for the special case of stochastic context free grammars and RNA structure modeling, an automated partial procedure for proving non-ambiguity. It is used to demonstrate non-ambiguity for several relevant grammars.
  
  
  CONCLUSIONS
  Our mechanical proof procedure and our testing methods provide a powerful arsenal of methods to ensure non-ambiguity.
authors.affiliation: InternationaI NRW Graduate School of Bioinformatics and Genome Research, Center of Biotechnology (CeBiTec), Bielefeld University, Postfach 10 01 31, 33501 Bielefeld, Germany. janina@techfak.uni-bielefeld.de
authors.forename: Janina
authors.initials: J
authors.lastname: Reeder
authors.forename: Peter
authors.initials: P
authors.lastname: Steffen
authors.forename: Robert
authors.initials: R
authors.lastname: Giegerich
mesh_terms: D000465:Algorithms; D007802:Language; D008958:Models, Molecular; D015233:Models, Statistical; D017433:Protein Structure, Secondary; D012313:RNA / Q000737:chemistry; D012660:Semantics; D020539:Sequence Analysis, Protein / Q000379:methods*
chemical_list: D012313:RNA