Page 1

arXiv:1001.3163v2 [math.CO] 13 Jun 2010

On the decomposition of connected

graphs into their biconnected

components

ˆAngela Mestre∗

Institut de Min´ eralogie et de Physique des Milieux Condens´ es,

Universit´ e Pierre et Marie Curie, Campus Boucicaut,

140 rue de Lourmel, F-75015 Paris

France

June 15, 2010

Abstract

We give a recursion formula to generate all equivalence classes of bi-

connected graphs with coefficients given by the inverses of the orders of

their groups of automorphisms. We give a linear map to produce a con-

nected graph with say, µ, biconnected components from one with µ − 1

biconnected components. We use such map to extend the aforesaid result

to connected or 2-edge connected graphs. The underlying algorithms are

amenable to computer implementation.

1 Introduction

As pointed out in [12], generating graphs may be useful for numerous reasons.

These include giving more insight into enumerative problems or the study of

some properties of graphs. Problems of graph generation may also suggest

conjectures or point out counterexamples.

In particular, the problem of generating graphs taking into account their

symmetries was considered as early as the 19th-century [5]. Sometimes such

problem is so that graphs are weighted by scalars given by the inverses of the

orders of their groups of automorphisms. One instance is [11] (page 209). Many

∗Present address: Centro de Estruturas Lineares e Combinat´ orias, Complexo Interdisci-

plinar da Universidade de Lisboa, Av. Prof. Gama Pinto 2, 1649-003 Lisboa Portugal; email:

mestre@alf1.cii.fc.ul.pt.

1

Page 2

other examples may be found in mathematical physics (see for instance [4] and

references therein).In this context, the problem is traditionally dealt with

via generating functions and functional derivatives. However, any method to

straightforwardly manipulate graphs may actually be used. In particular, the

main results of [9] and [10] are recursion formulas to generate all equivalence

classes of trees and connected graphs (with multiple edges and loops allowed),

respectively, via Hopf algebra. The key feature is that the sum of the coefficients

of all graphs in the same equivalence class is given by the inverse of the order

of their automorphism group.

Furthermore, in [7] the algorithm underlying the main result of [10] was

translated to the language of graph theory. To this end, basic graph transfor-

mations whose action mirrors that of the Hopf algebra structures considered in

the latter paper, were given. The result was also extended to further classes of

connected graphs, namely, 2-edge connected, simple and loopless graphs.

In the following, let graphs be loopless graphs with external edges allowed.

That is, edges which are connected to vertices only at one end. In the present

paper, we generalize formula (5) of [7] to biconnected graphs. Moreover, we give

a linear map to produce connected graphs from connected ones by increasing

the number of their biconnected components by one unit. We use this map

to give an algorithm to generate all equivalence classes of connected or 2-edge

connected graphs with the exact coefficients. This is so that generated graphs

are automatically decomposed into their biconnected components. The proof

proceeds as suggested in [9]. That is, given an arbitrary equivalence class whose

representative is a graph on m internal edges, say, G, we show that every one of

the m internal edges of the graph G adds 1/(m·|Aut(G)|) to the sum of the co-

efficients of all graphs isomorphic to G. To this end, we use the fact that vertices

carrying (labeled) external edges are held fixed under any automorphism.

This paper is organized as follows: Section 2 reviews the basic concepts of

graph theory underlying much of the paper. Section 3 contains the definitions of

the basic linear maps to be used in the following sections. Section 4.1 presents

an algorithm to generate biconnected graphs and gives some examples. Section

4.2 extends the result to connected and 2-edge connected graphs.

2 Basics

We briefly review the basic concepts of graph theory that are relevant for the

following sections. More details may be found in any standard textbook on

graph theory such as [2], or in [7] for the treatment of graphs with external

edges allowed. This section overlaps Section 2 of [7] except for the concept

of biconnected graph. However, as the present paper only considers loopless

graphs, the definition of graph given in that paper specializes here for loopless

graphs.

Let A and B denote sets. By [A,B], we denote the set of all unordered pairs

of elements of A and B, {{a,b}|a ∈ A,b ∈ B}. In particular, by [A]2:= [A,A],

2

Page 3

we denote the set of all 2-element subsets of A. Also, by 2A, we denote the

power set of A, i.e., the set of all subsets of A. By card(A), we denote the

cardinality of the set A. Furthermore, we recall that the symmetric difference

of the sets A and B is given by A△B := (A ∪ B)\(A ∩ B). Finally, given a

graph G, by |Aut(G)|, we denote the order of its automorphism group Aut(G).

Let V = {vi}i∈Nand K = {ea}a∈Nbe infinite sets so that V ∩ K = ∅. Let

V ⊂ V; V ?= ∅ and K ⊂ K be finite sets. Let E = Eint∪ Eext ⊆ [K]2and

Eint∩Eext= ∅. Also, let the elements of E satisfy {ea,ea′}∩{eb,eb′} = ∅. That

is, ea,ea′ ?= eb,eb′. In this context, a graph is a triple G = (V,K,E) together

with the following maps:

