27
On Computing the Distinguishing Numbers of Planar Graphs and Beyond: a Counting Approach V. Arvind The Institute of Mathematical Sciences Chennai 600 113, India [email protected] Christine T. Cheng Department of Electrical Engineering and Computer Science University of Wisconsin-Milwaukee Milwaukee, WI 53211 [email protected] Nikhil R. Devanur College of Computing Georgia Institute of Technology Atlanta, GA 30332 [email protected] February 21, 2008 Abstract A vertex k-labeling of graph G is distinguishing if the only automorphism that preserves the labels of G is the identity map. The distinguishing number of G, D(G), is the smallest integer k for which G has a distinguishing k-labeling. In this paper, we apply the principle of inclusion-exclusion and develop recursive formulas to count the number of inequivalent distinguishing k-labelings of a graph. Along the way, we prove that the distinguishing number of a planar graph can be computed in time polynomial in the size of the graph. 1 Introduction A vertex k-labeling of graph G is a mapping φ : V (G) →{1, 2,...,k}. It is said to be distinguishing if the only automorphism that preserves the labels of G is the identity map. The distinguishing number of G, D(G), is the minimum number of labels needed so that G has a distinguishing labeling. The notion of distinguishing numbers for graphs was first introduced and developed by Albertson and Collins [3]. Their focus was on determining the relationships between a graph’s automorphism group and its distin- guishing number. Their work has since been extended in many directions by researchers for graphs and groups (e.g., [2, 5, 8, 6, 7, 10, 12, 16, 17, 20, 21]). A preliminary version of this paper [4] appeared in the Proceedings of the Nordic Combinatorial Conference in 2004. 1

On Computing the Distinguishing Numbers of Planar Graphs

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: On Computing the Distinguishing Numbers of Planar Graphs

On Computing the Distinguishing Numbers ofPlanar Graphs and Beyond: a Counting Approach∗

V. ArvindThe Institute of Mathematical Sciences

Chennai 600 113, [email protected]

Christine T. ChengDepartment of Electrical Engineering and Computer Science

University of Wisconsin-MilwaukeeMilwaukee, WI [email protected]

Nikhil R. DevanurCollege of Computing

Georgia Institute of TechnologyAtlanta, GA 30332

[email protected]

February 21, 2008

Abstract

A vertexk-labeling of graphG is distinguishingif the only automorphism that preserves the labelsof G is the identity map. Thedistinguishing number ofG, D(G), is the smallest integerk for which Ghas a distinguishingk-labeling. In this paper, we apply the principle of inclusion-exclusion and developrecursive formulas to count the number of inequivalent distinguishingk-labelings of a graph. Along theway, we prove that the distinguishing number of a planar graph can be computed in time polynomial inthe size of the graph.

1 Introduction

A vertexk-labeling of graphG is a mappingφ : V (G)→ 1, 2, . . . , k. It is said to bedistinguishingifthe only automorphism that preserves the labels ofG is the identity map. Thedistinguishing numberofG, D(G), is the minimum number of labels needed so thatG has a distinguishing labeling. The notionof distinguishing numbers for graphs was first introduced and developed by Albertson and Collins [3].Their focus was on determining the relationships between a graph’s automorphism group and its distin-guishing number. Their work has since been extended in many directions by researchers for graphs andgroups (e.g., [2, 5, 8, 6, 7, 10, 12, 16, 17, 20, 21]).

∗A preliminary version of this paper [4] appeared in the Proceedings of the Nordic Combinatorial Conference in 2004.

1

Page 2: On Computing the Distinguishing Numbers of Planar Graphs

21 GG

Figure 1: An example of two graphs with the same number of vertices, isomorphic automorphism groupsand identical distinguishing numbers but different numberof inequivalentk-labelings:D(G1, k) = k4(k4−1)/2 butD(G2, k) = k7(k − 1)/2.

Let (G, φ) denote the labeled version ofG under the labelingφ. Given two distinguishingk-labelingsφ andφ′ of G, we say thatφ andφ′ areequivalentif there is some automorphism ofG that maps(G, φ)to (G, φ′). We are interested in computingD(G, k) – the number of inequivalentk-distinguishinglabelings ofG – which was first considered by Arvind and Devanur [4] and Cheng [9] to determinethe distinguishing numbers of trees. Our motivation for studying this parameter are as follows. First,D(G) = mink : D(G, k) > 0 so if we can computeD(G, k) efficiently then we can also determineD(G) efficiently. The usual way of proving thatD(G) = k∗ is to present a distinguishingk∗-labeling ofG and then argue thatG has no distinguishing labelings that usesk < k∗ labels. Counting the number ofinequivalent distinguishingk-labelings ofG provides us with an altogether different method for solvingD(G). Second, whenG is connected, solving forD(G, k) allows us to determine the distinguishingnumber ofH whereH = αG (i.e., H consists ofα copies ofG). To distinguishH , each copy ofGmust be assigned a distinguishing labeling. Additionally,no two copies ofG can be assigned equivalentdistinguishing labelings. Hence,D(H) = mink : D(G, k) ≥ α. Finally, researchers have notedthat two labels are sufficient for distinguishing many non-rigid graphs (e.g., [2, 12, 16]). The numberof inequivalent distinguishingk-labelings of graphs provides one more level of granularitythat enablesus to differentiate between graphs with the same distinguishing numbers. For example, consider thetwo graphs shown in Figure 1. They have the same number of vertices, their automorphism groupsare isomorphic, and they can be distinguished with two labels. Yet,D(G1, k) = k4(k4 − 1)/2 butD(G2, k) = k7(k − 1)/2 so with two labels at most120 copies ofG1 can be distinguished comparedto 64 copies forG2. In this sense,G1 is less symmetric thanG2 becausek labels can distinguish morecopies ofG1 thanG2 for anyk ≥ 2.

To solve forD(G, k), we apply two of the most common techniques for counting – theprincipleof inclusion-exclusion (PIE) and recursion. We show that whenG’s automorphisms are known and thesize of its automorphism group,Aut(G), is O(log n) wheren is the number of vertices inG then astraightforward application of PIE can determineD(G, k) efficiently. We then modify the technique sothat whenAut(G) is isomorphic toZt (the cyclic group of ordert), Dt (the dihedral group of order2t), Zt × Z2, or Dt × Z2, the value ofD(G, k) can be computed in time polynomial inn, t andlog k.Consequently, we are able to prove that ifG is a triconnected planar graph thenD(G, k) andD(G) canbe determined efficiently. Next, by viewingG via a tree decompositionTG that is made up ofG’s cutvertices, separating pairs, and triconnected components,we show thatD(G, k) can be determined recur-sively. To implement this technique efficiently for a familyof graphs, several ingredients are necessaryincluding efficient algorithms for testing graph isomorphism and finding the automorphisms of a graph’striconnected components. Since these algorithms exist forplanar graphs, we arrive at the main result ofthe paper – that whenG is a planar graph thenD(G, k) andD(G) can be computed efficiently.

In their introductory paper, Alberston and Collins [3] raised the issue of determining the computa-tional complexity ofDIST = (G, k)| G has a distinguishingk-labeling. Currently, the best knownresult aboutDIST , which is due to Russell and Sundaram [19], is that it belongsto AM, the set oflanguages for which there are Arthur and Merlin games. This result essentially follows from the factthat testing graph rigidity is in AM. WhenG is restricted to certain graph families, however,DIST canbelong to P. For example, distinguishing numbers of cycles,hypercubes [5, 8], and acyclic graphs [4, 9]can be computed efficiently. Our main result extends this further –DIST belongs to P whenG is a

2

Page 3: On Computing the Distinguishing Numbers of Planar Graphs

planar graph. Our work complements that of Fukuda, et al [12]on triconnected planar graphs wherethey show that, except for seven graphs, all graphs in this family have distinguishing number at most2.

In the next section of the paper we give basic results that will be used throughout the paper. In Section3, we show how the principle of inclusion/exclusion can be used to determineD(G, k). In Section 4,we develop recursive formulas for a tree decomposition ofG that eventually lead to the computation ofD(G, k). We conclude in Section 5. We note that our algorithms for computingD(G, k) haveG andk as input; hence, when we say that they are efficient, we mean that they run in time polynomial in thesize ofG andlog k. Additionally, these algorithms involve addition and multiplication. In cases wherethe numbers used are functions ofk, their values never exceedkn, wheren is the number of nodes ingraphG; i.e., the numbers have at mostn log k bits. Thus, in our analysis, we assume each additiontakesO(n log k) time and each multiplication takesO(n2 log2 k) time in the worst case.

2 Basic notions

Supposeφ and φ′ are two distinguishing labelings ofG. Since (labeled) graph isomorphism is anequivalence relation, we shall say thatφ andφ′ areequivalentif (G, φ) ∼= (G, φ′); that is, there is anautomorphism ofG that maps(G, φ) to (G, φ′). Let L(G, k) denote the set of all distinguishingk-labelings ofG, L(G, k) the size ofL(G, k), andD(G, k) the number of equivalence classes ofL(G, k).Below, we establish the relationships betweenD(G), D(G, k) andL(G, k).

Lemma 2.1. LetG be a graph andAut(G) its automorphism group.(i) D(G) = mink : L(G, k) > 0 = mink : D(G, k) > 0.(ii) D(G, k) = L(G, k)/|Aut(G)|.

Proof: If there is a distinguishingk-labeling ofG then the setL(G, k) must at least have one labelingand one equivalence class. It follows that the smallestk for which this is true must be the distinguishingnumber ofG, proving the first part of the lemma.

To prove the second part, note thatAut(G) is a group that acts onL(G, k). By definition, eachφ ∈ L(G, k) is preserved by only one automorphism inAut(G) – the identity automorphism. Hence,according to the orbit-stabilizer lemma, the size of the equivalence class ofL(G, k) that containsφ(i.e., the orbit ofφ) is |Aut(G)|. Consequently, the number of equivalence classes ofL(G, k) isL(G, k)/|Aut(G)|.

Throughout this paper, we shall make use of Lemma 2.1 by viewing the problem of finding a graph’sdistinguishing number as a counting problem. While it may seem that computingD(G, k) to findD(G)requires more work than needed, the lemma below (first provedin [9]) shows that it does not if we needto distinguish multiple copies ofG.

Lemma 2.2. LetG be a graph whoseg connected components areG1, G2, . . . , Gg. Letφ be a labelingof G. Thenφ is distinguishing if and only if the following two conditions hold:

i. φ when restricted toGi is distinguishing fori = 1, . . . , g.

ii. If Gi∼= Gj , i 6= j, then(Gi, φ|Gi) 6∼= (Gj , φ|Gj ) for every pair ofi, j ∈ 1, . . . , g.

The following is immediate.

Lemma 2.3. Let G be a connected graph. IfH consists ofα copies ofG (i.e., H = αG), thenD(H) = mink : D(G, k) ≥ α.

2.1 Blocks, cut vertices, separating pairs, triconnected components

Let G = (V, E) be a connected graph. Recall thatG is r-connectedif |V | > r and, for anyX ⊆ Vsuch that|X | < r, removing the vertices inX from G does not disconnectG; i.e., G − X remainsconnected. Suppose we are interested in determining ifG has some property (e.g., if it is planar). A

3

Page 4: On Computing the Distinguishing Numbers of Planar Graphs

common technique is to first decomposeG into its blocks – which are either edges or2-connected (orbiconnected) subgraphs ofG – and then decompose the blocks into its “triconnected components”[14]– which are either parallel edges (or bonds), cycles, or3-connected graphs.1 It is then the triconnectedcomponents which are initially studied; the results are then assembled to infer the properties of theblocks, which in turn infer the property ofG. We shall apply this technique in Section 4 to determineD(G, k). In particular, we shall make use of a tree,TG, that captures the relationships between the cutvertices, separating pairs and triconnected components ofG to assemble the information for computingD(G, k).

A blockof G is a maximally-connected subgraph ofG that does not contain a cut vertex. Thus, ablock ofG is either an edge or a maximal biconnected subgraph ofG. Furthermore, any two blocks ofG have at most one vertex in common and this vertex is a cut vertex of G. Theblock-cut vertex graphof G is a bipartite graph where one partite set consists ofb-verticeswhich correspond to the blocks ofG, and the other partite set consists ofc-verticeswhich correspond to the cut vertices ofG. A b-vertexis adjacent to ac-vertex if and only if the block associated with theb-vertex contains the cut vertexassociated with thec-vertex. It is well known that the the block-cut vertex graphof G is a tree whoseleaves areb-vertices, and so it has a unique center. Moreover, it can be constructed in time linear in thesize ofG [1].

Every block ofG that is biconnected can similarly be represented by a tree via its triconnectedcomponents and separating pairs. To do so, the definition of3-connectedness and separating pairs haveto be extended to multigraphs. Our discussion closely follows the paper of Hopcroft and Tarjan [14]. LetB be a biconnected multigraph, andx, y be a pair of vertices inB. The setx, y partitions the edgeset ofB in the following way: two edges belong to the same class if andonly if they lie in a path thatcontains neitherx nory except possibly as endpoints. The classes are called theseparation classes ofBwith respect tox, y. If there are at least two separation classes then the pairx, y is aseparating pairof B except when (i) there are exactly two separation classes andone class consists of a single edge, or(ii) there are exactly three classes, each consisting of a single edge. IfB is a biconnected multigraphand has no separating pairs thenB is said to betriconnected.

