Counts how many quartets are resolved or unresolved in a given tree, following Brodal et al. (2013).

ResolvedQuartets(tree, countTriplets = FALSE)

ResolvedTriplets(tree)

## Arguments

tree

A tree of class phylo.

countTriplets

Logical; if TRUE, the function will return the number of triplets instead of the number of quartets.

## Value

ResolvedQuartets() returns a vector of length two, listing the number of quartets (or triplets) that are [1] resolved; [2] unresolved in the specified tree.

## Details

Trees with more than 477 leaves risk encountering integer overflow errors, as the number of quartets is larger than can be stored in R's signed 32-bit integer representation. If warnings are thrown, check subsequent calculations for errors.

## Functions

• ResolvedTriplets(): Convenience function to calculate the number of resolved/unresolved triplets.

## References

• Brodal GS, Fagerberg R, Mailund T, Pedersen CNS, Sand A (2013). “Efficient algorithms for computing the triplet and quartet distance between trees of arbitrary degree.” SODA '13 Proceedings of the Twenty-Fourth Annual ACM-SIAM Symposium on Discrete Algorithms, 1814--1832. doi:10.1137/1.9781611973105.130 .

Other quartet counting functions: AllQuartets(), CompareQuartetsMulti(), CompareQuartets()

## Examples

data(sq_trees)

ResolvedTriplets(sq_trees$collapse_some) #> [1] 144 21 # Equivalent to: ResolvedQuartets(sq_trees$collapse_some, countTriplets = TRUE)
#> [1] 144  21

vapply(sq_trees, ResolvedQuartets, integer(2))
#>      ref_tree move_one_near move_one_mid move_one_far move_two_near
#> [1,]      330           330          330          330           330
#> [2,]        0             0            0            0             0
#>      move_two_mid move_two_far collapse_one collapse_some m1mid_col1
#> [1,]          330          330          322           207        322
#> [2,]            0            0            8           123          8
#>      m1mid_colsome m2mid_col1 m2mid_colsome opposite_tree caterpillar
#> [1,]           265        322           125           330         330
#> [2,]            65          8           205             0           0
#>      top_and_tail anti_pectinate random_tree
#> [1,]          330            330         330
#> [2,]            0              0           0