(a) ϕint: Eint→ [V ]2;{ea,ea′} ?→ {vi,vi′};

(b) ϕext: Eext→ [V,K];{ea,ea′} ?→ {vi,ea′}.

The elements of V , E and K are called vertices, edges, and ends of edges,

respectively. In particular, the elements of Eint and Eext are called internal

edges and external edges, respectively. The degree of a vertex is the number of

ends of edges assigned to the vertex. Two distinct vertices connected together

by one or more internal edges, are said to be adjacent. Two or more internal

edges connecting the same pair of distinct vertices together, are called multiple

edges. Furthermore, let card(Eext) = s. Let L = {x1,...,xs} be a label set.

A labeling of the external edges of the graph G, is an injective map l : Eext→

[K,L];{ea,ea′} ?→ {ea,xz}, where z ∈ {1,...,s}. A graph G∗= (V∗,K∗,E∗);

E∗= E∗

graph G = (V,K,E); E = Eint∪ Eext, together with the maps ϕintand ϕextif

V∗⊆ V , K∗⊆ K, E∗⊆ E and ϕ∗

A path is a graph P = (V,K,Eint); V = {v1,...,vn}, n := card(V ) > 1, to-

gether with the map ϕintso that ϕint(Eint) = {{v1,v2},{v2,v3},...,{vn−1,vn}}

and the vertices v1and vnhave degree 1, while the vertices v2,...,vn−1have

degree 2. In this context, the vertices v1and vnare called the end point ver-

tices, while the vertices v2,...,vn−1 are called the inner vertices. A cycle is

a graph C = (V′,K′,E′

that ϕ′

has degree 2. A graph is said to be connected if every pair of vertices is joined

by a path. Otherwise, it is disconnected.

Given a graph G = (V,K,E); E = Eint∪ Eext, together with the maps ϕint

and ϕext, a maximal connected subgraph of the graph G is called a component.

Moreover, the set 2Eintis a vector space over the field Z2so that vector addition

is given by the symmetric difference. The cycle space C of the graph G is defined

as the subspace of 2Eintgenerated by all the cycles in G. The dimension of C is

called the cyclomatic number of the graph G. Let k := dimC, n := card(V ) and

m := card(Eint). Then, k = m−n+c, where c denotes the number of connected

components of the graph G [6].

Furthermore, given a connected graph, a vertex whose removal (together

with attached edges) disconnects the graph is called a cut vertex. A graph is

int∪ E∗

ext, together with the maps ϕ∗

intand ϕ∗

extis called a subgraph of a

int= ϕint|E∗

int, ϕ∗

ext= ϕext|E∗

ext.

int); V′= {v1,...,vn}, together with the map ϕ′

int) = {{v1,v2},{v2,v3},...,{vn−1,vn},{vn,v1}} and every vertex

intso

