# Does Sage keep the order of vertices in a graph and it's group or scramble them? For me it sometime scrambles them.

I use the Sage automorphism_group function to find the group that leaves an adjacency matric, say C, invariant under a similarity transformation. But sometimes it seems the results are for matrices on a vertex space that is not the same as the original, but is reordered.

A simple example on a 3-vertex graph: o--o--o.

```
with index order 1 0 2
```

Adjacency matrix= C =

```
[0 1 1]
[1 0 0]
[1 0 0]
```

The group is the identity and a reflection about the center vertex:

```
[1 0 0] [0 1 0]
[0 1 0] and [1 0 0] = R
[0 0 1] [0 0 1]
```

I would have expected the reflection to be,

```
[1 0 0]
[0 0 1]
[0 1 0],
```

but R is what Sage gives.

Sure enough, RCR^-1 gives the following,

```
[0 1 0]
[1 0 1]
[0 1 0]
```

which is *not* the original C matrix. However the R transformation leaves the matrix

```
[0 0 1]
[0 0 1] = C'
[1 1 0]
```

invariant. The last matrix is the C matrix where the vertices are indexed in reverse order.

Does Sage have some canonical way it orders the vertices in graphs and groups?

A bit more info, maybe. The order of the irreducible representation table seems to give a hint. If the trivial representation is the first row (which it is for some graphs), it appears (from a few tests) that the vertices retain their original order to align with C. If the trivial representation is the last row then the matrix C' is the adjacency matrix (suggesting a reordering of the vertices). I have no idea why this should be related if it is.

Bottom line for me is I cannot apply any matrices from the group that come from the matrix() method to C or other objects in my original vertex space since they are ordered differently. I don't see how to find the vertex order sage uses. Any help or insight appreciated.