A Directed Acyclic Graph, DAG, is a set of nodes and directed edges with no cycles. Follow edges forward and you never return. Git commit history is a DAG. Make and Bazel model build tasks as DAGs so jobs run only after dependencies finish. No cycles means no deadlock in the scheduler.
Some ledgers, IOTA and Hedera Hashgraph, use DAGs instead of a single chain so many transactions confirm in parallel. ML pipelines use DAGs so each transform gets the right input. The acyclic rule makes dependency order easy to reason about. DAGs are core in computer science. Git uses a DAG to represent commit history, where each commit points to its parent.
Build tools like Make and Bazel use DAGs to model task dependencies, launching jobs only after their prerequisites complete. Because there are no cycles, the scheduler can guarantee that no job waits forever. In blockchain, some networks (like IOTA and Hedera Hashgraph) use DAGs instead of linear chains, allowing multiple transactions to be processed in parallel rather than sequentially.
Some ledgers (IOTA's Tangle, Kaspa) order messages in a DAG instead of a single chain so more blocks can confirm in parallel.
Directed Acyclic Graph (DAG)
A graph structure where transactions confirm each other without blocks.