Let x, y be a separating pair ofB, and let the separation classes ofB with respect tox, y beE1, . . . , Em. An immediate consequence of the definition of separating pairs is that the classes can bedivided into two groupsE′ = ∪k

i=1Ei andE′′ = ∪mi=k+1Ei so that bothE′ andE′′ have at least two

edges. LetB′ = (V (E′), E′ ∪ (x, y)) andB′′ = (V (E′′), E′′ ∪ (x, y)). The graphsB′ andB′′

are calledsplit graphs ofB with respect to(x, y) and the edges(x, y) added to both graphs are calledvirtual edges. Tosplit B is to replaceB by two of its split graphs. Hopcroft and Tarjan suggest denotingtheith splitting operation via the pairx, y by s(x, y, i) and labeling the(x, y) edges added toB′ andB′′ by i to differentiate this split from other splits.

SupposeB is split, its split graphs are split and so on until there are no more splits possible. Theremaining graphs are called thesplit components ofB. Clearly, they all must be triconnected; theycan be grouped together as follows: the triple bondsBb3, the (simple) trianglesBt, and the rest of thetriconnected (simple) graphsBtg. Since there are many ways of splittingB, the split components ofB are not necessarily unique (e.g., consider a four-cycle). Nonetheless, this lack of uniqueness canbe fixed by an operation calledmergewhich is the reverse of split. LetB1 = (V1, E1) andB2 =(V2, E2) be two split components ofB that contain virtual edgee = (x, y) labeledi. The graph(V1 ∪ V2, E1 − e ∪ E2 − e) is called themerge graph ofB1 and B2. To mergeB1 and B2 isto create their merge graph. As before, the operation is denoted bym(x, y, i) to differentiate it fromother merge operations. So suppose the split components ofB are contained inBb3 ∪ Bt ∪ Btg. Mergethe triple bonds inBb3 as much as possible to obtain a set of bondsBb. Merge the triangles inBt as muchas possible to obtain a set of cyclesBp. The set of graphs inBb ∪ Bp ∪ Btg are called thetriconnectedcomponents ofB. For example, a cycle has only one triconnected component – itself – because thetriangles obtained by splitting the cycle can be merged. Thefollowing has been proven in [14]:

1Unlike blocks, however, the triconnected components of a graph need not be one of its subgraphs.

4

Page 5: On Computing the Distinguishing Numbers of Planar Graphs

n m

j

k l

f

g

h

i

f

g

h

i

ab

c d

j

e j

e j

e

ab

c d

k l

mn

e

Figure 2: A graph and its block-cut vertex graph.

Lemma 2.4. LetB be a biconnected multigraph withmB ≥ 3 edges. The total number of edges in thesplit components ofB is at most3mB − 6. Additionally, the triconnected components ofB are uniqueand can be found in time linear in the size ofB.

Lemma 2.4 implies that the order in which the split and merge operations are applied to decomposeB to its triconnected components is not important – the same components are obtained.

The biconnected multigraphB can now be represented by itstriconnected component-separatingpair graph which is a bipartite graph where one partite set consists oft-verticesthat correspond tothe triconnected components ofB, and the other partite set consists ofs-verticesthat correspond toB’sseparating pairs which exist as virtual edges inB’s triconnected components. At-vertex is adjacent to ans-vertex if and only if the triconnected component associated with thet-vertex contains the separatingpair associated with thes-vertex. It is easy to verify that this bipartite graph must again be a tree,all its leaves aret-vertices and consequently has a unique center. Moreover, because the triconnectedcomponents ofB can be found in linear time, the tree can also be constructed in linear time.

Building a tree-decomposition ofG. Let G be a (simple) connected graph. Let us now build a treedecomposition ofG, TG, that incorporates the triconnected component-separating pair graph of eachblock of G into the block-cut vertex graph ofG. Initially set TG to be the block-cut vertex graph ofG. Then, for eachb-vertexz whose associated block isB, replacez with B’s triconnected component-separating pair graphTB. AttachTB to each neighbory of z in the following manner. Leta be the cutvertex associated withy. Nodea is part of one or more triconnected components and separating pairsof B. It is straightforward to check that the vertices inTB associated with these components and pairsform a subtree which has a unique center because all the leaves of the subtree aret-vertices. Connectthe center of this subtree inTB to y. For example, in Figure 2, the center of the block-cut vertexgraphis a b-vertex who has twoc-vertices as neighbors: one is associated withe, the other withj. Whenthis b-vertex was replaced with the associated triconnected component-separating pair graph, as shownin Figure 3, nodese andj are part of all the separated pairs and triconnected components. Thus, bothc-vertices associated withe andj are connected to the center of the triconnected component-separatingpair graph.

Next, let us assign a root,r(TG), to TG as follows. If the center of the block-cut vertex graph ofG is a c-vertex, thisc-vertex is part ofTG. Setr(TG) to be thisc-vertex. Otherwise, the center of theblock-cut vertex is ab-vertex associated with some blockB. Setr(TG) to be the center ofTB. The treedecomposition of the graph in Figure 2 is shown in Figure 3.

5

Page 6: On Computing the Distinguishing Numbers of Planar Graphs

e j

e jv v v v

r

1 42

3

e b j l

b

e db

d

e b

b

d

a

e b

j

kl

j l

j

ln l

nm

nl

l

n

b

c d

f

gje e j

h

i

Figure 3: The tree decompositionTG of the graph in Figure 2 wherer = r(TG). The virtual edges of thetriconnected components are drawn with dashed lines.

6

Page 7: On Computing the Distinguishing Numbers of Planar Graphs

Claim 2.5. Every automorphism ofG maps the structure associated withr(TG) – which may be a cutvertex, a separating pair, or a triconnected component ofG – to itself.

Proof: LetBCG denote the block-cut vertex graph ofG. Recall thatBCG has a unique center; denoteit as z∗. Every automorphism ofG induces an automorphism onBCG.2 But every automorphism onBCG fixesz∗; hence, every automorphism ofG fixes the structure associated withz∗. If z∗ is ac-vertex,r(TG) = z∗ and so the claim follows. Otherwise,z∗ is a b-vertex that is associated with some blockB. This means that the action of every automorphism ofG onB corresponds to an automorphism ofB.Now, every automorphism ofB induces an automorphism onTB. Applying the same argument aboveto TB, we have that every automorphism ofB fixes the structure associated with center ofTB. Sincer(TG) is the center ofTB, the claim follows.

From here onwards, we shall treatTG as a rooted tree. For each nodev in TG, let Tv denote thesubtree ofTG rooted atv. We defineG(Tv) recursively as follows: whenv is a leaf node ofTG and,hence, at-vertex, letG(Tv) be the triconnected component ofG associated withv. Otherwise,v is ac-, s-, or a t-vertex and has at least one child. Whenv is a c-vertex, constructG(Tv) by taking theunion of the graphs inG(Tw) : w a child ofv. Whenv is ans-vertex whose associated separatingpair is x, y, let wx andwy denote the children ofv whose associated cut vertices arex andy re-spectively. (Note that they may not exist.) ConstructG(Tv) by first merging the graphs inG(Tw) :w is a child ofv and is at-vertex via x, y and then appendingG(Twx) andG(Twy) (if they exist) tox andy respectively. Finally, whenv is at-vertex whose associated triconnected component isH , con-structG(Tv) by first merging the graphs inG(Tw) : w is a child ofv and is ans-vertex to H and thentaking the union of the resulting graph with the graphs inG(Tw) : w is a child ofv and is ac-vertex.

We make a few observations aboutG(Tv). First, if w1 andw2 are children ofv in TG, the verticesand edges thatG(Tw1) andG(Tw2) have in common belong toG(Tv). Thus,G(Tv) consists of thestructure associated withv together with connected graphs “hanging” from it; these connected graphsare exactly from the setG(Tw) : w is a child ofv. Second, whenv = r(TG) thenG(Tv) = G.Finally, some of theG(Tv)’s may not be subgraphs ofG since some of them may contain one or morecopies of the edge(x, y) wherex, y is a separating pair ofG but (x, y) is not an edge ofG.3

In our later discussions, we will mostly be interested in theautomorphisms ofG(Tv) that fix a cutvertex, a separating pair, or a triconnected component, andso we useAut(G(Tv); ∗) to denote theset of automorphisms ofG(Tv) that fix the structures in∗. For example, letx, y be a separatingpair inG(Tv). The automorphisms ofG(Tv) in Aut(G(Tv); x, y) fix the verticesx andy while those inAut(G(Tv); xy) fix the edge(x, y). WhenH is a triconnected component inG(Tv), the automorphismsof G(Tv) in Aut(G(Tv); H) mapH to itself (i.e., the setV (H) to itself) and the automorphisms inAut(G(Tv); H, x, y) mapH to itself and, additionally, verticesx andy to themselves. From Claim 2.5,we have the next lemma.

Lemma 2.6. Let G be a connected graph andTG its tree decomposition. ThenAut(G) = Aut(G; A)whereA is the structure associated withr(TG).

From the construction ofTG, we also have the next two lemmas.

Lemma 2.7. Let v be ac-vertex inTG anda be its associated cut vertex. Letw be a child ofv in TG.The following are true:(i) if w is an s-vertex, then it is associated with some separating paira, b and Aut(G(Tw); a) =Aut(G(Tw); a, b),(ii) if w is at-vertex and its associated triconnected component isH , thenH containsa andAut(G(Tw); a) =Aut(G(Tw); H, a).

2That is, if π ∈ Aut(G), definefπ on the set of vertices ofBCG so thatfπ mimics the actions ofπ on G. Thus, for eachvertexz in BCG whose associated structure isA, let fπ(z) be the vertex inBCG associated with the structureπ(A). It is easy toverify thatfπ is an automorphism ofBCG.

3We note though that in computing forD(G, k), we can ignore the “other” copies of(x, y) as their multiplicity does not affectany of our computations.

7

Page 8: On Computing the Distinguishing Numbers of Planar Graphs

Proof: Sincev andw are adjacent inTG andv is ac-vertex whilew is ans- or at-vertex, there is a blockB that contains cut vertexa and the structure associated withw. As we noted in the construction ofTB, a must be part of one or more separating pairs and triconnectedcomponents inB, and the verticesassociated with these pairs and components form a subtree inTB. Let us call this subtreeTB,a. Sincewwas chosen so that it is the center ofTB,a, the structure associated withw containsa.

By the way the block-cut vertex graph ofG is constructed,B must be the only block inG(Tw)that containsa. Hence, every automorphism ofG(Tw) that fixesa must map the separating pairs andtriconnected components ofB that containa to similar separating pairs and triconnected components.That is, the actions of every automorphism inAut(G(Tw); a) induces an automorphism onTB,a. ButTB,a has a unique center –w– which means that every automorphism inAut(G(Tw); a) must map thestructure associated withw to itself. The lemma follows.

Lemma 2.8. Let v be ans-vertex inTG andx, y be its associated separating pair. Letw be a childof v in TG. If w is a t-vertex whose associated triconnected component isH , thenAut(G(Tw); x, y) =Aut(G(Tw); H, x, y) andAut(G(Tw); xy) = Aut(G(Tw); H, xy).

Proof: Sincev andw are adjacent inTG and v is an s-vertex whilew is a t-vertex, there is againa block B that contains the structures associated with both vertices. By the way the triconnectedcomponent-separating pair graph ofB is constructed, it must be the case thatH is the only tricon-nected component inG(Tw) that containsx, y. Hence, every automorphism inAut(G(Tw); x, y)must mapH to itself and soAut(G(Tw); x, y) = Aut(G(Tw); H, x, y). By the same reasoning,Aut(G(Tw); xy) = Aut(G(Tw); H, xy).

The following lemmas will also be useful later.

Lemma 2.9. The treeTG can be constructed inO(n2 +nm) time wheren is the number of vertices andm the number of edges inG.

Proof: ConstructingG’s block-cut vertex graph and rooting it at its center takesO(n+m) time. Creatingthe separating pairs-triconnected components graphTB of blockB takesO(nB + mB) time wherenB

andmB are the number of nodes and edges in blockB. ConnectingTB to TG takesO(cB(nB + mB))wherecB is the number of cut vertices in blockB. Thus, doing this for all blocksB takesO(n2 + nm)time since

B nB ≤ n + m and∑

B mB = m.

Lemma 2.10. Let B be a block ofG with nB vertices andmB ≥ 3 edges. LetH be the set thatcontains all the triconnected components ofB. For eachH ∈ H, let SH denote the set containingthe separating pairs ofG in H used in the construction ofTG. Then,

H∈H |SH | = O(mB) and∑

H∈H |V (H)| = O(mB).

