Is the DAG a transitive reduction?
Ruby, 101 97 bytes
Simple approach that calculates the reach from each node and considers if a child node can be reached via any of the other nodes. Seemingly fails on cyclic graphs, but the definition of a DAG implies that it shouldn't be cyclic anyways.
Try it online!
-&gt;g{r=-&gt;i{i|i.map{|j|r[g[j]||[]]}.inject([],:|)}
g.all?{|e|e==e&amp;e&amp;&amp;e.none?{|i|r[e-[i]].index i}}}