id,summary,reporter,owner,description,type,status,milestone,component,version,severity,resolution,keywords,cc 8433,Algorithm for finding all the elementary circuits in a directed (multi)graph,Louis Dionne,Jeremiah Willcock,"I have implemented the algorithm described in (1) for finding all the elementary circuits of a directed (multi)graph. I implemented it in a generic fashion, planning to propose it for inclusion in Boost. Boost.Graph currently contains the `tiernan_all_cycles` algorithm for finding all the cycles in a graph. However, it is undocumented and it has a time bound (for which no precise analysis is provided) that makes it unsuitable even for moderately sized graphs. In fact, I implemented `hawick_circuits` because `tiernan_all_cycles` did not cut it for my application. My implementation is available at (2). It is licensed under the Boost license and was tested using the test suite at (3). More information on the test suite can be found at (4). Comments on improvements would be appreciated. (1) http://www.massey.ac.nz/~kahawick/cstn/013/cstn-013.pdf (2) https://github.com/ldionne/hawick_circuits (3) https://github.com/josch/cycle_test (4) http://blog.mister-muffin.de/2012/07/04/enumerating-elementary-circuits-of-a-directed_graph/ ",Feature Requests,reopened,To Be Determined,graph,Boost 1.53.0,Not Applicable,,graph multigraph circuit cycle hawick,