Proof: Suppose the split operation was appliedg times toB until no more splits are possible. LetH′ contain the resulting split components. For eachH ′ ∈ H′, defineSH′ as in the lemma. Wenote that whenB is split into two components, the separating pair used to create the split becomespart of both components. That is, each split operation contributes a value of2 to

H′∈H′ |SH′ |.Hence,

H′∈H′ |SH′ | = 2g. Now, according to Lemma 2.4, the total number of edges in thesplitcomponents inH′ is at most3mB − 6. Since a split component inH′ has at least three edges,g ≤ mB − 2 and so

H′∈H′ |SH′ | = O(mB). Next, notice that|V (H ′)| ≤ |E(H ′)| for eachH ′ ∈ H′ so

H′∈H′ |V (H ′)| ≤ 3mB − 6. Finally, because∑

H∈H |SH | ≤∑

H′∈H′ |SH′ | and∑

H∈H |V (H)| ≤∑

H′∈H′ |V (H ′)|, the lemma follows.

Finally, we note that we callTG a tree decomposition ofG because it really is a tree decompositionas defined by Robertson and Seymour (see Chapter 12 in [11] foran introduction). That is, ifv is a nodeof TG andVv contains the vertices of the structure inG associated withv, it should be clear from ourconstruction that the following are true: (i)Vv ⊆ V (G) for eachv, (ii) ∪vVv = V (G), (iii) every edge ofG has two of its endpoints in someVv, and (iv) whenevery andz are neighbors ofv thenVy ∩Vz ⊆ Vv.In our discussion, however, it is important that we keep track of the actual structure associated withvand not just the vertices inVv.

8

Page 9: On Computing the Distinguishing Numbers of Planar Graphs

3 Counting the distinguishing k-labelings of graphs via PIE

Given a graphG and its automorphisms, we begin by applying the principle ofinclusion-exclusion (orPIE) to count its distinguishingk-labelings. Unfortunately, the technique requires the computation ofΩ(2|Aut(G)|) terms and so becomes impractical whenG has many automorphisms. We show how themethod can be modified whenAut(G) is isomorphic to certain groups. In particular, we prove that whenG is a triconnected planar graph,L(G, k), D(G, k), andD(G) can be computed in time polynomial inlog k and the size ofG.

SupposeAut(G) = π0, π1, . . . , πg−1 whereπ0 is the identity automorphism. Letφ be somek-labeling ofG. We say that an automorphismπi of G preservesφ if φ(v) = φ(πi(v)) for eachv ofG. Clearly,π0 preservesφ, and if no other automorphism ofG preservesφ thenφ is a distinguishingk-labeling ofG. LetP ⊆ Aut(G) andN≥(P ) denote the number ofk-labelings ofG that are preservedby all the automorphisms inP . Let N=(P ) equal the number ofk-labelings ofG that are preserved byall the automorphisms inP but no others. Thus,L(G, k) = N=(π0). According to the PIE,

N=(π0) =∑

π0⊆P⊆Aut(G)

(−1)|P |−1N≥(P ). (1)

Next, we describe a method for computingN≥(P ), for eachP ⊆ Aut(G). Supposeπi ∈ P . Ak-labelingφ is preserved byπi if and only if φ assigns the same label tov and toπi(v) for each vertexv in G. In fact, if there is a sequence of verticesv1, v2, . . . , vr such thatvj = πi(vj−1) for j = 2, . . . , rthenφ must assign all of theser vertices the same label. By extending this idea further, we arrive at thefollowing lemma.

Lemma 3.1. Let πi ∈ Aut(G) andφ be ak-labeling ofG. Let Gπi be the graph whose node set isV (G) and whose edge set consists of the pairs(v, πi(v)), v ∈ V (G). The automorphismπi preservesφif and only if, for each connected component inGπi , φ assigns the same label to all the vertices in thatcomponent. Consequently, letP ⊆ Aut(G). The automorphisms inP preserveφ if and only if, for eachconnected component in∪πi∈P Gπi , φ assigns the same label to all the vertices in that component.

An immediate implication of the lemma is if∪πi∈P Gπi hast connected components and there arek labels available thenN≥(P ) = kt. We are now ready to prove the next result.

Theorem 3.2. LetG be a graph onn vertices andk be a positive integer. Suppose all the automorphismsof G are given. ThenL(G, k) can be computed inO(n3 log2 k + 2|Aut(G)|(n × |Aut(G)| + n log k))time.

Proof: Begin by computing and storing the valuesk, k2, k3, . . . , kn. SetL(G, k) to 0. For each subsetP such thatπ0 ⊆ P ⊆ Aut(G), (i) construct∪πi∈P Gπi and find the number of its connectedcomponentst using breadth-first-search and (ii) add(−1)|P |−1kt to L(G, k). According to equation(1), at the end of this algorithm the value ofL(G, k) is the number of distinguishingk-labelings ofG. Computing the powers ofk can be done inO(n3 log2 k) steps. Each iteration of the for looptakes at mostO(n × |Aut(G)| + n log k) time where the first term in the sum accounts for the timeit takes to construct∪πi∈P Gπi and find its connected components, and the latter term accounts foraddingkt to L(G, k). Since there are2|Aut(G)|−1 subsetsP to consider, computingL(G, k) takesO(n3 log2 k + 2|Aut(G)|(n× |Aut(G)|+ n log k)) time.

Corollary 3.3. Let G be a graph withn vertices andk be a positive integer. Suppose all the automor-phisms ofG are given. If|Aut(G)| = O(log n), thenL(G, k) can be computed in time polynomial innandlog k.

The reason why implementing the PIE formula forL(G, k) can take exponential time is becausethere areΩ(2|Aut(G)|) N≥(P ) terms in the formula. Below we demonstrate that the technique can be

9

Page 10: On Computing the Distinguishing Numbers of Planar Graphs

modified whenAut(G) is isomorphic to certain groups. We consider the case whenAut(G) ∼= Γ where(i) Γ = Zt, the cyclic group of ordert, (ii) Γ = Dt, the dihedral group of order2t, and (iii)Γ = Zt×Z2

or Dt × Z2. All will be useful when we discuss triconnected planar graphs in the next subsection. Akey feature of these results is that|Aut(G)| = O(t) and yet the number ofN≥(P ) terms that must becomputed to deriveL(G, k) is polynomial int, and not exponential int. Before we proceed, we firstprove the following lemma.

Lemma 3.4. Let P ⊆ Aut(G) and 〈P 〉 be the subgroup generated byP . Everyk-labeling of Gpreserved by all the automorphisms inP is also preserved by all the automorphisms in〈P 〉.

Proof: Letφ be ak-labeling ofG preserved by all the automorphisms inP . Letπ ∈ 〈P 〉. SinceAut(G)is finite, we can writeπ asσr ∗ σr−1 ∗ . . . ∗ σ1 wherer ∈ Z

+ and eachσi ∈ P . Since eachσi preservesφ, for each vertexu of G,

φ(u) = φ(σ1(u)) = φ(σ2(σ1(u))) = · · · = φ(σr(· · · (σ2(σ1(u))))).

That is,π = σr ∗ σr−1 ∗ . . . ∗ σ1 preservesφ as well.

In the subsequent discussion, whenAut(G) ∼= Γ, we shall denote the automorphisms ofG asπσ

whereσ ∈ Γ, and letπσ ∗ πσ′ = πσ∗σ′ .

WhenAut(G) ∼= Zt. Let Zt be the cyclic group of ordert andρ be one of its generators. Its elementsareρ0 (the identity),ρ, ρ2, . . . , ρt−1 whereρi ∗ ρj = ρi+j mod t.

Theorem 3.5. Let Aut(G) ∼= Zt, where the prime factorization oft is∏s

i=1 pri

i . Suppose a generatorπρ of Aut(G) is given. LetP ∗ = πρi : i ∈ t/p1, t/p2, . . . , t/ps. Then

L(G, k) =∑

P⊆P∗

(−1)|P |N≥(P ).

Proof: To prove the theorem, we will show that ak-labelingφ of G is distinguishing if and only ifno automorphism inP ∗ preservesφ. One direction is obvious: ifφ is distinguishing, all non-trivialautomorphisms ofG do not preserveφ. SinceP ∗ contains only non-trivial automorphisms ofG, theresult follows. So supposeφ is not distinguishing. It must be preserved by someπρj , j 6= 0. Let g =gcd(t, j) =

∏si=1 pti

i , where0 ≤ ti ≤ ri. We know thatρg ∈ 〈ρj〉. Sincej < t, we also know thatgmust divide one of the numbers int/p1, t/p2, . . . , t/ps, sayt/p1; i.e.,ρt/p1 ∈ 〈ρg〉. By Lemma 3.4, itfollows that ifπρj preservesφ thenπρg also preservesφ, which implies thatπρt/p1 does so as well. Thatis, some automorphism inP ∗ preservesφ. Applying the PIE,L(G, k) =

P⊆P∗(−1)|P |N≥(P ).

WhenAut(G) ∼= Dt. Let Dt be the dihedral group of order2t. If we let the generators ofDt be the rota-tion ρ and reflectionτ , then the elements ofDt areρ0 (the identity),ρ1, . . . , ρt−1, τρ0, τρ1, . . . , τρt−1,whereτ2 = ρ0, τρi = ρ−iτ andρi ∗ ρj = ρi+j mod t.

Theorem 3.6. Let Aut(G) ∼= Dt, where the prime factorization oft is∏s

i=1 pri

i . Suppose generatorsπρ andπτ of Aut(G) are given. LetP ∗ = πρi : i ∈ t/p1, t/p2, . . . , t/ps. Then

N=(πρ0 , πτρi) =∑

πτρi⊆P⊆πτρi∪P∗

(−1)|P |−1N≥(P ),

and

L(G, k) =∑

P⊆P∗

(−1)|P |N≥(P )−t−1∑

i=0

N=(πρ0 , πτρi). (2)

10

Page 11: On Computing the Distinguishing Numbers of Planar Graphs

Proof: We shall first prove that ak-labelingφ of G that is preserved by at least two non-trivial automor-phisms ofG is also preserved by some automorphism in the setP ∗ = πρi : i ∈ t/p1, t/p2, . . . , t/ps.If one of the automorphisms that preservesφ is preserved byπρj , j 6= 0, then by the proof of Theo-rem 3.5 it must also be preserved by some automorphism inP ∗. If the two automorphisms that preserveφ areπτρi andπτρj , wherei < j, thenπτρi ∗ πτρj = πρj−i also preservesφ. Once again, someautomorphism inP ∗ must preserveφ.

To prove equation (2), we now consider the set of allk-labelings ofG. Let setsA, B, andC consistof all k-labelings ofG preserved byπρ0 only, byπρ0 andπτρi for somei ∈ 0, 1, . . . , t− 1 only, andby some automorphism inP ∗ respectively. Anyk-labeling ofG must belong to exactly one of the threesets because: (i) if it is distinguishing, it belongs to setA and if not toB ∪ C; (ii) if it is preserved byexactly one non-trivial automorphism ofG, and it is of the formπτρi , it belongs to setB; otherwise,it belongs to setC; (iii) finally, if it is preserved by at least two non-trivialautomorphisms ofG, thenit belongs to setC. That is,A ∪ B ∪ C contains all thek-labelings ofG and no two of them have ak-labeling ofG in common. Thus,L(G, k) = |A| = kn − |B| − |C|.

By the way we defined setB, |B| =∑t−1

i=0 N=(πρ0 , πτρi). Consider ak-labeling ofG thatis preserved byπτρi . From our earlier argument, we can assume that such ak-labeling is preservedby πτρi only or byπτρi and some other automorphism inP ∗, in addition to being preserved byπρ0 .According to the PIE, this means thatN=(πρ0 , πτρi) =

πτρi⊆P⊆πτρi∪P∗(−1)|P |−1N≥(P ).

Finally,C consists of all thek-labelings ofG preserved by at least one of the automorphisms inP ∗. So,according to the PIE,kn−|C| =

P⊆P∗(−1)|P |N≥(P ). Hence,L(G, k) =∑

P⊆P∗(−1)|P |N≥(P )−∑t−1

i=0 N=(πρ0 , πτρi), which proves equation (2).

Example.Consider the cycle onn verticesCn, wheren is a prime number. ThenAut(Cn) = Dn andP ∗ = πρ. To solve forL(Cn, k), we need the following values:N≥(∅), N≥(πρ), N≥(πτρi , πρ)andN≥(πτρi). Every k-labeling ofCn should be counted inN≥(∅) so N≥(∅) = kn. To solvefor N≥(πρ), recall that we consideredGπρ which is a graph that has only one component. Hence,N≥(πρ) = k. Similarly,N≥(πτρi , πρ) = k. Finally, Gπτρi consists of(n + 1)/2 components sinceany reflection ofCn fixes one vertexv and maps the equidistant vertices fromv to each other. Thus,N≥(πτρi) = k(n+1)/2. From equation (2),

L(Cn, k) = N≥(∅)−N≥(πρ)−n−1∑

i=0

