If you're interested in the mathematics underpinning parallel models of computing, and their relation to dependency graphs, I recommend looking at 'trace theory'. It's built on the abstract algebra of trace monoids.
Trace theory seems to have fallen out of academic fashion. I have a feeling it may have a resurgence of interest in coming decades, as it is useful for analysing concurrent systems.
I am a happy user of differential dataflow (DD), which has been great for simplifying an app that I care about.
The app in question already includes a form of the connected components computation Frank is describing improvements to in this post so I’m excited to see whether these ideas help make things work even better.
It's nice to see Rust being used successfully for some fairly high-level, research-like problems. The whole blog series is quite interesting (you can find the older posts in the readme file for the repo, or more conveniently in the "posts" folder, listed by date).
Trace theory seems to have fallen out of academic fashion. I have a feeling it may have a resurgence of interest in coming decades, as it is useful for analysing concurrent systems.