       Re: Graph cycles in Mathematica 8

• To: mathgroup at smc.vnet.net
• Subject: [mg115952] Re: Graph cycles in Mathematica 8
• From: "Sjoerd C. de Vries" <sjoerd.c.devries at gmail.com>
• Date: Thu, 27 Jan 2011 03:40:32 -0500 (EST)
• References: <ihorn7\$hkj\$1@smc.vnet.net>

```Hi Guillermo,

There are two cycle functions in Mathematica 8:

FindEulerianCycle: find a cycle that traverses every edge exactly once
FindHamiltonianCycle: find a cycle that traverses every vertex exactly
once

but these are probably not the ones you were refering to.

A workaround would indeed be to convert the graph to a Combinatorica
graph:

<< Combinatorica`

myM8Graph =  System`Graph[{1 \[UndirectedEdge] 2, 2 \[UndirectedEdge]
3,
3 \[UndirectedEdge] 1, 3 \[UndirectedEdge] 4,
4 \[UndirectedEdge] 4}]

(* I add the system context as the M8 Graph is shadowed by the
Combinatorica function of the same name *)

myCombinatoricaGraph =

is from M8; Normal is used because FromAdjacencyMatrix doesn't seem to
dig SparseArrays *)

ShowGraph[myCombinatoricaGraph]

FindCycle[myCombinatoricaGraph]

==> {4, 4}

Hope this helps.

Cheers -- Sjoerd

On Jan 26, 11:06 am, abramson <g.abram... at gmail.com> wrote:
> Hi. The functions FindCycle, ExtractCycle, etc, from the Combinatorica
> package, do not work with the new Graphs implemented in Mathematica 8.
> Is anybody aware of similar functions to find cycles of the new Graph
> objects, or else a way to convert them to objects that FindCycle could