(

N≥(πτρi)−N≥(πτρi , πρ))

= kn − k − nk(n+1)/2 + nk

= kn − nk(n+1)/2 + (n− 1)k

= k(k(n−1)/2 − 1)(k(n−1)/2 − (n− 1)).

Consequently,D(Cn, k) = k(k(n−1)/2 − 1)(k(n−1)/2 − (n − 1))/2n. Whenn = 5, for example,D(C5, 1) = D(C5, 2) = 0 butD(C5, 3) = 12 soD(C5) = 3.

WhenAut(G) ∼= Zt × Z2 or Dt × Z2. We state the following theorem without proof because thearguments are just extensions of those in Theorems 3.5 and 3.6.

Theorem 3.7. Suppose the prime factorization oft is∏s

i=1 pri

i , the groupZt × Z2 = (ρi, σj), i ∈0, 1, . . . , t− 1, j ∈ 0, 1 and the groupDt ×Z2 = (ρi, σj), (τρi, σj), i ∈ 0, 1, . . . , m− 1, j ∈0, 1. Whent is odd, setP ∗

0 = π(ρ0,σ); otherwise, setP ∗0 = π(ρ0,σ), π(ρt/2,σ). Let P ∗ =

P ∗0 ∪ π(ρi,σ0) : i ∈ t/p1, t/p2, . . . , t/ps.

(i) WhenAut(G) ∼= Zt × Z2,

L(G, k) =∑

P⊆P∗

(−1)|P |N≥(P ).

11

Page 12: On Computing the Distinguishing Numbers of Planar Graphs

(ii) WhenAut(G) ∼= Dt × Z2, and forb = 0 or 1,

N=(π(ρ0,σ0), π(τρi,σb)) =∑

π(τρi,σb)

⊆P⊆π(τρi,σb)

∪P∗

(−1)|P |−1N≥(P )

and

L(G, k) =∑

P⊆P∗

(−1)|P |N≥(P )−1

b=0

t−1∑

i=0

N=(π(ρ0,σ0), π(τρi,σb)).

Remark:Since the number of prime factors oft is O(log t), the number ofN≥(P ) terms in the formulafor computingL(G, k) is O(t) whenAut(G) ∼= Zt or Zt × Z2, andO(t2) whenAut(G) ∼= Dt orDt × Z2.

3.1 When G is a triconnected planar graph

What is interesting about the family of triconnected planargraphs is that the automorphism groups ofthe graphs are only of limited kinds.

Fact 3.8. [18] Let G be a triconnected planar graph. The automorphism group ofG is isomorphic to asubgroup of one of the following groups:A4, A5, S4, A4 × Z2, A5 × Z2, S4 × Z2, Zt, Dt, Zt × Z2,Dt × Z2, for some integert.

Since a subgroup of a dihedral group is a cyclic group or a dihedral group, clearly the subgroups ofDt × Z2 are cylic, dihedral or isomorphic toZt′ × Z2 or Dt′ × Z2 wheret′ ≤ t. In other words, theautomorphism group of a triconnected planar graph is eitherbounded by a constant or it is isomorphicto one of four groups only.

Additionally, because triconnected planar graphs have only unique embeddings on the plane up toequivalence4, finding all their automorphisms can also be done efficiently. We sketch one such methodnext. LetG be a triconnected planar graph withn vertices andm edges. Lete = (u, v) be an edge ofG. Let us designate its direction as being fromu to v and one of the facesF that it borders as its rightface. Create a copy ofG, Ge,F , which specially markse and its direction, and faceF . For any edgee′ = (u′, v′) whose direction and right faceF ′ is fixed, create an analogous graphGe′,F ′ , and usinga planar graph isomorphism testing algorithm determine ifGe,F andGe′,F ′ are isomorphic (where themarked edge and face ofGe,F are mapped to the marked edge and face ofGe′,F ′ ). If so, then thereis an automorphism ofG that mapse to e′ andF to F ′; moreover, by visiting the faces ofGe,F andGe′,F ′ in the same order, the rest ofπ can be determined in time linear in the size ofG. Since there isa linear time isomorphism testing algorithm for planar graphs [15], each iteration of the for loop takesO(n) time. And since there areO(m) iterations then inO(nm) = O(n2) time all the automorphismsof G can be determined. Furthermore, because each edge has two directions and two faces bordering it,the algorithm above also shows that|Aut(G)| ≤ 4m = O(n) whenG is a triconnected planar graph.

To solve forL(G, k) for triconnected planar graphs, we do the following: if|Aut(G)| ≤ 5!, useTheorem 3.2. Otherwise, determine ifAut(G) is cyclic, dihedral, isomorphic to a direct product of acyclic group andZ2, or to a direct product of a dihedral group andZ2. If Aut(G) is cyclic or dihedral,apply Theorems 3.5 or 3.6 respectively; otherwise, apply Theorem 3.7.

Theorem 3.9. Let G be ann-vertex triconnected planar graph. ComputingL(G, k) andD(G, k) canbe done inO(n3 log2 k +n3 log n+n3 log k) time. Consequently, computingD(G) takesO(n3 log3 n)time.

4A triconnected planar graph can have two planar embeddings one of which is a mirror image of the other.

12

Page 13: On Computing the Distinguishing Numbers of Planar Graphs

Proof: As we stated earlier, ifG has at most5! automorphisms, we use Theorem 3.2 to solve forL(G, k)andD(G, k). Otherwise, we need to determine which of the four groupsAut(G) is isomorphic to. Inparticular,Aut(G) falls into CASEi wherei = 1 if the group is cyclic,i = 2 if the group is isomorphicto Zt × Z2 for somet, i = 3 if the group is dihedral, andi = 4 if the group is isomorphic toDt × Z2

for somet. We note that there is some overlap in the four cases because if t is odd,Zt × Z2∼= Z2t and

D2t × Z2∼= D4t. Thus, when we say thatAut(G) belongs to CASE2 or 4, we shall assume thatt is

even. We describe our algorithmTriconnectCount(G, k) in Figure 3.1.In the first part of our algorithm, we determine the case whichAut(G) belongs to by considering

the order of each element inAut(G). It is easy to verify the following facts: (i) ifAut(G) has anelement with order|Aut(G)| it must be cyclic, (ii) ifAut(G) has only three elements with order2 (and3 < |Aut(G)|/2) then it belongs to case2, (iii) if Aut(G) has between|Aut(G)|/2 and|Aut(G)|/2+1of its elements with order2, it belongs to case3. Once the appropriate case forAut(G) is determined,we set the value oft.

The second part of the algorithm begins by computing the prime factors oft, finding an elementπ ∈ Aut(G) such that the order ofπ is t, and then computingP ∗ = πi : i ∈ t/p1, t/p2, . . . , t/ps.If Aut(G) is cyclic or dihedral,P ∗ is indeed the one needed in Theorems 3.5 and 3.6 respectivelytocomputeL(G, k). In cases2 and4, two more elements are missing inP ∗. To understand what theyare, we note that sincet is evenπ would be of the formπ(ρ,σb) whereb = 0 or 1, andρ andσ aregenerators ofZt andZ2 respectively. If we setp1 = 2, then(π(ρ,σb))

t/2 = π(ρt/2,σ0) or π(ρt/2,σ1), and

(π(ρ,σb))t/pi = π(ρt/pi ,σ0) for i = 2, . . . , s. At this point, the two missing elements inP ∗ have order2;

they can be distinguished from the other elements ofAut(G) with order2 because they commute withevery other element ofAut(G) (i.e., they belong to the center ofAut(G)), whereas the others do not.By updatingP ∗, we now obtain the appropriateP ∗ in Theorem 3.7. Finally, for cases3 and4, we placeall elements ofAut(G) with order2 not inP ∗ into setT . It is easy to check that the rest of the algorithmcomputesL(G, k) correctly since they follow directly from the theorems we have established.

Computing and storing the powers ofk takesO(n3 log2 k) time. Finding all the automorphisms ofG takeO(n2) time. It is easy to verify that in the rest of the algorithm, the bottleneck is in computingthe value ofL(G, k) when|Aut(G)| > 5!. Applying the same analysis we used in Theorem 3.2, andnoting that|P ∗| = O(log t) and|T | = O(t), computingL(G, k) takesO(t2(n log t + n log k)) time.Finally, becauseG is a triconnected graph|Aut(G)| = O(n) sot = O(n). Hence, the total runtime ofTriconnectCount(G, k) is O(n3 log2 k + n3 log n + n3 log k). Once we have the value forL(G, k),we simply divide it by|Aut(G)| to determineD(G, k). To findD(G), do a binary search over the range[1, n] to determine the smallestk for whichD(G, k) > 0 to findD(G). This adds an extralog n factorto the runtime ofTriconnectCount(G, k).

4 Computing D(G, k) via recursion

In this section, we shall generalize the recursive technique (discovered independently by Arvind andDevanur[4] and by Cheng[9]) that was used to compute the distinguishing numbers of trees. The mainidea behind the technique is quite simple. LetT be a tree rooted atr. Let Tv denote the subtree ofTrooted at vertexv. Start by settingD(Tv, k) = k for each leafv since a single node hask distinguishingk-labelings. Then, fori = height(T )− 1 to 0, do the following: for all nodesv at depthi, computeD(Tv, k) based on the values computed forD(Tw, k), w a child of v in T . Thus, at the end of thealgorithmD(Tr, k), which equalsD(T, k), is determined. To apply the above technique to a connectedgraphG, we will view G as a rooted tree using the tree decompositionTG described in Section 2.1.Additionally, we will also consider a generalized version of the distinguishingk-labelings of a graphwhich we shall define shortly. Finally, we will develop recursive formulas that relate the number of(generalized) inequivalent distinguishingk-labelings ofG(Tv) with those ofG(Tw), w a child ofv inTG.

Let Γ be a subgroup ofAut(G). We say that a labelingφ of G is Γ-distinguishingif no non-trivial

13

Page 14: On Computing the Distinguishing Numbers of Planar Graphs

TriconnectCount(G, k)Input: A triconnected planar graphG with n vertices, a positive integerk.Output: The value ofL(G, k).

Compute and store the valuesk, k2, k3, . . . , kn.Find all the automorphisms ofG.If |Aut(G)| ≤ 5!

L(G, k)←∑

π0⊆P⊆Aut(G)(−1)|P |−1N≥(P )return(L(G, k))

elsecompute the order of each automorphismπ ∈ Aut(G)if there is an automorphism whose order is|Aut(G)|

CASE← 1, t← |Aut(G)|,else

if there are only3 automorphisms with order2CASE← 2, t← |Aut(G)|/2,

elseif there are between|Aut(G)|/2 and|Aut(G)|/2 + 1 elements with order2

CASE← 3, t← |Aut(G)|/2,else

CASE← 4, t← |Aut(G)|/4.Compute the prime factors oft: p1, p2, . . . , ps.Find an automorphismπ ∈ Aut(G) whose order ist.ComputeP ∗ = πi : i ∈ t/p1, t/p2, . . . , t/ps.If CASE = 2 or 4

add toP ∗ the two automorphisms ofG which belong to the center ofAut(G) not yet inP ∗.If CASE = 3 or 4

let T consist of all automorphisms inAut(G) that is not inP ∗ whose order is2.L(G, k)←

P⊆P ∗(−1)|P |N≥(P ).If CASE = 1 or 2

return(L(G, k))else

while T 6= ∅pick π′ ∈ T and deleteπ′ from TL(G, k)← L(G, k) −

π′⊆P⊆π′∪P ∗(−1)|P |−1N≥(P )return (L(G, k)).

Figure 4: The algorithm for computing the number of distinguishing k-labelings of a triconnected planargraph.

14

Page 15: On Computing the Distinguishing Numbers of Planar Graphs

automorphism inΓ preservesφ, and that two labelingsφ andφ′ of G areequivalent with respect toΓ if some automorphism inΓ maps(G, φ) to (G, φ′). Let L(G, k; Γ) be the set consisting of theΓ-distinguishingk-labelings ofG, L(G, k; Γ) be the size ofL(G, k; Γ), andD(G, k; Γ) be the number ofequivalence classes ofL(G, k; Γ) with respect toΓ. WhenΓ = Aut(G; ∗) as defined in Section 2.1,we shall refer toL(G, k; Γ), L(G, k; Γ) andD(G, k; Γ) asL(G, k; ∗), L(G, k; ∗), andD(G, k; ∗) re-spectively. Finally, when(x, y) is an edge ofG, we will at times differentiate between the case when ak-labeling ofG assignsx andy the same or different colors. When we do so, we will place a subscriptnext toL, L, andD; the subscript is1 if x andy are assigned the same color and is2 otherwise. Thus,L1(G, k; xy) consists of allk-labelings ofG in L(G, k; xy) that assignedx andy the same color, etc. Itis easy to verify that the following version of Lemma 2.1 remains true:

Lemma 4.1. LetG be a graph andΓ be a subgroup ofAut(G). ThenD(G, k; Γ) = L(G, k; Γ)/|Γ|.

