Closed coding-benjito closed 1 year ago
Cool. Thanks @coding-benjito. Will look into this as soon as possible.
Have been able to check out your code.
One thing we should probably discuss is how you envisioned using this, or integrate this with the existing codebase. Ideally, this would allow us to, given a specific tree shape/topology, simplify the coalescent state space graph to that bit of the entire graph that is compatible with such a topology. This could be done for branch types as well as mutation types of course. Could you explain me a bit more how you would use the info gathered by the TreeShapes
object?
I was also wondering whether you checked out this: tskit, and this for the code? Here they've used all integer partitions of the number of leaves to enumerate all (un)labeled topologies. The approach is general in the sense that this allows for polytomies as well. Currently all implemented events create binary trees. However, if we would want to implement the starlike approximation for example, then that would require polytomies.
Closing #1 because of lack of further updates.
Similar to mutations.py, I am trying to establish the equivalence relations within vector k. I do this here, via direct iterative construction of the tree shapes. This is the primary contribution including the outline/idea, and the code still needs to be tested. Small additions are necessary to allow it to feed into the equation-graph paradigm.