Cargando…

Two C++ libraries for counting trees on a phylogenetic terrace

MOTIVATION: The presence of terraces in phylogenetic tree space, i.e. a potentially large number of distinct tree topologies that have exactly the same analytical likelihood score, was first described by Sanderson et al. However, popular software tools for maximum likelihood and Bayesian phylogeneti...

Descripción completa

Detalles Bibliográficos
Autores principales: Biczok, R, Bozsoky, P, Eisenmann, P, Ernst, J, Ribizel, T, Scholz, F, Trefzer, A, Weber, F, Hamann, M, Stamatakis, A
Formato: Online Artículo Texto
Lenguaje:English
Publicado: Oxford University Press 2018
Materias:
Acceso en línea:https://www.ncbi.nlm.nih.gov/pmc/articles/PMC6157082/
https://www.ncbi.nlm.nih.gov/pubmed/29746618
http://dx.doi.org/10.1093/bioinformatics/bty384
_version_ 1783358205886201856
author Biczok, R
Bozsoky, P
Eisenmann, P
Ernst, J
Ribizel, T
Scholz, F
Trefzer, A
Weber, F
Hamann, M
Stamatakis, A
author_facet Biczok, R
Bozsoky, P
Eisenmann, P
Ernst, J
Ribizel, T
Scholz, F
Trefzer, A
Weber, F
Hamann, M
Stamatakis, A
author_sort Biczok, R
collection PubMed
description MOTIVATION: The presence of terraces in phylogenetic tree space, i.e. a potentially large number of distinct tree topologies that have exactly the same analytical likelihood score, was first described by Sanderson et al. However, popular software tools for maximum likelihood and Bayesian phylogenetic inference do not yet routinely report, if inferred phylogenies reside on a terrace, or not. We believe, this is due to the lack of an efficient library to (i) determine if a tree resides on a terrace, (ii) calculate how many trees reside on a terrace and (iii) enumerate all trees on a terrace. RESULTS: In our bioinformatics practical that is set up as a programming contest we developed two efficient and independent C++ implementations of the SUPERB algorithm by Constantinescu and Sankoff (1995) for counting and enumerating trees on a terrace. Both implementations yield exactly the same results, are more than one order of magnitude faster, and require one order of magnitude less memory than a previous thirrd party python implementation. AVAILABILITY AND IMPLEMENTATION: The source codes are available under GNU GPL at https://github.com/terraphast. SUPPLEMENTARY INFORMATION: Supplementary data are available at Bioinformatics online.
format Online
Article
Text
id pubmed-6157082
institution National Center for Biotechnology Information
language English
publishDate 2018
publisher Oxford University Press
record_format MEDLINE/PubMed
spelling pubmed-61570822018-10-01 Two C++ libraries for counting trees on a phylogenetic terrace Biczok, R Bozsoky, P Eisenmann, P Ernst, J Ribizel, T Scholz, F Trefzer, A Weber, F Hamann, M Stamatakis, A Bioinformatics Applications Notes MOTIVATION: The presence of terraces in phylogenetic tree space, i.e. a potentially large number of distinct tree topologies that have exactly the same analytical likelihood score, was first described by Sanderson et al. However, popular software tools for maximum likelihood and Bayesian phylogenetic inference do not yet routinely report, if inferred phylogenies reside on a terrace, or not. We believe, this is due to the lack of an efficient library to (i) determine if a tree resides on a terrace, (ii) calculate how many trees reside on a terrace and (iii) enumerate all trees on a terrace. RESULTS: In our bioinformatics practical that is set up as a programming contest we developed two efficient and independent C++ implementations of the SUPERB algorithm by Constantinescu and Sankoff (1995) for counting and enumerating trees on a terrace. Both implementations yield exactly the same results, are more than one order of magnitude faster, and require one order of magnitude less memory than a previous thirrd party python implementation. AVAILABILITY AND IMPLEMENTATION: The source codes are available under GNU GPL at https://github.com/terraphast. SUPPLEMENTARY INFORMATION: Supplementary data are available at Bioinformatics online. Oxford University Press 2018-10-01 2018-05-08 /pmc/articles/PMC6157082/ /pubmed/29746618 http://dx.doi.org/10.1093/bioinformatics/bty384 Text en © The Author(s) 2018. Published by Oxford University Press. http://creativecommons.org/licenses/by-nc/4.0/ This is an Open Access article distributed under the terms of the Creative Commons Attribution Non-Commercial License (http://creativecommons.org/licenses/by-nc/4.0/), which permits non-commercial re-use, distribution, and reproduction in any medium, provided the original work is properly cited. For commercial re-use, please contact journals.permissions@oup.com
spellingShingle Applications Notes
Biczok, R
Bozsoky, P
Eisenmann, P
Ernst, J
Ribizel, T
Scholz, F
Trefzer, A
Weber, F
Hamann, M
Stamatakis, A
Two C++ libraries for counting trees on a phylogenetic terrace
title Two C++ libraries for counting trees on a phylogenetic terrace
title_full Two C++ libraries for counting trees on a phylogenetic terrace
title_fullStr Two C++ libraries for counting trees on a phylogenetic terrace
title_full_unstemmed Two C++ libraries for counting trees on a phylogenetic terrace
title_short Two C++ libraries for counting trees on a phylogenetic terrace
title_sort two c++ libraries for counting trees on a phylogenetic terrace
topic Applications Notes
url https://www.ncbi.nlm.nih.gov/pmc/articles/PMC6157082/
https://www.ncbi.nlm.nih.gov/pubmed/29746618
http://dx.doi.org/10.1093/bioinformatics/bty384
work_keys_str_mv AT biczokr twoclibrariesforcountingtreesonaphylogeneticterrace
AT bozsokyp twoclibrariesforcountingtreesonaphylogeneticterrace
AT eisenmannp twoclibrariesforcountingtreesonaphylogeneticterrace
AT ernstj twoclibrariesforcountingtreesonaphylogeneticterrace
AT ribizelt twoclibrariesforcountingtreesonaphylogeneticterrace
AT scholzf twoclibrariesforcountingtreesonaphylogeneticterrace
AT trefzera twoclibrariesforcountingtreesonaphylogeneticterrace
AT weberf twoclibrariesforcountingtreesonaphylogeneticterrace
AT hamannm twoclibrariesforcountingtreesonaphylogeneticterrace
AT stamatakisa twoclibrariesforcountingtreesonaphylogeneticterrace