Given a connected graphG, we showed in Section 2.1 how to construct a tree decomposition of G,TG. The construction started withG’s block-cut vertex graph. Eachb-vertex whose associated blockis B is then replaced withB’s triconnected component-separating pair graphTB and then connected tothe rest of block-cut vertex graph. Thus,TG is made up ofc-, s-, andt-vertices which represent the cutvertices, separating pairs and triconnected components ofG. We shall now describe recursive formulasfor D(G(Tv), k; ∗) based on the type of vertexv is in TG.

Theorem 4.2. Let v be ac-vertex inTG anda be the cut vertex inG associated withv. Suppose whenall the graphs inG = G(Tw) : w is a child ofv in TG are fixed ata, there areg isomorphic classesand theith isomorphic class containsmi copies of the connected graphGi; i.e.,G = m1G1 ∪m2G2 ∪. . . ∪mgGg. Then

D(G(Tv), k; a) = k

g∏

i=1

(

D(Gi, k; a)/k

mi

)

.

Proof: By the wayTG was constructed, ifG = m1G1 ∪m2G2 ∪ . . . ∪mgGg thenG(Tv) is made upof

∑gi=1 mi connected components all hanging from vertexa. It is easy to verify thatφ is a labeling

in L(G(Tv), k; a) if and only if φ assigns inequivalent labelings fromL(Gi, k; a) to themi copies ofGi, i = 1, . . . , g and the labels assigned to vertexa by all the labelings are the same. This means thatan equivalence class ofL(G(Tv), k; a) is defined by (i) the label assigned toa and (ii) the set ofmi

equivalence classes fromL(Gi, k; a) that contain the labelings of themi copies ofGi, i = 1, . . . , g.There arek possible labels fora. Once the label fora is chosen sayl, there areD(Gi, k; a)/k differentequivalence classes ofL(Gi, k; a) which assign vertexa the same label. This is so because the numberof equivalence classes ofL(Gi, k; a) wherea is assigned the labell must be the same for every possiblevalue ofl. It follows that there are

(

D(Gi,k;a)/kmi

)

different sets ofmi equivalence classes that can containthe labelings assigned to themi copies ofGi for i = 1, . . . , g. By the product rule of counting, thetheorem is established.

The next two theorems deal with the case whenv is ans-vertex.

Theorem 4.3. Let v be ans-vertex inTG and x, y be the separating pair associated withv. If itexists, letwx denote the child ofv that is ac-vertex associated withx. Similarly, if it exists, letwy

denote the child ofv that is ac-vertex associated withy. Suppose when all the graphs inG = G(Tw) :w is a t-vertex and a child ofv in TG are fixed atx andy, there areg isomorphic classes and theithisomorphic class hasmi copies of the connected graphGi; i.e. G = m1G1 ∪m2G2 ∪ . . . ∪ mgGg.ThenD(G(Tv), k; x, y) equals

k2 maxD(G(Twx), k; x)/k, 1maxD(G(Twy), k; y)/k, 1

g∏

i=1

(

D(Gi, k; x, y)/k2

mi

)

.

Proof: Once again, it is easy to verify thatφ ∈ L(G(Tv), k; x, y) if and only if φ assigns inequivalentlabelings fromL(Gi, k; x, y) to themi copies ofGi, i = 1, . . . , g and the labels assigned tox and to

15

Page 16: On Computing the Distinguishing Numbers of Planar Graphs

x

2

1

1

1

2

1

1

1

y

Figure 5: In this graph,(x, y) is a separating pair. Notice that the labeling of the5-cycle on the left does notdestroy the automorphism of the5-cycle that flips the graph along the edge(x, y) but the labeling for theentire graph is distinguishing.

y by all the labelings are the same. Thus, an equivalence classof L(G(Tv), k; x, y) is defined by (i)the labels assigned tox andy, (ii) the equivalence classes ofL(G(Twx), k; x) andL(G(Twy ), k; y) thatcontain the labelings ofG(Twx) andG(Twy) respectively, and (iii) the set ofmi equivalence classesof L(Gi, k; x, y) that contain the labelings of themi copies ofGi, i = 1, . . . , g. There arek2 labelsavailable forx andy. Once the labels are chosen saylx and ly, the number of equivalence classesof L(Gi, k; x, y) wherex andy are assigned the said labels isD(Gi, k; x, y)/k2. This is so becausein any labeling inL(Gi, k; x, y), the labels of the vertices inGi other thanx andy are the ones thatactually destroy the non-trivial automorphisms ofAut(Gi; x, y). Consequently, the number of labelingsand the number of equivalence classes ofL(Gi, k; x, y) with x andy assignedlx and ly must be thesame regardless of the pair(lx, ly). Of theD(Gi, k; x, y)/k2 equivalence classes ofL(Gi, k; x, y) thatare being considered,mi must be chosen to contain the labelings of themi copies ofGi. Similarly,the number of equivalence classes ofL(G(Twx), k; x) wherex is assigned the labellx and the numberof equivalence classes ofL(G(Twy ), k; y) wherey is assigned the labelly areD(G(Twx), k; x)/k andD(G(Twy), k; y)/k respectively. By the product rule of counting, the theorem is established.

We will also need to computeD(G(Tv), k; xy). Unlike our previous characterizations, however, itis not necessarily the case that whenφ ∈ L(G(Tv), k; xy) thenφ assigned inequivalent labelings fromL(Gi, k; xy) to each copy ofGi. Figure 4 shows one such exception. Our approach this time isto con-sider the equivalence classes ofL(G(Tv), k; x, y) and count those thatdo notbelong toL(G(Tv), k; xy).

Consider an arbitrary graphH with an edge(x, y) and supposeAut(H ; xy) 6= Aut(H ; x, y). LetAut(H ; x → y, y → x) denote the set of automorphisms ofH that mapx to y andy to x. Notice thatAut(H ; xy) is the disjoint union ofAut(H ; x, y) andAut(H ; x→ y, y → x). Moreover,Aut(H ; x, y)is a subgroup ofAut(H ; xy) andAut(H ; x→ y, y → x) is a coset ofAut(H ; x, y).

Supposeφ1 andφ2 belong to the same equivalence class inL(H, k; x, y). If some automorphism inAut(H ; x→ y, y → x) preservesφ1, then it is easy to verify that another automorphism inAut(H ; x→y, y → x) also preservesφ2. That is, for each equivalence class inL(H, k; x, y), either all the labelingsdo not destroy some automorphism ofAut(H ; x→ y, y → x) (and so do not belong toL(H, k; xy)), orall do (and so belong toL(H, k; xy)). LetB(H, k; x, y) be the set that contains all equivalence classesof L(H, k; x, y) whose labelings do not belong toL(H, k; xy), and denote its size asB(H, k; x, y).Our discussion will focus on computingB(H, k; x, y) because this is the number of “bad” equivalenceclasses ofL(H, k; x, y) in that they do not carry over as equivalence classes ofL(H, k; xy).

Supposeπ ∈ Aut(H ; x → y, y → x). It is easy to verify that (i) when all the labelings in anequivalence class ofL(H, k; x, y) destroy all the automorphisms inAut(H ; xy) thenπ maps these la-belings to the labelings of another equivalence class ofL(H, k; x, y); (ii) on the other hand, when all thelabelings in an equivalence class ofL(H, k; x, y) do not destroy the automorphisms inAut(H ; xy) thenπ maps these labelings to themselves. In other words, under the action ofAut(H ; xy) the equivalenceclasses ofL(H, k; x, y) either get paired up or stay singleton. The ones that get paired up are preciselythe equivalence classes ofL(H, k; xy); i.e., each equivalence class ofL(H, k; xy) is made up of two

16

Page 17: On Computing the Distinguishing Numbers of Planar Graphs

equivalence classes ofL(H, k; x, y). We shall say that such a pair of equivalence classes arepartnersinL(H, k; x, y). The ones the stay single are the equivalence classes inB(H, k; x, y). We have proved thefollowing lemma.

Lemma 4.4. LetH be a graph with edge(x, y) andAut(H ; xy) 6= Aut(H ; x, y). ThenD(H, k; x, y) =2D(H, k; xy) + B(H, k; x, y).

We also need the following lemma.

Lemma 4.5. LetH be a graph with edge(x, y) andAut(H ; xy) 6= Aut(H ; x, y). ThenD2(H, k; xy) =(

k2

)

D(H, k; x, y)/k2 soD1(H, k; xy) = D(H, k; xy)−(

k2

)

D(H, k; x, y)/k2.

Proof: Consider the labelings inL2(H, k; xy). Sincex andy are assigned different labels, they imme-diately destroy all the automorphisms inAut(H ; x → y, y → x). Thus, we can construct a labelingin L2(H, k; xy) by first choosing distinct labels forx andy, then choosing the equivalence classes ofL(H, k; x, y) that will contain the labeling ofH , and finally picking the labeling ofH from the equiva-lence class. Hence,L2(H, k; xy) = k(k − 1)×D(H, k; x, y)/k2 × |Aut(H, k; x, y)| so

D2(H, k; xy) = L2(H, k; xy)/|Aut(H, k; xy)|

= k(k − 1)D(H, k; x, y)/k2 |Aut(H, k; x, y)|

|Aut(H, k; xy)|

= k(k − 1)D(H, k; x, y)/2k2

where the last equation follows from the fact that|Aut(H ; x, y)| = |Aut(H ; x → y, y → x)| becauseAut(H ; x → y, y → x) is a coset ofAut(H ; x, y) and so|Aut(H ; xy)| = 2|Aut(H ; x, y)|. Finally,sinceD(H, k; xy) = D1(H, k; xy)+D2(H, k; xy) the formula forD1(H, k; xy) in the lemma follows.

Theorem 4.6. Let v be ans-vertex inTG and x, y be the separating pair associated withv. Ifit exists, letwx denote the child ofv that is a c-vertex associated withx. Similarly, if it exists, letwy denote the child ofv that is a c-vertex associated withy. Suppose when all the graphs inG =G(Tw) : w is a t-vertex and a child ofv in TG are fixed atx and y, there areg isomorphic classesand theith isomorphic class hasmi copies of the connected graphGi; i.e. G = m1G1 ∪m2G2 ∪ . . .∪mgGg. If Aut(G(Tv); xy) = Aut(G(Tv); x, y) thenD(G(Tv), k; xy) = D(G(Tv), k; x, y). Otherwise,Aut(G(Tv); x→ y, y → x) 6= ∅ soG(Twx) ∼= G(Twy), and

D(G(Tv), k; xy) = [D(G(Tv), k; x, y)−B(G(Tv), k; x, y)]/2

whereB(G(Tv), k; x, y) equals

k maxD(G(Twx), k; x)/k, 1

g∏

i=1

⌊mi/2⌋∑

l=0

(

D1(Gi, k; xy)/k

l

)(

[D(Gi, k; x, y)− 2D(Gi, k; xy)]/k

mi − 2l

)

.

Proof: WhenAut(G(Tv); xy) = Aut(G(Tv); x, y), L(G(Tv), k; xy) = L(G(Tv), k; x, y) and so itfollows thatD(G(Tv), k; xy) = D(G(Tv), k; x, y). Otherwise,Aut(G(Tv); x → y, y → x) 6= ∅.Hence, if they exist,G(Twx) ∼= G(Twy ) and Aut(Gi; xy) 6= Aut(Gi; x, y) for i = 1, . . . , g. IncomputingD(G(Tv), k; x, y), we noted that there are three sets of parameters that describe the equiv-alence classes ofL(G(Tv), k; x, y): (i) the labels assigned tox andy, (ii) the equivalence classes ofL(G(Twx), k; x) that contain the labelings ofG(Twx) andG(Twy ), and (iii) the set ofmi equivalenceclasses ofL(Gi, k; x, y) that contain the labelings of themi copies ofGi for i = 1, . . . , g. We shall ex-tend them to characterize the equivalence classes inB(G(Tv), k; x, y) – i.e., the equivalences classes ofL(G(Tv), k; x, y) whose labelings are preserved by some automorphism inAut(G(Tv); x→ y, y → x).

17

Page 18: On Computing the Distinguishing Numbers of Planar Graphs

Claim 4.7. An equivalence class ofL(G(Tv), k; x, y) belongs toB(G(Tv), k; x, y) if and only if(i) the labels assigned tox andy are the same for every labeling in the class,(ii) the equivalence classes that contain the labelings ofG(Twx) andG(Twy ) are the same, and(iii) for i = 1, . . . , g, the set ofmi equivalence classes ofL(Gi, k; x, y) that contain the labelings ofthemi copies ofGi can be partitioned intoli groups of size2 andmi − 2li groups of size1 for some0 ≤ li ≤ ⌊mi/2⌋ so that the pairs of equivalence classes that belong to a group of size2 are partners inL(Gi, k; x, y) and the equivalence classes that belong to a group of size1 are inB(Gi, k; x, y).

