On Symbolic Ultrametrics, Cotree Representations, and Cograph Edge Decompositions and Partitions
Symbolic ultrametrics define edge-colored complete graphs and yield a simple tree representation of . We discuss, under which conditions this idea can be generalized to find a symbolic ultrametric that, in addition, distinguishes between edges and non-edges of arbitrary graphs and thus, yielding a simple tree representation of . We prove that such a symbolic ultrametric can only be defined for if and only if is a so-called cograph. A cograph is uniquely determined by a so-called cotree. As not all graphs are cographs, we ask, furthermore, what is the minimum number of cotrees needed to represent the topology of . The latter problem is equivalent to find an optimal cograph edge -decomposition of so that each subgraph of is a cograph. An upper bound for the integer is derived and it is shown that determining whether a graph has a cograph 2-decomposition, resp., 2-partition is NP-complete.
Given an arbitrary edge-colored complete graph on vertices, Böcker and Dress  asked, whether there is a tree representation of this , i.e., a rooted tree with leaf set together with a labeling of the non-leaf vertices in so that the least common ancestor of distinct leaves and is labeled with the respective color of the edge . The pair is then called symbolic representation of the edge-colored graph . The authors showed, that there is a symbolic representation if and only if the map that assigns colors or symbols to the edges in fulfills the properties of a so-called symbolic ultrametric . Such maps are crucial for the characterization of relationships between genes or proteins, so-called orthology relations [13, 14, 15], that lie at the heart of many phylogenomic studies.
Inspired by the work of Böcker and Dress, we address the following problem: Does there exist, for an arbitrary undirected graph a symbolic ultrametric and thus, a symbolic representation of so that one can distinguish between edges and non-edges of ? In other words, we ask for a coloring of the edges , as well as the non-edges , so that the topology of can be displayed by a rooted vertex-labeled tree s.t. for all distinct vertices the labeling of the lowest common ancestor is equal to . The first result of this contribution provides that such a symbolic ultrametric can only be defined for if and only if is a cograph. This, in particular, establishes another new characterization of cographs.
Cographs are characterized by the absence of induced paths on four vertices. Moreover, Lerchs [16, 17] showed that each cograph is associated with a unique rooted tree , called cotree. Obviously, not all graphs are cographs and thus, don’t have a cotree representation. Therefore, we ask for the minimum number of cotrees that are needed to represent the structure of a given graph in an unambiguous way. As it will turn out, this problem is equivalent to find a decomposition of (the elements of need not necessarily be disjoint) for the least integer , so that each subgraph , is a cograph. Such a decomposition is called cograph edge -decomposition, or cograph -decomposition, for short. If the elements of are in addition pairwise disjoint, we call a cograph -partition. We will prove that finding the least integer so that has a cograph -decomposition or a cograph -partition is an NP-hard problem. Moreover, upper bounds for the integer for any cograph -decomposition are derived. These findings complement results known about so-called cograph vertex partitions [1, 11, 10, 26].
2 Basic Definitions
Graph. In what follows, we consider undirected simple graphs with vertex set and edge set . The complement graph of , has edge set . The graph with is called complete graph. A graph is an induced subgraph of , if and all edges with are contained in . The degree of a vertex is defined as the number of edges that contain . The maximum degree of a graph is denoted with .
Rooted Tree. A connected graph is a tree, if does not contain cycles. A vertex of a tree of degree one is called a leaf of and all other vertices of are called inner vertices. The set of inner vertices of is denoted by . A rooted tree is a tree that contains a distinguished vertex called the root. The first inner vertex that lies on both unique paths from distinct leaves , resp., to the root, is called most recent common ancestor of and . If there is no danger of ambiguity, we will write rather then .
Symbolic Ultrametric and Symbolic Representation. In what follows, the set will always denote a non-empty finite set, the symbol will always denote a special element not contained in , and . Now, suppose is an arbitrary non-empty set and a map. We call a symbolic ultrametric if it satisfies the following conditions:
if and only if ;
for all , i.e. is symmetric;
for all ; and
there exists no subset such that
Now, suppose that is a rooted tree with leaf set and that is a map such that for all . To the pair we associate the map on by setting, for all ,
Clearly this map is symmetric and satisfies (U0). We call the pair a symbolic representation of a map , if holds for all . For a subset we denote with the restriction of to the set .
Cographs and Cotrees. Complement-reducible graph, cographs for short, are defined as the class of graphs formed from a single vertex under the closure of the operations of union and complementation, namely: (i) a single-vertex graph is a cograph; (ii) the disjoint union of cographs is a cograph; (iii) the complement of a cograph is a cograph. Alternatively, a cograph can be defined as a -free graph (i.e. a graph such that no four vertices induce a subgraph that is a path of length 3), although there are a number of equivalent characterizations of such graphs (see e.g.  for a survey). It is well-known in the literature concerning cographs that, to any cograph , one can associate a canonical cotree . This is a rooted tree, leaf set equal to the vertex set of and inner vertices that represent so-called ”join” and ”union” operations together with a labeling map such that for all it holds that , and for all and all children of , (cf. ).
Cograph -Decomposition and Partition, and Cotree Representation. Let be an arbitrary graph. A decomposition of is a called (cograph) -decomposition, if each subgraph , of is a cograph. We call a (cograph) -partition if , for all distinct . A -decomposition is called optimal, if has the least number of elements among all cograph decompositions of . Clearly, for a cograph only k-decompositions with are optimal. A -decomposition is coarsest, if no elements of can be unified, so that the resulting decomposition is a cograph -decomposition, with . In other words, is coarsest, if for all subsets with it holds that is not a cograph. Thus, every optimal -decomposition is also always a coarsest one.
A graph is represented by a set of cotrees , each with leaf set , if and only if for each edge there is a tree with .
The Cartesian (Graph) Product has vertex set ; two vertices , are adjacent in if and , or and . It is well-known that the Cartesian product is associative, commutative and that the single vertex graph serves as unit element . Thus, the product of arbitrary many factors is well-defined. For a given product , we define the -layer of (through vertex that has coordinates ) as the induced subgraph with vertex set . Note, is isomorphic to for all , . The -cube is the Cartesian product .
3 Symbolic Ultrametrics
Symbolic ultrametrics and respective representations as event-labeled trees, have been first characterized by Böcker and Dress .
Suppose is a map. Then there is a symbolic representation of if and only if is a symbolic ultrametric. Furthermore, this representation can be computed in polynomial time.
Let be a map satisfying Properties (U0) and (U1). For each fixed , we define an undirected graph with edge set
Thus, the map can be considered as an edge coloring of a complete graph , where each edge obtains color . Hence, denotes the subgraph of the edge-colored graph , that contains all edges colored with . The following result establishes the connection between symbolic ultrametrics and cographs.
Theorem 3.2 ().
Let be a map satisfying Properties (U0) and (U1). Then is a symbolic ultrametric if and only if
For all there is an such that contains two of the three edges , , and .
is a cograph for all .
Assume now, we have given an arbitrary subgraph . Let be a map defined on so that edges obtain a different color then the non-edges of . The questions then arises, whether such a map fulfilling the properties of symbolic ultrametric can be defined and thus, if there is tree representation of . Of course, this is possible only if restricted to , resp., is a symbolic ultrametric, while it also a symbolic ultrametric on the complete graph . The next theorem answers the latter question and, in addition, provides a new characterization of cographs.
Let be an arbitrary (possibly disconnected) graph, and . There is a symbolic ultrametric s.t. if and only if is a cograph.
First assume that is a cograph. Set for all and set if and, otherwise, to . Hence, condition and are fulfilled. Moreover, by construction and thus, condition is trivially fulfilled. Furthermore, since and its complement are cographs, is satisfied. Theorem 3.2 implies that is a symbolic ultrametric.
Now, let be a symbolic ultrametric with . Assume for contradiction that is not a cograph. Then contains an induced path . Therefore, at least one edge of this path must obtain a color different from the other two edges contained in this , as otherwise is not a cograph and thus, is not a symbolic ultrametric (Theorem 3.2). For all such possible maps “subdividing” this we always obtain that two edges of at least one of the underlying paths or must have different colors. W.l.o.g. assume that . Since and we can conclude that and . But then condition cannot be satisfied, and Theorem 3.2 implies that is not a symbolic ultrametric. ∎∎
The latter result implies, that there is no hope for finding a map for a graph , that assigns symbols or colors to edges, resp., non-edges such that for (and hence, for ) there is a symbolic representation , unless is already a cograph. In other words, every symbolic representation for an arbitrary graph (which only exists if is a cograph) is a cotree. However, this result does not come as a big surprise, as a cograph is characterized by the existence of a unique (up to isomorphism) cotree representing the topology of . The (decision version of the) problem to edit a given graph into a cograph , and thus, to find the closest graph that has a symbolic representation, is NP-complete [18, 19]. In this contribution, we are interested in the following problem: What is the minimum number of cotrees that are needed to represent the topology of in an unambiguous way?
4 Cotree Representation and Cograph -Decomposition
Recollect, a graph is represented by a set of cotrees , if and only if for each edge there is a tree with . Note, by definition, each cotree determines a subset of . Hence, the subgraph must be a cograph. Therefore, in order to find the minimum number of cotrees representing a graph , we can equivalently ask for a decomposition of so that each subgraph is a cograph, where is the least integer among all cograph decompositions of . Thus, we are dealing with the following two equivalent problems.
|Input:||Given a graph and an integer .|
|Question:||Can be represented by cotrees?|
|Input:||Given a graph and an integer .|
|Question:||Is there a cograph -decomposition of ?|
Clearly, any cograph has an optimal -decomposition, while for cycles of length or paths there is always an optimal cograph 2-decomposition. However, there are examples of graphs that do not have a 2-decomposition, see Figure 1. To derive an upper bound for the integer s.t. there is a cograph -decomposition for arbitrary graphs, the next theorem is given.
For every graph with maximum degree there is a cograph -decomposition with that can be computed in time. Hence, any graph can be represented by at most cotrees.
Consider a proper edge-colorings of , i.e., an edge coloring such that no two incident edges obtain the same color. Any proper edge-coloring using colors yields a cograph -partition where , because any connected component in is an edge and thus, no ’s are contained in . Vizing’s Theorem  implies that for each graph there is a proper edge-coloring using colors with .
Obviously, any optimal -decomposition must also be a coarsest -decomposition, while the converse is in general not true, see Fig.2. The partition obtained from a proper edge-coloring is usually not a coarsest one, as possibly is a cograph, where and . A graph having an optimal cograph -decomposition is shown in Fig. 1. Thus, the derived bound is almost sharp. Nevertheless, we assume that this bound can be sharpened:
For every graph with maximum degree there is a cograph -decomposition.
However, there are examples of non-cographs containing many induced ’s that have a cograph -decomposition with , which implies that any optimal -decomposition of those graphs will have significantly less elements than , see the following examples.
Consider the graph with vertex set and . The graph is not a cograph, since there are induced ’s of the form , . On the other hand, the subgraph has two connected components, one is isomorphic to the complete graph on vertices and the other to the complete graph . Hence, is a cograph. Therefore, has a cograph 2-partition , independent from and thus, independent from the maximum degree .
Consider the 2n-dimensional hypercube with maximum degree . We will show that this hypercube has a coarsest cograph -partition , which implies that for any optimal cograph -decomposition of we have .
We construct now a cograph -partition of . Note, . In order to avoid ambiguity, we write as , and assume that has edges , , , . The cograph -partition of is defined as , where . In other words, the edge set of all -layers in constitute a single class in the partition for each . Therefore, the subgraph consists of connected components, each component is isomorphic to the square . Hence, is a cograph.
Assume for contradiction that is not a coarsest partition. Then there are distinct classes , such that is a cograph. W.l.o.g. assume that and let . Then, the subgraph contains a path with edges and , where x=(1,0,…,0), a=(0,1,0…,0) and . By definition of the Cartesian product, there are no edges connecting with or or with in and thus, this path is induced. As this holds for all subgraphs ( distinct) and thus, in particular for the graph we can conclude that classes of cannot be combined. Hence is a coarsest cograph -partition.
Because of the results of computer-aided search for -partitions and decompositions of hypercubes we are led to the following conjecture:
Let and . Then the -cube has no cograph -decomposition, i.e., the proposed -partition of the hypercube in Example 2 is also optimal.
The proof of the latter hypothesis would immediately verify the next conjecture.
For every there is a graph that has an optimal cograph -decomposition.
Proving the last conjecture appears to be difficult. We wish to point out that there is a close relationship to the problem of finding pattern avoiding words, see e.g. [5, 7, 23, 22, 3, 2]: Consider a graph and an ordered list of the edges . We can associate to this list a word . By way of example, assume that we want to find a valid cograph 2-decomposition of and that contains an induced consisting of the edges . Hence, one has to avoid assignments of the edges to the single set , resp., . The latter is equivalent to find a binary word such that , for each of those induced ’s. The latter can easily be generalized to find pattern avoiding words over an alphabet to get a valid -decomposition. However, to the authors knowledge, results concerning the counting of -ary words avoiding forbidden patterns and thus, verifying if there is any such word (or equivalently a -decomposition) are basically known for scenarios like: If (often ), then none of the words that contain a subword with (consecutive letter positions) or whenever (order-isomorphic letter positions) is allowed. However, such findings are to restrictive to our problem, since we are looking for words, that have only on a few, but fixed positions of non-allowed patterns. Nevertheless, we assume that results concerning the recognition of pattern avoiding words might offer an avenue to solve the latter conjectures.
4.1 NP-completeness and NP-hardness Results
We are now in the position to prove the NP-completeness of Cotree 2-Representation and Cotree 2-Decomposition. These results allow to show that the problem of determining whether there is cograph 2-partition is NP-complete, as well.
For the literal and extended literal graph in Figure 3 every cograph 2-decomposition is a uniquely determined cograph 2-partition.
In particular, in every cograph 2-partition of the extended literal graph, the edges of the triangle must be entirely contained in one and the pending edge must be in the same edge set as the edges of the of the triangle. Furthermore, the edges and must be contained in , .
It is easy to verify that the given cograph 2-partition in Fig. 3 fulfills the conditions and is correct, since and do not contain induced ’s and are, thus, cographs. We have to show that it is also unique.
Assume that there is another cograph 2-decomposition . Note, for any cograph 2-decomposition it must hold that two incident edges in the triangle are contained in one of the sets or . W.l.o.g. assume that .
Assume first that . In this case, because of the paths and it must hold that and thus, . However, in this case and due to the paths and the edge can neither be contained in nor in , a contradiction. Hence, .
Note, the square induced by vertices cannot have all edges in , as otherwise the subgraph would contain the induced . Assume that . As not all edges are contained in , at least one of the edges and must be contained in . If only one of the edges , resp., is contained in , we immediately obtain the induced , resp., in and therefore, both edges and must be contained in . But then the edge can neither be contained in (due to the induced ) nor in (due to the induced ), a contradiction. Hence, and thus, for any -decomposition. By analogous arguments and due to symmetry, all edges , , , , are contained in , but not in .
Moreover, due to the induced and since , the edge must be in and not in . By analogous arguments and due to symmetry, it holds that and . Finally, none of the edges of the triangle can be contained in , as otherwise, we obtain an induced in . Taken together, any -decomposition of the literal graph must be a partition and is unique.
Consider now the extended literal graph in Figure 3. As this graph contains the literal graph as induced subgraph, the unique -partition of the underlying literal graph is determined as by the preceding construction. Due to the path with we can conclude that and thus . Since there are induced paths , with we obtain that and thus, for any -decomposition (which is in fact a -partition) of the extended literal graph, as claimed. ∎
Given the clause gadget in Fig. 4.
For any cograph 2-decomposition, all edges of exactly two of the triangles in the underlying three extended literal graphs must be contained in one and not in , while the edges of the triangle of one extended literal graph must be in and not in , .
Furthermore, for each cograph 2-decomposition exactly two of the edges of the triangle must be in one while the other edge is in but not in , . The cograph 2-decomposition can be chosen so that in addition , resulting in a cograph 2-partition of the clause gadget.
It is easy to verify that the given cograph 2-partition in Fig. 4 fulfills the conditions and is correct, as and are cographs.
As the clause gadget contains the literal graph as induced subgraph, the unique -partition of the underlying literal graph is determined as by the construction given in Lemma 4.2. Thus, each edge of the triangle in each underlying literal graph is contained in either one of the sets or . Assume that edges of the triangles in the three literal gadgets are all contained in the same set, say . Then, Lemma 4.2 implies that and none of them is contained in . Since there are induced ’s: , and , the edges cannot be contained in , and thus must be in . However, this is not possible, since then we would have the induced paths in the subgraph a contradiction. Thus, the edges of the triangle of exactly one literal gadget must be contained in a different set than the edges of the other triangles in the other two literal gadgets. W.l.o.g. assume that the -decomposition of the underlying literal gadgets is given as in Fig. 4. and identify bold-lined edges with and dashed edges with .
It remains to show that this 2-decomposition of the underlying three literal gadgets determines which of the edges of triangle are contained in which of the sets and . Due to the induced path and since , the edge cannot be contained in and thus, is contained in . Moreover, if , then then there is an induced path in the subgraph , a contradiction. Hence, and by analogous arguments, . If and , then we obtain a cograph 2-partition. However, it can easily be verified that there is still a degree of freedom and is allowed for a valid cograph 2-decomposition. ∎
We are now in the position to prove NP-completeness of Cograph 2-Partition by reduction from the following problem.
Monotone NAE 3-SAT
Input: Given a set of Boolean variables and a set of clauses over such that for all it holds that and contains no negated variables. Question: Is there a truth assignment to such that in each not all three literals are set to true?
Cograph 2-Decomposition, and thus, Cotree 2-Representation is NP-complete.
Given a graph and cograph 2-decomposition , one can verify in linear time whether is a cograph . Hence, Cograph 2-Partition NP.
We will show by reduction from Monotone NAE 3-SAT that Cograph 2-Decomposition is NP-hard. Let be an arbitrary instance of Monotone NAE 3-SAT. Each clause is identified with a triangle . Each variable is identified with a literal graph as shown in Fig. 3 (left) and different variables are identified with different literal graphs. Let and , and the respective literal graphs. Then, we extend each literal graph by adding an edge . Moreover, we add to the edges , to the edges , to the edges . The latter construction connects each literal graph with the triangle of the respective clause in a unique way, see Fig. 4. We denote the clause gadgets by for each clause . We repeat this construction for all clauses of resulting in the graph . An illustrative example is given in Fig. 5. Clearly, this reduction can be done in polynomial time in the number of clauses.
We will show in the following that has a cograph 2-decomposition (resp., a cograph 2-partition) if and only if has a truth assignment .
Let have a truth assignment. Then in each clause at least one of the literals is set to true and one to false. We assign all edges of the triangle in the corresponding literal graph to , if and to , otherwise. Hence, each edge of exactly two of the triangles (one in and one in contained in one and not in , while the edges of the other triangle in , are contained in and not in , , as needed for a possible valid cograph 2-decomposition (Lemma 4.3). We now apply the construction of a valid 2-decomposition (or 2-partition) for each as given in Lemma 4.3, starting with the just created assignment of edges contained in the triangles in , and to or . In this way, we obtain a valid 2-decomposition (or 2-partition) for each subgraph of . Thus, if there would be an induced in with all edges belonging to the same set , then this can only have edges belonging to different clause gadgets . By construction, such a can only exist along different clause gadgets and only if and have a literal in common. In this case, Lemma 4.3 implies that the edges and in must belong to the same set . Again by Lemma 4.3, the edges and , as well as the edges and , must be in a different set than and . Moreover, respective edges in , as well as in (Fig. 3) must then be in , i.e., in the same set as and . However, in none of the cases it is possible to find an induced with all edges in the same set or along different clause gadgets. Hence, we obtain a valid cograph 2-decomposition, resp., cograph 2-partition of .
Now assume that has a valid cograph 2-decomposition (or a 2-partition). Any variable contained in some clause is identified with a literal graph . Each clause is, by construction, identified with exactly three literal graphs , resulting in the clause gadget . Each literal graph contains exactly one triangle . Since is an induced subgraph of , we can apply Lemma 4.3 and conclude that for any cograph 2-decomposition (resp., 2-partition) all edges of exactly two of three triangles are contained in one set , but not in , and all edges of the other triangle are contained in , but not in , . Based on these triangles we define a truth assignment to the corresponding literals: w.l.o.g. we set true if the edge is contained in and false otherwise. By the latter arguments and Lemma 4.3, we can conclude that, given a valid cograph 2-partitioning, the so defined truth assignment is a valid truth assignment of the Boolean formula , since no three different literals in one clause obtain the same assignment and at least one of the variables is set to true. Thus, Cograph 2-Decomposition is NP-complete
Finally, because Cograph 2-Decomposition and Cotree 2-Representation are equivalent problems, the NP-completeness of Cotree 2-Representation follows. ∎
As the proof of Theorem 4.5 allows us to use cograph 2-partitions in all proof steps, instead of cograph 2-decompositions, we can immediately infer the NP-completeness of the following problem for k=2, as well.
Input: Given a graph and an integer . Question: Is there a Cograph -Partition of ?
Cograph 2-Partition is NP-complete.
As a direct consequence of the latter results, we obtain the following theorem.
Let be a given graph that is not a cograph. The following three optimization problems to find the least integer so that there is a Cograph -Partition, or a Cograph -Decomposition, or a Cotree -Representation for the graph , are NP-hard.
This work was funded by the German Research Foundation (DFG) (Proj. No. MI439/14-1).
- D. Achlioptas. The complexity of g-free colourability. Discrete Mathematics, 165â166(0):21 – 30, 1997. Graphs and Combinatorics.
- A. Bernini, L. Ferrari, and R. Pinzani. Enumeration of some classes of words avoiding two generalized patterns of length three. arXiv preprint arXiv:0711.3387, 2007.
- S. Bilotta, E. Grazzini, E. Pergola, and V.GB. Morgagni. Counting binary words avoiding alternating patterns. Journal of Integer Sequences, 16(2):3, 2013.
- S. Böcker and A.W.M. Dress. Recovering symbolically dated, rooted trees from symbolic ultrametrics. Adv. Math., 138:105–125, 1998.
- P. Brändén and T. Mansour. Finite automata and pattern avoidance in words. Journal of Combinatorial Theory, Series A, 110(1):127 – 145, 2005.
- A. Brandstädt, V.B. Le, and J.P. Spinrad. Graph Classes: A Survey. SIAM Monographs on Discrete Mathematics and Applications. Soc. Ind. Appl. Math., Philadephia, 1999.
- A. Burstein and T. Mansour. Words restricted by patterns with at most 2 distinct letters. Electron. J. Combin. Number Theory, 9(2):1–16, 2002.
- D. G. Corneil, H. Lerchs, and L K Stewart Burlingham. Complement reducible graphs. Discr. Appl. Math., 3:163–174, 1981.
- D.G. Corneil, Y. Perl, and L.K. Stewart. A linear recognition algorithm for cographs. SIAM Journal on Computing, 14(4):926–934, 1985.
- P. Dorbec, M. Montassier, and P. Ochem. Vertex partitions of graphs into cographs and stars. Journal of Graph Theory, 75(1):75–90, 2014.
- J. Gimbel and J. Nesětrǐl. Partitions of graphs into cographs. Electronic Notes in Discrete Mathematics, 11(0):705 – 721, 2002. The Ninth Quadrennial International Conference on Graph Theory, Combinatorics, Algorithms and Applications.
- R. Hammack, W. Imrich, and S. Klavžar. Handbook of Product graphs. CRC Press, Boca Raton, 2nd edition, 2011.
- M. Hellmuth, M. Hernandez-Rosales, K. T. Huber, V. Moulton, P. F. Stadler, and N. Wieseke. Orthology relations, symbolic ultrametrics, and cographs. Journal of Mathematical Biology, 66(1-2):399–420, 2013.
- M. Hellmuth, N. Wiesecke, H.P. Lenhof, M. Middendorf, and P.F. Stadler. Phylogenomics with paralogs. PNAS, 2015. (in press).
- M. Lafond and N. El-Mabrouk. Orthology and paralogy constraints: satisfiability and consistency. BMC Genomics, 15(Suppl 6):S12, 2014.
- H. Lerchs. On cliques and kernels. Technical report, Dept. of Comput. Sci. University of Toronto, 1971.
- H. Lerchs. On the clique-kernel structure of graphs. Technical report, Dept. of Comput. Sci. University of Toronto, 1971.
- Y. Liu, J. Wang, J. Guo, and J. Chen. Cograph editing: Complexity and parametrized algorithms. In B. Fu and D. Z. Du, editors, COCOON 2011, volume 6842 of Lect. Notes Comp. Sci., pages 110–121, Berlin, Heidelberg, 2011. Springer-Verlag.
- Y. Liu, J. Wang, J. Guo, and J. Chen. Complexity and parameterized algorithms for cograph editing. Theoretical Computer Science, 461(0):45 – 54, 2012.
- J. Misra and David Gries. A constructive proof of vizing’s theorem. Information Processing Letters, 41(3):131 – 133, 1992.
- B. M. Moret. The Theory of Computation. Addison-Wesley, 1997.
- L.K. Pudwell. Enumeration schemes for pattern-avoiding words and permutations. ProQuest, 2008.
- L.K. Pudwell. Enumeration schemes for words avoiding patterns with repeated letters. Electron. J. Combin. Number Theory, 8(A40):1–19, 2008.
- T.J. Schaefer. The complexity of satisfiability problems. In Proceedings of the tenth annual ACM symposium on Theory of computing, STOC ’78, pages 216–226, New York, NY, USA, 1978. ACM.
- V. G. Vizing. On an estimate of the chromatic class of a p-graph. Journal of Mathematical Biology, 3:23–30, 1964. (Russian).
- P. Zhang. A study on generalized solution concepts in constraint satisfaction and graph colouring. Master’s thesis, University of British Columbia, Canada, 2014.