<｜begin▁of▁sentence｜>### Instruction:
In our quest to optimize the workflow of our tax consultancy firm, we've modeled our inter-departmental task dependencies as a directed graph in a GML file named "TaskDependencies.gml." The graph's edge set, representing the task precedence, includes the pairs (1, 2), (2, 3), and (3, 1). To streamline our operations and ensure we are not caught in a cycle of dependencies that could lead to inefficiencies, could we employ NetworkX to examine this graph and confirm if we've constructed a system devoid of cyclical dependencies, essentially a directed acyclic graph (DAG)? It is crucial to ascertain this, as identifying any cyclical patterns would be instrumental in restructuring our task roadmap for enhanced productivity and service delivery to our clients.
### Response:
import networkx as nx

# Create a directed graph
G = nx.DiGraph()

# Add edges to the graph
G.add_edge(1, 2)
G.add_edge(2, 3)
G.add_edge(3, 1)

# Check if the graph is a directed acyclic graph (DAG)
is_dag = nx.is_directed_acyclic_graph(G)

print('The graph is a DAG:', is_dag)
<|EOT|>