Proof of claim: Letφ ∈ L(G(Tv), k; x, y) belong to an equivalence class that satisfies conditions (i),(ii) and (iii) above. Fori = 1, . . . , g, denote themi copies ofGi asGi,1, . . . , Gi,mi . Without lossof generality, assume that the equivalence classes that contain the labelings ofGi,2j−1 andGi,2j arepartners inL(Gi, k; x, y) for j = 1, . . . , li and the equivalence classes that contain the labelings ofeach of the remaining copies ofGi belong toB(Gi, k; x, y). Thus, condition (iii) implies that thereare automorphisms5 in Aut(Gi; x → y, y → x) that map(Gi,2j−1, φ) to (Gi,2j , φ) and vice versa forj = 1, . . . , li; similarly, there is also some automorphism inAut(Gi; x → y, y → x) that preserves(Gi,j , φ) for j = 2li + 1, . . . , mi. Furthermore, condition (ii) implies that there are some automor-phisms inAut(G(Twx); x) that map(G(Twx), φ) to (G(Twy ), φ) and vice versa. Combining theseautomorphisms, we conclude that some automorphism inAut(G(Tv); x→ y, y → x) preservesφ; thatis, the equivalence class that containsφ belongs toB(G(Tv), k; x, y).

On the other hand, supposeφ ∈ L(G(Tv), k; x, y) and some automorphismπ ∈ Aut(G(Tv); x →y, y → x) preservesφ. Clearly, π mapsx to y and vice versa, and so condition (i) is true. It alsomapsG(Twx) to G(Twy) and vice versa, and so condition (ii) is true. Fori = 1, . . . , g, if π mapsGi,j

to itself thenφ must have assignedGi,j a labeling that destroys all automorphisms inAut(Gi; x, y)sinceφ ∈ L(G(Tv), k; x, y) but is still preserved by some automorphism inAut(Gi; x → y, y → x)sinceπ ∈ Aut(G(Tv); x → y, y → x). That is, the equivalence class that contains the labeling ofGi,j belongs toB(Gi, k; x, y). If π mapsGi,j to Gi,j′ , j 6= j′ then there is some automorphism inAut(Gi; x→ y, y → x) that maps(Gi,j , φ) to (Gi,j′ , φ) so that the equivalence classes that contain thelabelings assigned byφ to Gi,j andGi,j′ are partners inL(Gi, k; x, y). Finally, if π mapsGi,j to Gi,j′

andGi,j′ to Gi,j′′ wherej, j′ andj′′ are distinct, then the equivalence classes that contain thelabelingsassigned byφ to Gi,j andGi,j′ are partners and those ofGi,j′ andGi,j′′ are partners as well. Butthis implies that the equivalence classes that contain the labelings assigned byφ to Gi,j andGi,j′′ areexactly the same, contradicting the assumption thatφ assigned inequivalent labelings to themi copiesof Gi sinceφ ∈ L(G(Tv), k; x, y). Thus, condition (iii) must be true.

Combining conditions (i) and (iii), we note that each group of size2 in condition (iii) correspondsto an equivalence class ofL1(Gi, k; xy). Moreover, because no two of the equivalence classes thatcontain the labelings of themi copies ofGi are identical, distinct groups of size2 correspond to distinctequivalence classes ofL1(Gi, k; xy). Using the claim, we can now computeB(G(Tv), k; x, y). Anequivalence class inB(G(Tv), k; x, y) is defined by (i) the label assigned tox andy, (ii) the equivalenceclass ofL(G(Twx), k; x) that contain the labelings ofG(Twx) andG(Twy ), (iii) the set ofli equivalenceclasses ofL1(Gi, k; xy) and the set ofmi − 2li equivalence classes inB(Gi, k; x, y) which togethercontain the labelings of themi copies ofGi for i = 1, . . . , g. There arek ways of assigning the samelabels tox andy, sayl. Oncel is fixed, there areD(G(Twx), k; x)/k choices for the equivalence classof (ii),

(

D1(Gi,k;xy)/kli

)

choices for the set ofli equivalence classes and(

B(Gi,k;x,y)/kmi−2li

)

choices for theset ofmi − 2li equivalence classes of (iii). Thus,B(G(Tv), k; x, y) equals

k

(

D(G(Twx), k; x)/k

1

) g∏

i=1

⌊mi/2⌋∑

l=0

(

D1(Gi, k; xy)/k

l

)(

[D(Gi, k; x, y)− 2D(Gi, k; xy)]/k

mi − 2l

)

.

5Technically, we are referring to the automorphisms implicitly defined by the isomorphisms that maps(Gi,2j−1, φ) to (Gi,2j , φ)and vice versa sinceGi,2j−1 andGi,2j are copies ofGi. We shall keep this usage throughout the proof for ease of discussion.

18

Page 19: On Computing the Distinguishing Numbers of Planar Graphs

a

a

5

1

a

a

4

5

aa

aa

a1

2

34

5

a

a

a

a

a

a

1

2

2

3

3

4

r

v v v v v1 2 3 4 5

H

a2 a3 3 4 4 5 5 1a a a aa aa a1 2

a a1 2 a a2 3 a a3 4 a a4 5 a a5 1

aa

aa

a1

2

34

5

Figure 6: GraphG and its tree decomposition. Again,r = r(TG). Note thatD(G(Tr), k;H) = D(G, k).

OnceB(G(Tv), k; x, y) has been computed, we can determineD(G(Tv), k; xy) using Lemma 4.4.

An important implication of Theorems 4.3 and 4.6 and Lemma 4.5 is that bothD(G(Tv), k; x, y) andD(G(Tv), k; xy) can be computed once the values ofD(G(Twx), k; x), D(G(Twy ), k; y), D(Gi, k; x, y),andD(Gi, k; xy) for i = 1, . . . , g are known.

Let us now consider the case whenv is at-vertex. LetH be the triconnected component associatedwith v. We need to solve forD(G(Tv), k; H, A) whereA is the structure associated with the parent ofvin TG (if the parent exists). Our goal is to create a formula forD(G(Tv), k; H, A) that is dependent onH and the values ofD(G(Tw), k; ∗) only, wherew is a child ofv in TG and∗ is the structure associatedwith w, so that the formula can be computed efficiently. Our approach follows Section 3 closely; thedifference is that in our current settingG(Tv) is made up ofH together with components hanging offof the cut vertices and separating pairs ofG in H whereas in Section 3 we only dealt with the graphH .We demonstrate our approach by solving forD(G(Tv), k; H); others can be solved similarly. To aid usin our discussion, we shall use the graph in Figure 6 for illustration. In particular, we will compute forD(G(Tr), k; H), which equalsD(G, k).

Let CH contain the cut vertices ofG in H whose corresponding vertices inTG are children ofv.Let SH contain the separating pairs ofG in H used in creatingTG whose corresponding vertices inTG

are children ofv. Whena ∈ CH andw is the child ofv that is associated witha, we shall refer toG(Tw) asGa for ease of notation. We do the same for each pairx, y ∈ SH . We begin by consideringL∗(G(Tv), k), the set that contains all thek-labelingsφ of G(Tv) so thatφ when restricted toGa belongsto L(Ga, k; a) for every cut vertexa ∈ CH , andφ when restricted toGx,y belongs toL(Gx,y, k; x, y)for every separating pairx, y ∈ SH . For instance, a labeling that assigns all the nodes ofG in Figure6 the same label belongs toL∗(G(Tr), k) because everyGai,ai+1 fixed atai andai+1 has no non-trivialautomorphisms. Clearly, every labeling inL(G(Tv), k; H) also belongs toL∗(G(Tv), k); otherwise,some nontrivial automorphism inAut(G(Tv); H) is not destroyed. We shall use PIE to weed out thelabelings inL∗(G(Tv), k) that are not part ofL(G(Tv), k; H).

Let Autv(H) consist of all the automorphisms inAut(G(Tv); H) when restricted toH . SupposeP ⊆ Autv(H). LetN≥(P ) denote the number of labelingsφ in L∗(G(Tv), k) so that, for everyσ ∈ P ,

19

Page 20: On Computing the Distinguishing Numbers of Planar Graphs

some extension ofσ in Aut(G(Tv); H) preservesφ. DefineN=(P ) similarly except that aside from theautomorphisms inP no other automorphism inAutv(H) has extensions that preserveφ. We now statethe formulas forL(G(Tv), k; H) andD(G(Tv), k; H).

Theorem 4.8. Let v be at-vertex inTG andH be the triconnected component associated withv. LetAutv(H) consist of the automorphisms inAut(G(Tv); H) when restricted toH , andσ0 be the identityautomorphism inAutv(H). Then

L(G(Tv), k; H) = N=(σ0) =∑

σ0⊆P⊆Autv(H)

(−1)|P |−1N≥(P )

and

D(G(Tv), k; H) =1

|Autv(H)|

σ0⊆P⊆Autv(H)

(−1)|P |−1N≥(P )∏

a∈CH|Aut(Ga; a)|

x,y∈SH|Aut(Gx,y; x, y)|

.

Proof: It is straightforward to verify thatN=(σ0) =∑

σ0⊆P⊆Autv(H)(−1)|P |−1N≥(P ) is thenumber of labelings inL∗(G(Tv), k) that is preserved by some extension ofσ0 and by no other au-tomorphism inAutv(H). But by the way we definedL∗(G(Tv), k), if some extension ofσ0 pre-serves a labeling ofL∗(G(Tv), k), that extension must be the identity automorphism ofG(Tv). Thefirst equation of the theorem follows. Now,|Aut(G(Tv); H)| = |Autv(H)| ×

a∈CH|Aut(Ga; a)| ×

x,y∈SH|Aut(Gx,y; x, y)| since every automorphism inAut(G(Tv); H) can be decomposed into an

automorphism inAutv(H) and automorphisms of the connected components that hang offof H fixedat the cut vertices or separating pairs that connect them toH . Hence, dividingL(G(Tv), k; H) by|Aut(G(Tv); H)| gives us the second equation of the theorem.

Corollary 4.9. WhenAutv(H) is cyclic, dihedral, or isomorphic toZt×Z2 or Dt×Z2 for some integert, the formulas in Theorems 3.5, 3.6 and 3.7 forN=(σ0) whereσ0 is the identity automorphism stillapply.

Suppose, instead ofD(G(Tv), k; H), we wish to computeD(G(Tv), k; H, a) (orD(G(Tv), k; H, x, y)or D(G(Tv), k; H, xy)). Let Γ denote the subgroup ofAutv(H) that fixesa (or x andy, or xy). ByreplacingAutv(H) with Γ, the formula in Theorem 4.8 still holds.

Next, we describe a method for computingN≥(P ), P ⊆ Autv(H). For eachσ ∈ P , let Hσ

be the graph whose vertex set isV (H) and edge set is(v, σ(v)) : v ∈ V (H). Let SPσ bethe graph whose vertex set consists ofxy and yx wheneverx, y ∈ SH and whose edge set is(xy, σ(x)σ(y)), (yx, σ(y)σ(x)) : x, y ∈ SH. In ∪σ∈P SPσ, let SPP (xy) denote the compo-nent that contains the vertexxy. Notice that ifa anda′ are part of the same component in∪σ∈P Hσ,then botha anda′ are cut vertices or both are not; and when both of them are, then Ga

∼= Ga′ . Sim-ilarly, whenxy andx′y′ are part of the same component in∪σ∈P SPσ, Gx,y

∼= Gx′,y′ . Finally, whenyx ∈ SPP (xy) then for everyx′y′ ∈ SPP (xy), y′x′ ∈ SPP (xy) as well. The following can easily beverified:φ ∈ L∗(G(Tv), k) is counted inN≥(P ) if and only if (i) whenever two vertices are part of thesame component in∪σ∈P Hσ, φ assigns them the same label; (ii) whenever two cut verticesa anda′ arepart of the same component in∪σ∈P Hσ, φ when restricted toGa andGa′ belong to the same equiva-lence class ofL(Ga, k; a); and (iii) whenxy andx′y′ are part of the same component in∪σ∈P SPσ, φwhen restricted toGx,y andGx′,y′ belong to the same equivalence class ofL(Gx,y, k; x, y).

In SPσ, we have chosen to represent the separating pairx, y as two verticesxy andyx to capturesituations in which an automorphism inAutv(H) mapsx toy andy tox. However, such a representationcan introduce redundancies in the sense that two different components inSPσ may be capturing thesame relationships between the same sets of separating pairs. As such, we shall say that a collectionof componentsSPP (xiyi), i = 1, . . . , g forms apartition of ∪σ∈P SPσ if for every separating pairx, y ∈ SH exactly one component in the collection containsxy or yx or both. In Figure 6, let

20

Page 21: On Computing the Distinguishing Numbers of Planar Graphs

πρ ∈ Autr(H) be the rotation that mapsai to ai+1, i = 1, . . . , 5, andπτ ∈ Autr(H) be the reflectionthat fixesa1. A partition for SPπρ contains only one component while a partition forSPπτ containsthree components – e.g.,SP (a1a5), SP (a5a4), SP (a4a3) wherea3a4 ∈ SP (a4a3).

