From: Murray Eisenberg on
Of course the original graph-like object was a list of rules and not a
Combinatorica-type object with head Graph. To get back to the original
lit-of-rules object, one can use the following function (I believe this
was posted some time ago to MathGroup, but at the moment I forget its
author):

RuleListFromGraph[Graph[edges_, vertices_, ___]] :=
Module[{vrules},
vrules = DeleteCases[
Thread[Range[
Length[vertices]] -> (VertexLabel /.
vertices[[All, 2 ;;]])], _ -> VertexLabel];
Replace[
Transpose[{Rule @@@ (edges[[All, 1]] /. vrules),
EdgeLabel /. edges[[All, 2 ;;]]}], {a_, EdgeLabel} -> a, {1}]]

In the example in the post below, one obtains:

RuleListFromGraph[gr1u]
{1->2,1->3,1->4,2->3,2->4,4->4}

Comment: I really wish WRI would at very long last completely
rationalize the dichotomy between the newer kernel functions for dealing
with lists-of-rules as graphs, on the one hand, and Combinatorica
Graph-objects, on the other hand.

On 7/23/2010 7:09 AM, juan flores wrote:
> Needs["Combinatorica`"];
> Needs["GraphUtilities`"];
> gr1 =
> ToCombinatoricaGraph[{1 -> 2, 2 -> 1, 3 -> 1, 3 -> 2, 4 -> 1, 4 -> 2,
> 4 -> 4}]
> ShowGraph[gr1]
> gr1u = MakeUndirected[gr1]
> ShowGraph[gr1u]

--
Murray Eisenberg murray(a)math.umass.edu
Mathematics & Statistics Dept.
Lederle Graduate Research Tower phone 413 549-1020 (H)
University of Massachusetts 413 545-2859 (W)
710 North Pleasant Street fax 413 545-1801
Amherst, MA 01003-9305

First  |  Prev  | 
Pages: 1 2
Prev: Misprint
Next: Help Mathematica simplify this