title: Enumerating All Minimal Directed Cycles Of A Directed Graph
body: <p>I have a directed graph and my problem is to enumerate all the <strong>minimal</strong> (cycles that cannot be constructed as the union of other cycles) directed cycles of this graph. This is different from what the Tarjan algorithm outputs. For instance, for the directed graph at <a href="http://en.wikipedia.org/wiki/Strongly_connected_component" rel="nofollow noreferrer">this wikipedia page</a>, I would like to get c &lt;-> d and d &lt;-> h as two separated directed cycles.</p>
  
  <p>I don't if this problem is polynomial or not. I ran over a paper "Enumerating Minimal Dicuts and Strongly Connected Subgraphs" that seems to conclude that this problem is incremental polynomial (I don't know what it means), but I am unable to extract an algorithm for this article. I am also not sure if a minimal strongly connected component is equivalent to a minimal cycle as I define it.</p>
  
  <p>Does someone knows the answer to this problem?</p>
  
  <p>Thanks in advance!!!</p>