Theorem 4.10. Let σ0 ⊆ P ⊆ Autv(H). Suppose∪σ∈P Hσ has t components where theithcomponent contains the vertexai, and the collectionSPP (xiyi), i = 1, . . . , g forms a partition of∪σ∈P SPσ. Letκ(ai) = D(Gai , k; ai) if ai is a cut vertex and is equal tok otherwise. Letκ(xi, yi) =[D(Gxi,yi , k; xi, yi)−2D(Gxi,yi , k; xiyi)]/k if yixi ∈ SPP (xiyi) and is equal toD(Gxi,yi , k; xi, yi)/k2

otherwise. Then

N≥(P ) =

t∏

i=1

κ(ai)×

g∏

i=1

κ(xi, yi)×∏

a∈CH

|Aut(Ga; a)| ×∏

x,y∈SH

|Aut(Gx,y; x, y)|.

Proof: To create a labelingφ that is counted inN≥(P ), we do the following. (1) Ifai is not a cut vertex,pick a label that will be assigned to it and all the vertices inthe same component asai in ∪σ∈P Hσ. (2) Ifai is a cut vertex, pick an equivalence class ofL(Gai , k; ai) that will contain the labelings ofGai and alltheGu’s whereu andai are in the same component of∪σ∈P Hσ. Then forai and each of the verticesu,pick a labeling from the equivalence class just chosen. (3) For eachxi, yi, pick an equivalence classof L(Gxi,yi , k; xi, yi) that will contain the labelings ofGxi,yi and allGu,w ’s whereuw andxiyi are inthe same component of∪σ∈P SPσ. Additionally, this equivalence class must respect the labels that havealready been assigned toxi andyi in step (2). Then forxi, yi and eachu, w, pick a labeling fromthe equivalence class just chosen.

There arek ways of doing step (1) andD(Gai , k; ai)×|Aut(Gai ; ai)|ji ways of doing step (2) whereji is the number of vertices in the same component asai. Thus, there are

∏ti=1 κ(ai)

a∈CH|Aut(Ga; a)|

ways of doing steps (1) and (2) since whenever theai andu are in the same component of∪σ∈P Hσ,both vertices are cut vertices or both are not andAut(Gai ; ai) ∼= Aut(Gu; u).

To do step (3), we need to differentiate between the case whenyixi also belongs toSPP (xiyi)and when it doesn’t. In the former case,φ when restricted toGxi,yi must destroy all the automor-phisms ofGxi,yi whenxi andyi are fixed but is preserved by some automorphism of the graph thatmapsxi to yi and vice versa. In other words, the equivalence class containing the labeling belongs toB(Gxi,yi , k; xi, yi). Since the labels ofx andy have already been chosen in steps (1) or (2) (note thatthey had to be the same), from Lemma 4.4 there are exactly[D(Gxi,yi , k; xi, yi)−2D(Gxi,yi , k; xiyi)]/kequivalence classes to choose from in step (3). On the other hand, whenyixi does not belong toSPP (xiyi), φ when restricted toGxi,yi must simply belong toL(Gxi,yi , k; xi, yi) and so once the labelsof xi andyi have been chosen in steps (1) and (2), there are exactlyD(Gxi,yi, k; xi, yi)/k2 equivalenceclasses to choose from in step (3). Finally, when the equivalence classes have been selected, then thereare|Aut(Gxi,yi ; xi, yi)|ji labelings that can be assigned to theGu,w ’s, uw ∈ SPP (xiyi) whereji is thenumber of distinct separating pairs inSP (xiyi). There are

∏gi=1 κ(xi, yi)

x,y∈SH|Aut(Gx,y; x, y)|

ways of doing step (3) because again wheneverxiyi anduw are in the same component in∪σ∈P SPσ,Aut(Gxi,yi ; xi, yi) ∼= Aut(Gu,w; u, w). The theorem follows.

Using the formula forN≥(P ) above, we can now simplify the second formula in Theorem 4.8 as

D(G(Tv), k; H) =1

|Autv(H)|

σ0⊆P⊆Autv(H)

(−1)|P |−1t

i=1

κ(ai)

g∏

i=1

κ(xi, yi).

Hence,D(G(Tv), k; H) (andD(G(Tv), k; H, a), D(G(Tv), k; H, x, y), D(G(Tv), k; H, xy)) canbe computed once the automorphisms inAutv(H) and the values ofD(G(Tw), k; ∗) are known, wherew is a child ofv in TG and∗ is the structure associated withw.

FindDist(G, k). Let us now describe our algorithmFindDist(G, k) for computingD(G, k). First, con-structTG and root it atr(TG). Then, fori = height(TG) to 0, do the following for each vertexv at

21

Page 22: On Computing the Distinguishing Numbers of Planar Graphs

depthi. Whenv is ac-vertex, computeD(G(Tv), k; a) wherea is the cut vertex associated withv usingTheorem 4.2. Whenv is ans-vertex, computeD(G(Tv), k; x, y) andD(G(Tv), k; xy) wherex, y isthe separating pair associated withv using Theorems 4.3 and 4.6. Whenv is a t-vertex andH is thetriconnected component associated withv, computeD(G(Tv), k; H, ∗) where∗ is the structure associ-ated withp(v), the parent ofv, if it exists. (That is, ifp(v) is a c-vertex, computeD(G(Tv), k; H, a)wherea is the cut vertex associated withp(v); if p(v) is ans-vertex, computeD(G(Tv), k; H, x, y) andD(G(Tv), k; H, xy) wherex, y is the separating pair associated withp(v); if v has no parent, computeD(G(Tv), k; H).) Do all computations according to Theorem 4.8, Corollary 4.9 and Theorem 4.10. Fi-nally, if the root noder(TG) is ac-vertex or at-vertex, return the value computed at depth0; otherwise,r(TG) is ans-vertex, returnD(G(Tv), k; xy).

It is not obvious that at every iteration the algorithm can computeD(G(Tv), k; ∗) based on the valuesobtained forv’s children in the previous iterations. We shall now show that this, in fact, is the case.•Whenv is a c-vertex.Let a be the cut vertex associated withv. From Theorem 4.2,D(G(Tw), k; a)is needed. Ifw is ans-vertex and associated with some separating paira, b, D(G(Tw), k; a, b) wascomputed in the previous iterations. But from Lemma 2.7,Aut(G(Tw); a, b) = Aut(G(Tw); a); i.e.,a labeling ofG(Tw) destroys all automorphisms inAut(G(Tw); a, b) if and only if it destroys all au-tomorphisms inAut(G(Tw); a). Hence,D(G(Tw), k; a, b) = D(G(Tw), k; a). If w is a t-vertex,w is associated with some triconnected componentH , and soD(G(Tw), k; H, a) was computed inthe previous iteration. From Lemma 2.7,Aut(G(Tw); H, a) = Aut(G(Tw); a) and, consequently,D(G(Tw), k; H, a) = D(G(Tw), k; a).• Whenv is ans-vertex. Let x, y be the separating pair associated withv. This time, according toTheorems 4.3 and 4.6, ifw is ac-vertex associated withx (or y), D(G(Tw), k; x) (or D(G(Tw), k; y))is needed, and was clearly computed in the previous iterations by the algorithm. On the other hand, ifwis a t-vertex whose associated triconnected component isH , D(G(Tw), k; x, y) andD(G(Tw), k; xy)are needed. Now,D(G(Tw), k; H, x, y) andD(G(Tw), k; H, xy) were computed in the previous it-erations. But from Lemma 2.8,Aut(G(Tw); H, x, y) = Aut(G(Tw); x, y) andAut(G(Tw); H, xy) =Aut(G(Tw); xy). It follows thatD(G(Tw), k; H, x, y) = D(G(Tw), k; x, y) andD(G(Tw), k; H, xy) =D(G(Tw), k; xy).• Whenv is a t-vertex. Let H be the triconnected component associated withv. According to Theo-rem 4.10, ifw is ac-vertex associated witha, D(G(Tw), k; a) is needed and ifw is ans-vertex associatedwith the separating pairx, y, D(G(Tw), k; x, y) andD(G(Tw), k; xy) are needed. All these valueswere computed in the previous iterations.

From Theorems 4.2, 4.3, 4.6, 4.8, 4.10, we know that all theD(G(Tv), k; ∗) values computed bythe algorithm are correct. Now, the algorithm returned the valueD(G(Tv), k; A) wherev = r(TG)andA is the structure associated withr(TG). But G(Tr(TG)) = G, and, according to Lemma 2.6,Aut(G; A) = Aut(G). It follows that the algorithm returnedD(G, k).

Theorem 4.11. WhenG is a connected graph, FindDist(G, k) returns the valueD(G, k).

Example 1.Consider the graph and its tree decomposition in Figures 2 and 3. Using the formulas given inthis section, it is easy to verify the following:D(G(Tv3), k; e) = k5, D(G(Tv1 ), k; e, j) = k3(k− 1)/2andD(G(Tv1), k; ej) = k2(k − 1)2/4. According to Theorem 4.3,

D(G(Tr), k; e, j) = k2[D(G(Tv3 ), k; e)/k]2(

D(G(Tv1), k; e, j)/k2

2

)

= k2(k4)2(

k(k − 1)/2

2

)

= (k + 1)k11(k − 1)(k − 2)/8.

Next, let us computeB(G(Tr), k; e, j). We haveB(G(Tv1), k; e, j) = D(G(Tv1), k; e, j)−2D(G(Tv1), k; ej) =k2(k − 1)/2. Notice thatD1(G(Tv1), k; ej) = 0 because any labeling that assignse andj the same

22

Page 23: On Computing the Distinguishing Numbers of Planar Graphs

label cannot destroy the automorphism that mapse to j, j to e, f to itself, andg to itself. According toTheorem 4.6

B(G(Tr), k; e, j) = k D(G(Tv3), k; e)/k1

l=0

(

D1(G(Tv1 ), k; e, j)/k

l

)(

B(G(Tv1), k; e, j)/k

2− 2l

)

= k k41

l=0

(

0

l

)(

k(k − 1)/2

2− 2l

)

= k5

[(

0

0

)(

k(k − 1)/2

2

)

+

(

0

1

)(

k(k − 1)/2

0

)]

= (k + 1)k6(k − 1)(k − 2)/8.

Consequently,D(G, k) = D(G(Tr), k; ej) = [D(G(Tr), k; e, j) − B(G(Tr), k; e, j)]/2 = (k +1)k6(k − 1)(k − 2)(k5 − 1)/16. SinceD(G, 1) = D(G, 2) = 0 andD(G, 3) > 0, D(G) = 3.

Example 2. This time, consider the graph in Figure 6 and let us determineD(G(Tr), k; H). SinceAutr(H) ∼= D5, we can make use of the computations we made in the example after Theorem 3.6.It is easy to verify thatD(Gai,ai+1 , k; ai, ai+1) = k4 andD(Gai,ai+1 , k; aiai+1) = (k4 − k2)/2 fori = 1, . . . , 5. Let α =

∏5i=1 |Aut(Gai,ai+1 ; ai, ai+1)|. From Theorem 4.10, we haveN≥(∅)/α = k5 ×

(k2)5 = k15, N≥(πρ)/α = k× k2 = k3, N≥(πτρi)/α = k3× (k2)2(k4 − 2(k4− k2)/2)/k = k8

andN≥(πτρi , πρ)/α = k × (k4 − 2(k4 − k2)/2)/k = k2. Thus,

D(G(Tr), k; H) =1

10

[

N≥(∅)/α−N≥(πρ)/α−4

i=0

(

N≥(πτρi)/α−N≥(πτρi , πρ)/α)

]

=1

10

[

k15 − k3 −4

i=0

(k8 − k2)

]

=1

10

[

k15 − 5k8 − k3 + 5k2]

.

SinceD(G, 1) = 0 andD(G, 2) > 0, we conclude thatD(G) = 2.

In order forFindDist((G, k)) to run efficiently for a family of graphs, we note that a few ingredientsare necessary. It must have an efficient graph isomorphism testing algorithm to determine the isomor-phism classes ofG in Theorems 4.2, 4.3, and 4.6. There must also be an efficient algorithm that candetermine the automorphisms of its triconnected components which are needed in Theorem 4.8. Finally,there must be a way to apply the PIE formula in Theorem 4.8 to its triconnected components in an ef-ficient manner. Since the family of planar graphs satisfy these criteria, we can now proceed to provethe main result of the paper. We first show thatD(G(Tv), k; ∗), whenv is a t-vertex, can be computedefficiently when the appropriate values are known.

Lemma 4.12. Let G be a connected planar graph onn vertices andk be a positive integer. Letv bea t-vertex inTG, H be the triconnected component onnH vertices associated withv, andSH containthe separating pairs ofG in H used in the construction ofTG. Suppose all the automorphisms inAutv(H) and the values ofD(G(Tw), k; ∗), w a child ofv in TG, are known. ThenD(G(Tv), k; ∗) canbe computed inO(n2

Hn2 log2 k(nH + |SH |)) time.

Proof: As in Theorems 4.8 and 4.10, we will prove the theorem for D(G(Tv), k; H); others can beargued similarly. Letα =

