astra-uu-se / atlantis

CBLS solver
2 stars 1 forks source link

Feature/better topo sort #139

Closed frejknutarlewander closed 1 year ago

frejknutarlewander commented 1 year ago

In order to speed up enqueueing to the Propagation Queue in input-to-output propagation, variables can share the same topological number (they had distinct topological numbers previously). Since variables that have the same topological numbers do not depend on each other, they can be propagated in any order.

For any element in the Propagation Queue, the subsequent element cannot have a greater priority. This change allows for adding elements earlier in the Propagation Queue, not having to traverse the whole queue.