int(E′

3

Page 4

said to be 2-connected (resp. 2-edge connected) if it remains connected after

erasing any vertex (resp. any internal edge). A 2-connected graph (resp. 2-edge

connected graph) is also called biconnected (resp. edge-biconnected). Further-

more, a biconnected component of a connected graph is a maximal biconnected

subgraph (see [1] 6.4 for instance).

Now, let L = {x1,...,xs} be a finite label set. Let G = (V,K,E); E =

Eint∪ Eext, card(Eext) = s, together with the maps ϕint and ϕext, and G∗=

(V∗,K∗,E∗); E∗= E∗

and ϕ∗

labelings of the elements of Eextand E∗

the graphs G and G∗is a bijection ψV : V → V∗and a bijection ψK: K → K∗

which satisfy the following three conditions:

int∪ E∗

ext, card(E∗

ext) = s, together with the maps ϕ∗

int

extdenote two graphs. Let l : Eext → [K,L] and l∗: E∗

ext→ [K∗,L] be

ext, respectively. An isomorphism between

(a) ϕint({ea,ea′}) = {vi,vi′} iff ϕ∗

int({ψK(ea),ψK(ea′)}) = {ψV(vi),ψV(vi′)};

(b) ϕext({ea,ea′}) = {vi,ea′} iff ϕ∗

ext({ψK(ea),ψK(ea′)}) = {ψV(vi),ψK(ea′)};

(c) L ∩ l({ea,ea′}) = L ∩ l∗({ψK(ea),ψK(ea′)}).

An isomorphism defines an equivalence relation on graphs. A vertex (resp.

edge) isomorphism between the graphs G and G∗is an isomorphism so that ψK

(resp. ψV) is the identity map. In this context, a symmetry of a graph G is an

isomorphism of the graph onto itself (i.e., an automorphism). A vertex symmetry

(resp. edge symmetry) of a graph G is a vertex (resp. edge) automorphism of the

graph. Given a graph G, let Autvertex(G) and Autedge(G) denote the groups of

vertex and edge automorphisms, respectively. Then, |Aut(G)| = |Autvertex(G)|·

|Autedge(G)| (a proof is given in [10] for instance).

3Elementary linear transformations

We introduce the elementary linear maps to be used in the following.

Given an arbitrary set X, by QX, we denote the free vector space on the set

X over Q. By idX: X → X;x ?→ x, we denote the identity map. Given maps

f : X → X∗and g : Y → Y∗, by [f,g], we denote the map [f,g] : [X,Y ] →

[X∗,Y∗];{x,y} ?→ {f(x),g(y)} with [f]2:= [f,f].

Let V = {vi}i∈N and K = {ea}a∈N be infinite sets so that V ∩ K = ∅.

Fix an integer s ≥ 0. Let L = {x1,...,xs} be a label set. For all integers

n ≥ 1 and k ≥ 0, by Wn,k,s

conn

(resp. Wn,k,s

connected graphs (resp. disconnected graphs with two components) with n

vertices, cyclomatic number k and s external edges whose free ends are labeled

x1,...,xs. In all that follows, let V = {v1,...,vn} ⊂ V, K = {e1,...,et} ⊂ K

and E = Eint∪ Eext ⊆ [K]2be the sets of vertices, ends of edges and edges,

respectively, of all elements of Wn,k,s

conn

(resp. Wn,k,s

n−1 (resp. card(Eint) = k+n−2) and card(Eext) = s. Also, let l : Eext→ [K,L]

be a labeling of their external edges. Finally, by Wn,k,s

disconn), we denote the set of all (loopless)

disconn), so that card(Eint) = k +

biconnand Wn,k,s

2-edge, we denote

4

Page 5

the subsets of Wn,k,s

graphs, respectively.

conn

whose elements are biconnected and 2-edge connected

We begin by briefly recalling the linear maps ξEext,V, li,jand si≥1introduced

in Sections 3 and 5.3.4 of [7]. We refer the reader to that paper for the precise

definitions.

(i) Distributing external edges between all elements of a given vertex subset in

all possible ways: Let G = (V,K,E); E = Eint∪ Eext, together with the

maps ϕintand ϕextdenote a graph in Wn,k,s

Let K′⊂ K be a finite set so that K ∩ K′= ∅. Also, let E′

s′:= card(E′

Assume that the elements of E′

{eb,eb′} = ∅. Let L′= {xs+1,...,xs+s′} be a label set so that L∩L′= ∅.

Let l′: E′

In′

E′

subsets: In′

E′

E′(j)

with

conn. Let V′= {vz1,...,vzn′} ⊆ V .

ext⊆ [K′]2;

ext).

extsatisfy {ea,ea′} ∩

ext→ [K′,L′] be a labeling of the elements of E′

extdenote the set of all ordered partitions of the set E′

ext= {(E′(1)

ext = ∅,∀i,j ∈ {1,...,n′}

ext. Finally, let

extinto n′disjoint

= E′

ext

and

ext ,...,E′(n′)

ext )|E′(1)

ext ∪...∪E′(n′)

ext

E′(i)

ext∩

i ?= j}. In this context, the maps

ξE′

ext,V′ : QWn,k,s

conn

→ QWn,k,s+s′

conn

;G ?→

?

ext

(E′(1)

ext,...,E′(n′)

)∈In′

E′

ext

G(E′(1)

ext,...,E′(n′)

ext

)

are defined to produce each of the graphs G(E′(1)

G by assigning all elements of E′(j)

ext,...,E′(n′)

ext

)from the graph

ext to the vertex vzjfor all j ∈ {1,...,n′}.

(ii) The maps li,j: QWn,k,s

graph G∗from the graph G by connecting (or reconnecting) the vertices

viand vjwith an internal edge for all i,j ∈ {1,...,n} with i ?= j.

conn

→ QWn,k+1,s

conn

;G ?→ G∗are defined to produce the

(iii)(a) We define the maps si≥1from the maps sigiven in Section 3 of [7], by

restricting the image of the latter to graphs without isolated vertices.

More precisely, let G = (V,K,E); E = Eint∪ Eext, together with the

maps ϕintand ϕextdenote a graph in Wn,k,s

of ends of internal edges assigned to the vertex vi∈ V ; i ∈ {1,...,n}.

Let I2

non-empty disjoint sets: I2

E(2)

and

E(1)

denote the set of external edges assigned to the vertex vi. In this

context, for all i ∈ {1,...,n}, define the maps

conn. Let Eint,i⊂ K be the set

intdenote the set of all ordered partitions of the set Eint,iinto two

int= {(E(1)

int,i∩ E(2)

int,i,E(2)

int,i)|E(1)

int,i,E(2)

int,i?= ∅,

E(1)

int,i∪

int,i= Eint,i

int,i= ∅}. Moreover, let Lext,i ⊂ Eext

si≥1: QWn,k,s

conn

→ QWn+1,k−1,s

conn

∪ QWn+1,k,s

disconn;

0 ≤ card(Eint,i) < 2;

G ?→

0 if

ξLext,i,{vi,vn+1}

??

(E(1)

int,i,E(2)

int,i)∈I2

intG(E(1)

int,i,E(2)

int,i)

?

otherwise,

where each of the graphs G(E(1)

as follows: (a) split the vertex vi into two vertices, namely, vi and

int,i,E(2)

int,i)is produced from the graph G

5