a∈CH|Aut(Ga; a)| ×

x,y∈SH|Aut(Gx,y; x, y)|. First, let us consider

the time it takes to computeN≥(P )/α. Constructing∪σ∈P Hσ and finding itst connected componentscan be done inO(|P |×nH). Similarly, constructing∪σ∈P SPσ and finding a collectionSPP (xiyi), i =1, . . . , g that forms a partition of∪σ∈P SPσ takesO(|P | × |SH |) time. Finally, sinceN≥(P ) ≤ kn,

23

Page 24: On Computing the Distinguishing Numbers of Planar Graphs

every multiplication in∏t

i=1 κ(ai) ×∏g

i=1 κ(xiyi) takes at mostO(n2 log2 k) time; that is, findingthe said product takesO((t + g)n2 log2 k) = O((nH + |SH |)n2 log2 k) time. Therefore, computingN≥(P )/α takesO((nH + |SH |)(|P |+ n2 log2 k)) time.

SinceG is a connected planar graph, each of its blocksB are as well. It is easy to verify that whenthe split operation is applied toB, the resulting split graphs remain planar. Hence, the triconnectedcomponent associated withv is either a bond, a cycle or a triconnected planar graph, andAutv(H)belongs to one of the groups mentioned in Fact 3.8. From Corollary 4.9, we noted we can apply theformulas in Theorems 3.5, 3.6 and 3.7 forN=(σ0). Consequently, we can useTriconnectCount(H, k)to computeD(G(Tv), k; H) by doing two modifications – we replace every occurrence ofN≥(P ) withN≥(P )/α (keeping in mind that thek-labelings counted inN≥(P ) belong toL∗(G(Tv), k) and iscomputed using Theorem 4.10), and return the valueL(H, k)/|Autv(H)| instead ofL(H, k). It iseasy to check that the value returned isD(G(Tv), k; H). Applying the same analysis in Theorem 3.9,the bottleneck of the algorithm is in computing theO(n2

H) N≥(P )/α terms. Using the result fromthe previous paragraph and the fact that|P | ≤ log nH , the runtime of the algorithm isO(n2

H(nH +|SH |)(log nH + n2 log2 k)) time.

FindingD(G(Tv), k; ∗) can take significantly more time than findingD(H, k) becauseN≥(P ) inthe former case has to be explicitly computed from theD(G(Tw), k : ∗) values whereas, in the lattercase,N≥(P ) is always some power ofk which we precomputed ahead of time.

Theorem 4.13. LetG be ann-vertex connected planar graph andk be a positive integer. FindDist(G, k)can be implemented inO(n5 log2 k) time. Consequently, computingD(G) takesO(n5 log3 n) time.

Proof: To implementFindDist(G, k), we need to do some preprocessing steps.1. Isomorphism testing.For eachc- ands-vertex, determine the isomorphism classes of the graphs inG fixed at the appropriate vertices as described in Theorems 4.2, 4.3, and 4.6. Additionally, for eachs-vertex whose associated separating pair isx, y, determine ifG(Twx) fixed atx is isomorphic toG(Twy) fixed at y. For eacht-vertex, group together its children based on their type – i.e., if theyarec-vertices ors-vertices – and then for each group determine the isomorphism classes ofG(Tw) :w is a child ofv and ac-vertex (or ans-vertex) fixed at the appropriate vertices. Using the linear-timeplanar graph isomorphism testing algorithm, the isomorphism testing tasks at eachv can be done inO(deg(v)2n) time wheredeg(v) is the degree of vertexv in TG. The total time to do all the isomorphismtesting then takesO(n3) time since the size ofTG is O(n).2. Finding automorphisms.For eacht-vertexv whose associated triconnected component isH , findall the automorphisms inAut(H) using the algorithm described in Section 3.1. Apply the informa-tion obtained from the first preprocessing step to determinewhich of the automorphisms also belong toAutv(H) (or Autv(H ; ∗) where∗ depends onp(v)). That is, for eachπ ∈ Aut(H), verify thatπ mapscut vertices and separating pairs to cut vertices and separating pairs respectively; moreover,π also mapsthe subgraphs hanging from these vertices and pairs to isomorphic structures. FindingAut(H) takesO(n2

H) time wherenH is the number of vertices inH . Determining ifπ ∈ Aut(H) also belongs toAutv(H) takesO(nH + |SH |) time so findingAutv(H) takesO(n2

H + |Aut(H)|(nH + |SH |)) =O(n2

H + nH |SH |) time. FindingAutv(H) for all t-verticesv then takesO(n2) time since fromLemma 2.10

H nH = O(n) and∑

H |SH | = O(n).Let us now considerFindDist(G, k). ConstructingTG takesO(n2) time. The number of arith-

metic operations for computingD(G(Tv), k; ∗) whenv is ac-vertex and ans-vertex isO(deg(v)) andO(deg2(v)) respectively. And since the values involved in each operation is at mostkn, the total amountof work atv takesO(deg2(v)n2 log2 k) time. Summing this up for allc- ands-vertices inTG, the to-tal work takesO(n4 log2 k) time because the size ofTG is O(n). Whenv is a t-vertex, accordingto Lemma 4.12, computingD(G(Tv), k; ∗) takesO(n2

Hn2 log2 k(nH + |SH |)) time. Thus, for allt-vertices, the total work isO(n5 log2 k) time. From our analysis, the bottleneck ofFindDist(G, k) is inprocessing thet-vertices. The runtime in the theorem follows.

Corollary 4.14. LetG be ann-vertex planar graph. ThenD(G) can be computed inO(n5 log3 n) time.

24

Page 25: On Computing the Distinguishing Numbers of Planar Graphs

Proof: Using the linear time planar graph isomorphism testing algorithm, group together isomorphicconnected components ofG. So supposeG = m1G1 ∪ m2G2 ∪ . . . ∪ mgGg where eachGi hasni vertices. For eachGi, find ki so thatki = mink : D(Gi, k) ≥ mi. This can be done byimplementingFindDist(Gi, k) O(log n) times. Finally,D(G) = maxiki soD(G) can be found inO(

∑gi=1 n5

i log2 ni log n) = O(n5 log3 n) time.

5 Final Comments

In this paper, we consideredD(G, k), the number of inequivalent distinguishingk-labelings of graphG.We have applied the principle of inclusion/exclusion and developed recursive formulas to compute itsvalue for a fixedk. When a graphG is planar, we showed that these techniques led to an algorithm forcomputingD(G) that runs in time polynomial in the size ofG. There are other interesting aspects aboutD(G, k) as well as noted in the next theorem.

Theorem 5.1. Let G be a graph onn vertices. ThenD(G, k) is a polynomial ink whose degree isnand whose constant term is0. If G has no non-trivial automorphisms thenD(G, k) = kn; otherwise,the sum of the coefficients ofD(G, k) is 0.

Proof: In formula 3.2,N≥(P ) equalskn whenP = π0 andkt, t < n, otherwise, soD(G, k) mustbe a polynomial ink whose degree isn. Furthermore,D(G, 0) = 0, so the constant term inD(G, k)must be0. WhenG has no non-trivial automorphism, everyk-labeling ofG is distinguishing and notwo are equivalent; hence,D(G, k) = kn. WhenG has some non-trivial automorphisms,D(G, 1) = 0so it must be the case that the sum of the coefficients ofD(G, k) is 0.

We now callD(G, k) thedistinguishing polynomial ofG. An interesting research direction wouldbe to study this polynomial along the lines of the more famouschromatic polynomial ofG.

Next, consider Lemma 3.4 and its implications. According tothe lemma, ifS is the largest subsetof Aut(G) that preserves ak-labelingφ of G thenS must be a subgroup ofAut(G). This suggests thatinstead of considering all the subsets ofAut(G) as we do in PIE, we should just consider the subgrouplattice(S,≤) of Aut(G) whereS is the set that contains all the subgroups ofAut(G). For eachS ∈ S,defineN≥(S) andN=(S) as we did in the PIE formulation. SinceN≥(S) =

S′≥S N=(S′) for everyS ∈ S, according to the principle of Mobius inversion, the following must be true.

Theorem 5.2. Let (S,≤) be the subgroup lattice ofAut(G) and µ(∗, ∗) be the Mobius function of(S,≤). LetS0 be the subgroup ofAut(G) consisting of the identity automorphism ofG. Then

L(G, k) = N=(S0) =∑

S∈S:S≥S0

µ(S0, S)N≥(S).

Using the formula above, the number ofN≥(S) terms we have to compute to determineL(G, k)is |S| as opposed toΩ(2|Aut(G)|) in the PIE formulation. This of course comes at a price – we mustnow find all the subgroups ofAut(G), determine the structure of(S,≤), and then compute theµ(S0, S)values. We leave it up to the reader to apply Theorem 5.2 whenAut(G) ∼= Zt, Dt, Zt×Z2 or Dt×Z2.

Another direction in which we use Lemma 3.4 is a generalization of Theorem 3.5.

Theorem 5.3. LetS∗ be a subset ofAut(G) that does not contain the identity automorphism. Supposeevery non-trivial subgroup ofG contains at least one element ofS∗. Then

L(G, k) =∑

S⊆S∗

(−1)|S|N≥(S).

In the above theorem, the number ofN≥(S) terms to compute is2|S∗| so the smaller|S∗| is, the

better. Finding the smallestS∗, however, is non-trivial; it is thehitting set problemand is known to be

25

Page 26: On Computing the Distinguishing Numbers of Planar Graphs

NP-hard in general [13]. Again, we leave it up to the reader toformulate a generalization of Theorem 3.6similar to Theorem 5.3. Finally, we pose the following open problem.

Open Problem:Let G be a family of graphs for which there is an efficient algorithmfor testing graphisomorphism. Can the distinguishing number of graphs inG be computed efficiently? More specifically,is there a polynomial-time algorithm for computingD(G) if G is a bounded degree graph or a boundedgenus graph?

Acknowledgments

The second author would like to thank Jeb Willenbring for discussions she had with him on Section 3 ofthe paper. The authors are also grateful to the anonymous referees for their comments which improvedthe presentation of the paper.

References

[1] A. Aho, J. Hopcroft, and J. Ullman.The Design and Analysis of Algorithms. Addison-Wesley,1974.

[2] M. Albertson. Distinguishing cartesian powers of graphs. Electronic Journal of Combinatorics,12:N17, 2005.

[3] M. Albertson and K. Collins. Symmetry breaking in graphs. Electronic Journal of Combinatorics,3:R18, 1996.

[4] V. Arvind and N. Devanur. Symmetry breaking in trees and planar graphs by vertex coloring. InProceedings of the Nordic Combinatorial Conference, 2004.

[5] W. Bogstad and L. Cowen. The distinguishing number of thehypercube.Discrete Mathematics,283:29–35, 2004.

[6] M. Chan. The distinguishing number of the direct productand wreath product action.Journal ofAlgebraic Combinatorics, 24:331–345, 2006.

[7] M. Chan. The maximum distinguishing number of a group.Electronic Journal of Combinatorics,13:R70, 2006.

[8] M. Chan. The distinguishing number of the augmented cubeand hypercube powers.DiscreteMathematics, 2007. Available online.

[9] C. Cheng. On computing the distinguishing numbers of trees and forests.Electronic Journal ofCombinatorics, 13:R11, 2006.

[10] K. Collins and A. Trenk. The distinguishing chromatic number. Electronic Journal of Combina-torics, 13:R16, 2006.

[11] R. Diestel.Graph Theory. Springer-Verlag, 3rd edition, 2006.

[12] T. Fukuda, S. Negami, and T. Tucker. 3-connected planargraphs are 2-distinguishable with fewexceptions. Preprint.

[13] M. Garey and D. Johnson.Computers and Intractability: a Guide to the Theory of NP-Completeness. W.H. Freeman and Company, 1979.

[14] J. Hopcroft and R. Tarjan. Dividing a graph into triconnected components.SIAM Journal ofComputing, 2:135–158, 1973.

[15] J. Hopcroft and J. Wong. Linear time algorithm for isomorphism of planar graphs. InProceedingsof 6th ACM Symposium on Theory of Computing, pages 172–184, 1974.

26

Page 27: On Computing the Distinguishing Numbers of Planar Graphs

[16] W. Imrich and S. Klavzar. Distinguishing cartesian powers of graphs.Journal of Graph Theory,53:250–260, 2006.

[17] S. Klavzar, T.-L. Wong, and X. Zhu. Distinguishing labelings of group action on vector spaces andgraphs.Journal of Algebra, 303:626–641, 2006.

[18] P. Mani. Automorphismen von polyedrischen graphen.Math. Ann., pages 279–303, 1971.

[19] A. Russell and R. Sundaram. A note on the asymptotics andcomputational complexity of graphdistinguishability.Electronic Journal of Combinatorics, 5:R23, 1998.

[20] T. Tucker. Distinguishability of maps. Preprint.

[21] J. Tymoczko. Distinguishing numbers for graphs and groups.Electronic Journal of Combinatorics,11(1):R63, 2004.

27