$\mathbf{A}^{(|T_{V}|)}_{V}(,I)$.

The simple rule described above is fast to compute but it leads to incorrect allocations because nodes may be mapped a redundant number of times. For example, it is easy to see that implementing the algorithm above, we could define an allocation [**a**]{} where node $V_2$ is allocated to all subtrees of size two; however, $V_2$ should be allocated at most once. This issue can be avoided by noting that internal nodes in [**V**]{} should appear in each [**a**]{} a number of times equal to their number of child nodes minus one, while leaf nodes, say $V' \in {\textbf{V}}{}$, should appear $|V'|-1$ times. Hence, we complete each iteration by eliminating rows of $\mathbf{A}$ where this rule is violated. A second elimination rule is needed to account for the constraints imposed by the sampling time information: rows are eliminated when their assignments involve nodes labeled by a sampling time $s'$ “matched” to subtrees of [**g**]{} that have leaf branches terminating at a different sampling time. Algorithm \[all\] in the Appendix summarizes the above description.

![[]{data-label="allocations"}](allocations-eps-converted-to)

Figure \[allocations\] gives examples of possible allocations of [**T**]{} to two different genealogies [**g**]{} and [**g**]{}’. The second genealogy [**g**]{}’ differs from [**g**]{} by the 