Use this if you are using igraph from R
This function tests whether the given graph is a DAG, a directed acyclic graph.
is_dag(graph)
graph 
The input graph. It may be undirected, in which case

is_dag
checks whether there is a directed cycle in the graph. If not,
the graph is a DAG.
A logical vector of length one.
Tamas Nepusz ntamas@gmail.com for the C code, Gabor Csardi csardi.gabor@gmail.com for the R interface.
g < make_tree(10) is_dag(g) g2 < g + edge(5,1) is_dag(g2)