25 minute read

INTERVAL EDGE-COLORING WITH RESTRICTIONS ON EDGES FOR GRAPHS WITH SPECIAL STRUCTURES OF CYCLES

INTERVAL EDGE-COLORING WITH RESTRICTIONS ON EDGES FOR GRAPHS WITH SPECIAL STRUCTURES OF CYCLES

Sahakyan A.

Advertisement

Ph.D. Student, Chair of Discrete Mathematics and Theoretical Informatics, Faculty of Informatics and Applied Mathematics, Yerevan State University, Armenia

DOI: 10.24412/3453-9875-2021-71-13-19

Abstract

An edge-coloring of a graph �� with consecutive integers ��1,…,���� is called an interval t-coloring, if all colors are used, and the colors of edges incident to any vertex of �� are distinct and form an interval of integers. A graph �� is interval colorable if it has an interval t-coloring for some positive integer ��. In this paper, we consider the case where there are restrictions on the edges, and the interval edge-coloring should satisfy these restrictions. A cyclic tree is a connected graph in which every vertex belongs to at most one simple cycle. A cycle with chords is a graph that consists of a cycle with vertices 1,…,�� and for any two distinct chords (��1,��1) with ��1 <��1 and (��2,��2) with ��2 <��2, either ��1 ≤��2 or ��2 ≤��1. We provide polynomial algorithms for finding an interval edge-coloring that meets the restrictions on edges for cyclic trees and cycles with chords.

Keywords: trees, cyclic trees, cycle with chords, interval t-coloring, interval edge-coloring, restrictions on edges, bipartite matching, dynamic programming

Introduction

All graphs considered in this paper are undirected (unless explicitly said), finite, and have no loops or multiple edges. For a graph ��, let ��(��) and ��(��) denote the sets of vertices and edges of ��, respectively. The degree of a vertex �� ∈��(��) is denoted by ����(��). The maximum degree of vertices in �� is denoted by Δ(��).

The graph �� is called the underlying graph of a directed graph �� ⃗ if ��(��) =��(�� ⃗ ) and ��(��)= {(��,��)�������� →�������� →��} (between any pair of vertices �� and ��, if the directed graph has an edge �� →�� or an edge �� →��, the underlying graph includes the edge (��,��)).

A cyclic tree is a connected graph in which every vertex belongs to at most one simple cycle. We say that the graph �� is labeled if the labels of the vertices are 1,…,��. A cycle with chords is a labeled graph that consists of a cycle with vertices 1,…,�� and for any two distinct chords (��1,��1) with ��1 <��1 and (��2,��2) with ��2 <��2, either ��1 ≤��2 or ��2 ≤��1.

An edge-coloring of a graph �� is an assignment of colors to the edges of the graph so that no two adjacent edges have the same color [1]. An interval edge-coloring of a graph �� is an edge-coloring with positive integers such that for each vertex �� the colors of edges incident to �� form an interval of integers. An interval edge-coloring of a graph �� with colors 1,…,�� is an interval ��-coloring if all colors are used. A graph �� is interval colorable if it has an interval t-coloring for some positive integer ��. The set of all interval colorable graphs is denoted by ��. The concept of an interval edge-coloring of a graph was introduced by Asratian and Kamalian [2]. This means that an interval t-coloring is a function ��:��(��)→{1,…,��} such that for each edge �� the color ��(��) of that edge is an integer from 1 to ��, for each color from 1 to �� there is an edge with that color and for each vertex �� all the edges incident to �� have different colors forming an interval of integers. For a graph �� ∈��, the least and the greatest values of �� for which �� has an interval ��-coloring are denoted by ��(��) and ��(��), respectively.

The set of integers {��,��+1,…,��}, �� ≤��, is denoted by [��,��]. Let ���� be the set [1,��] of integers, then 2���� is the set of all the subsets of ����. For two positive integers �� and ��, ���������������� is denoted by ����������.

For an interval coloring, �� and a vertex ��, the set of all the colors of the incident edges of �� is called the spectrum of that vertex in �� and is denoted by ����(��). The smallest and the largest numbers in ����(��) are denoted by ����(��) and ����(��), respectively.

We consider the following problem:

Problem 1: Given a graph �� and for some �� restrictions on the edges ��:��(��)→2����. Find an interval edge-coloring ��:��(��) →���� such that ��(��)∈��(��) for all �� ∈ ��(��).

We provide polynomial algorithms for the Problem 1 in the case of cyclic trees and cycles with chords.

Interval edge-colorings have been intensively studied in different papers. Lower and upper bounds on the number of colors in interval edge-colorings were provided in [3, 4] and the bounds were improved for different graphs: planar graphs [5], r-regular graphs with at least 2⋅��+2 vertices [6], cycles, trees, complete bipartite graphs [3], n-dimensional cubes [7,8], complete graphs [9, 10], Harary graphs [11], complete k-partite graphs [12], even block graphs [13]. Interval edge-colorings of trees with restrictions on edges were considered in [14], and a polynomial solution was provided. Interval edge-colorings with strict restrictions on the spectrums were considered in [15] for trees, in [16] for cactus graphs.

Interval edge-coloring of cyclic trees with restrictions on edges

Cyclic trees are similar to cactus graphs, but the main difference is that in the case of cactus graphs, a vertex can belong to multiple cycles while in the case of cyclic trees, every vertex can belong to at most one

14 Norwegian Journal of development of the International Science No 71/2021 cycle. Here we consider the Problem 1 for cyclic trees. Let �� be a cyclic tree and let �� =|��(��)|. We can assume that the restrictions are from [1,��] since we consider edge-colorings. The problem is now the following:

Problem 2: Given a cyclic tree �� with �� = |��(��)| vertices, �� =|��(��)| edges, and some restrictions on the edges ��:��(��)→2����. Find an interval edge-coloring ��:��(��) →���� such that ��(��) ∈��(��) for all �� ∈ ��(��). For a tree �� and a vertex ��, let ���� be the directed graph whose underlying graph is �� and in ���� each edge is directed in such a way that for each vertex �� ∈��(����) there is a path in ���� from �� to ��. We will say that ���� is a rooted tree with a root ��. Fig. 1 illustrates the rooted tree ����1 with the root ��1.

Fig. 1. A rooted tree ����1 with the root ��1.

Let ���� be a rooted tree, the depth of a vertex ��, denoted by ℎ(��), is the length of the unique path from the root �� to the vertex ��. A vertex �� is said to be the parent of the vertex ��, denoted by ��(��), if �� →��. In that case the vertex �� is said to be a child of the vertex ��. The children of a vertex �� ∈��(����) are the set �� ⊆ ��(����) of all vertices �� of the tree ���� satisfying the condition �� →��. A vertex having no children is said to be a leaf vertex. Non-root two vertices ��,�� ∈��(����) are said to be sibling vertices if ��(��) =��(��). For a vertex �� let ��(��) be the subtree induced by all the vertices �� such that there is a path from �� to �� in ���� [1].

We use Depth-first search algorithm [17]. Depthfirst search (DFS) is an algorithm for traversing or searching tree or graph data structures. The algorithm starts at the root vertex (selecting some arbitrary vertex as the root vertex in the case of a graph) and explores as far as possible along each branch before backtracking. In a depth-first search of an undirected graph ��, every edge of �� is either a tree edge or a back edge (the Theorem 22.10 [17]). If we start the DFS algorithm from a vertex �� on a connected graph, then the DFS tree will be the rooted tree ���� that contains all the tree edges from the traversing. The DFS graph will be the directed graph that, in addition to the DFS tree, also includes the back edges.

First, we construct the DFS graph of the cyclic tree �� for some root vertex ��. All the statements and definitions will assume that the DFS graph is already constructed. The DFS graph will be denoted by �� ̃ . For a vertex �� let ����(��) be the subgraph of the graph �� ̃ induced by all the vertices �� such that there is a path from �� to �� in the DFS tree. ����(��) includes the back edges too. The vertex �� is called the ancestor of the vertex �� if �� ≠�� and �� ∈��(����(��)). Let ℎ(��) be the distance from the root vertex �� to the vertex �� in the DFS tree. If �� →�� is a back edge then ℎ(��) >ℎ(��).

In the DFS graph of a cactus graph ��, for each tree edge �� →�� there can be at most one back edge connecting a vertex from the subgraph ����(��) to an ancestor of the vertex �� (otherwise the edge �� →�� would be inside two cycles). Since cyclic trees are a special case of cactus graphs, the statement is true for cyclic trees too. Hence, we can say that for any vertex ��, there can be at most one back-edge that starts from that vertex. This means that |��(�� ̃)|=|��(��(�� ̃))| and since the graph �� is the underlying graph of the DFS graph �� ̃ , it means |��(��)|=��(|��(��)|) for the cyclic tree ��.

Let us define a function ��:��(�� ̃)→��(�� ̃ ) the following way: if there is a back-edge �� →�� that starts from the vertex �� let ��(��)=��, otherwise let ��(��) = ��. Since in the case of cyclic trees there can be at most one back-edge and the function �� is uniquely defined for every vertex.

Let us also define a function ��:��(�� ̃)→��(�� ̃ ). For a vertex �� if there is a vertex �� ∈��(����(��)) such that ℎ(��(��))<ℎ(��) (the vertex ��(��) is the ancestor of the vertex ��) then ��(��)=�� (there can be at most one such vertex). If there is no such vertex, then ��(��)=��.

For a vertex ��, let ��(��) be the subgraph induced by all the edges connecting the vertices from the subgraph ����(��) (including the back-edges). Fig. 2 illustrates the DFS graph of a cyclic tree on the left and the subtree ��(��11) on the right.

Fig. 2. The DFS graph �� ̃ with the root ��1 on the left, and the subgraph ��(��11) on the right. The subgraph ��(��11) is illustrated with blue color, the subgraph ����(��) with green.

In Fig. 2, ��(��(��11))= {��1,��6,��7,��8,��9,��10,��11,��13,��14} and the edges are all the edges incident to the vertices of the subgraph ��(����(��11)). Apart from the edges of subgraph there can be at most two additional edges in ��(��). The edge ��(��) →�� and the back-edge ��(��) →��(��(��)). For a non-root vertex ��, let ���� be the edge ��(��) →�� and let ���� be the edge ��(��) →��(��(��)) if ℎ(��(��(��)))< ℎ(��). From the definition we can say that ����,���� ∈ ��(��(��)).

We are going to calculate values ������������������[��][��1][��2] (where ��1,��2 ∈[0,��]) which is 1 if there is an edge-coloring �� of ��(��) that satisifes the restrictions �� for the edges of ��(��(��)), ��(����)= ��1, ��(����)=��2, and for all the vertices of �� ∈ ��(����(��)) the colors of the edges incident to �� form an interval of integers. Otherwise, ������������������[��][��1][��2]=0. In other words, we require the condition of interval edge-coloring only for the vertices of ��(����(��)) but we require for all the edges in ��(��(��)) to meet the restrictions ��. The color 0 is an artificial color to indicate no color. For the root vertex �� we are going to store the value in ������������������[��][0][0] since ���� and ���� are not defined. For a non-root vertex �� for which ���� is not defined we are going to calculate only ������������������[��][��1][0].

We will calculate the values of ������������������[��][��1][��2] from the bottom to the top in the DFS graph. Let �� ∈��(�� ̃) be an arbitrary vertex and let ��1,…,���� be the child vertices of the vertex ��. Assume we already calculated the values for ��1,…,����. We now want to combine these values to calculate the values ������������������[��][��1][��2] for the vertex ��.

There are several cases to consider:  C1: ��(��(��))=��, ��(��(����))=���� for all �� ∈ [1,��] which means there is no back-edge from the subgraph ����(��) and for all the child vertices their respective subgraphs do not have a back-edge starting from that child subgraph.  C2: ��(��(��))=��, ��(��(����))≠���� for some �� ∈[1,��] which means there is no back-edge from the subgraph ����(��), but there is a back-edge starting from that child subgraph. There can be at most one such child vertex; otherwise, the vertex �� would belong to more than one cycle. In that case, we will assume that child vertex is the vertex ���� with ��(��(����))=��.  C3: ��(��(��))≠�� and �� =��(��), which means the back-edge from the subgraph ����(��) starts from the vertex ��. In that case ��(��(����))=���� for all �� ∈[1,��], otherwise, the vertex �� would belong to more than one cycle.  C4: ��(��(��))≠�� and �� ≠ ��(��) which means the back-edge from the subgraph ����(��) is the same as the back-edge from one of its child vertex subgraphs. In that case, without loss of generality, we can assume that this child is the child vertex ���� (the last child vertex in the list of child vertices). Hence in this case ��(��) =��(����).

Initially we assume that ������������������[��][��1][��2]= 0 for all �� ∈��(�� ̃ ), ��1,��2 ∈[0,��]. We will describe a procedure that will find all the possible cases of ������������������[��][��1][��2]=1.

Assume the vertex �� is not the root vertex and let us solve each of these cases separately. The Case ��1 is very similar to the solution of the trees. In this case for each color ��1 ∈[1,��], if ��1 ∈��(����) we take an interval [��,��+��] with ��1 ∈[��,��+��] and color all the edges incident to the vertex �� with the colors from [��,��+��]. To do that, let the colors {��1,…,����}= [��,��+��]∖{��1}. We create a bipartite graph with the vertices ��1,…,���� on the left part, the vertices ��1,…,���� on the right part and add the edge (����,����) if ������������������[����][����][0]=1. If we find a perfect matching in this bipartite graph then ������������������[��][��1][0]=

1.

For the Case ��2, the edges incident to the vertex �� are ����,������,(��,��1),…,(��,����). For each color ��1 ∈ [1,��], if ��1 ∈��(����) we take an interval [��,��+��+

16

Norwegian Journal of development of the International Science No 71/2021 1] and take a color ��3 ∈ [��,��+��+1] that is not equal to ��1. We want to color the edge ���� with the color ��1, the edge ������ with the color ��3 and the edges (��,����) with the colors from [��,��+��+1] such that all the restrictions are met. Let {��1,…,����}=[��,��+��+1]∖ {��1,��3} be the remaining colors. We create a bipartite graph with the vertices ��1,…,���� on the left, the vertices ��1,…,���� on the right and we add the edge (����,����) for �� ∈[1,��−1] if ������������������[����][����][0]=1 and we add the edge (����,����) if ������������������[����][����][��3]=1. If there is a perfect matching in this bipartite graph then ������������������[��][��1][0]=1.

For the Case ��3, the edges incident to the vertex �� are ����,����,(��,��1),…,(��,����). For all the child vertices ����, we have ��(��(����))=����. For each color ��1,��2 ∈ [1,��], if ��1 ∈��(����), ��2 ∈��(����), and ��1 ≠��2 we take an interval [��,��+��+1] and if ��1,��2 ∈[��,��+��+ 1] we do the following: we take the remaining colors {��1,…,����}=[��,��+��+1]∖{��1,��2} and create a bipartite graph with vertices ��1,…,���� on the left part, and vertices ��1,…,���� on the right part. We take an edge (����,����) if ������������������[����][����][0]=1. If we can find a perfect matching in this bipartite graph then ������������������[��][��1][��2]=1.

For the Case ��4, the edges incident to the vertex �� are ����,(��,��1),…,(��,����). But we also have the edge ���� that we need to take into account. For each color ��1,��2 ∈[1,��], if ��1 ∈��(����) we take an interval [��,��+��] with ��1 ∈[��,��+��] and do the following: we take the remaining colors {��1,…,����}=[��,��+ ��]∖{��1} and create a bipartite graph with vertices ��1,…,���� on the left part, and vertices ��1,…,���� on the right part. We take an edge (����,����), (�� ∈[1,��−1]) if ������������������[����][����][0]=1. We take an edge (����,����) if ������������������[����][����][��2]=1. If we can find a perfect matching in this bipartite graph then ������������������[��][��1][��2]=1.

In other words, we save the color of the edge ���� for all the vertices in the path from ��(��) to �� and when we reach the vertex ��(��(��)) we make sure that the color is a part of the interval for the vertex ��(��(��)).

When the vertex �� is the root vertex, then only the Case ��1 and the Case ��2 can happen and the only difference is that we no longer need to worry about the color ��1.

To calculate the complexity of the algorithm, note that the heaviest operation is in the case ��4. Moreover, we might need to do that operation for all the vertices (for example, if the graph is a cycle). If we use Kuhn's algorithm [18] for finding a perfect matching, then it will take ��(����(��)) operations for the vertex ��. In the case of ��4, we do ��(��2) operations for selecting the two colors and ��(����(��)) operations for selecting the interval. The total complexity will be ��(��2 ∑��∈��(��)����(��)4)= ��(��2(∑��∈��(��)����(��))4)=��(��6).

Interval edge-coloring of cycles having chords with restrictions on edges

Here we consider the Problem 1 for a class of graphs called cycles with chords. Let �� be a connected labeled graph with �� vertices. Definition 1: Given a labeled graph �� with �� vertices. The graph �� is called cycle with chords if:  �� ≥3.  (1,2)∈��(��),(2,3)∈ ��(��),…,(��−1,��)∈ ��(��),(��,1)∈ ��(��). These edges are called cycle edges.  All the edges that are not cycle edges are called chords. For any two distinct chords (��1,��1)∈ ��(��) (��1 <��1) and (��2,��2)∈��(��) (��2 <��2), either ��1 ≤��2 or ��2 ≤��1. Let �� be a cycle with chords (|��(��)|=��). Let ��������(��) =(����������)+1 be the next vertex to which the vertex �� is connected with a cycle edge, and ��������(��)=((��−1+��−1)��������)+1 be the previous vertex to which the vertex �� is connected with a cycle edge. (��,��������(��))∈��(��) for 1≤�� ≤��, ��������(��) =1, ��������(1) =��, ��������(��������(��))=�� for 1≤�� ≤��. Consider a regular convex �� sided polygon with vertices 1,…,��. The sides of the polygon are (��,��+1) (1≤�� ≤��−1) and (��,1). We can map the vertices of the graph �� to the vertices of that polygon (by keeping the same indices). For every edge (��,��)∈��(��), we connect the respective vertices of the polygon with a segment. Let �� be the resulting plane figure. In this case, we say that �� is the polygon representation of the graph ��. For a chord (��,��) we will say that it has a forward direction if �� <�� and backward direction if �� <��. Note that if (��,��) has a backward direction then (��,��) has a forward direction. Lemma 1: If �� is a cycle with chords having �� vertices, and �� is the polygon representation of �� then: a) For any vertex �� ∈��(��) there are not two chords that start with the vertex �� and have the same direction. b) 2≤����(��) ≤4 for all �� ∈��(��). c) For any two distinct chords (��1,��1)∈��(��) and (��2,��2)∈��(��) their respective segments in the polygon representation do not intersect (they can have common vertex though). d) ����(1)≤3, ����(��) ≤3. (a) Let (��,��1) and (��,��2) be two chords and assume they both have forward direction (�� <��1 and �� <��2). This contradicts the third condition of the cycle with chords since neither �� ≤��2 nor ��1 ≤��. Hence if (��,��1) and (��,��2) are two distinct chords, one of them should have a forward direction and the other one should have a backward direction. (b) ����(��) ≥2 for all �� ∈��(��) since every vertex �� is connected to the vertex ��������(��) and ��������(��) (��������(��)≠��������(��) since �� ≥3). Suppose there is a vertex �� that is incident to more than two chords (��,��1), (��,��2), (��,��3). Each of these chords has either a forward direction or backward direction, hence at least two should have the same direction. This contradicts point (a). Hence every vertex can be incident to at most two chords. (c) Let (��1,��1) (��1 <��1) and (��2,��2) (��2 <��2) be two arbitrary chords of ��. We have that either ��1 ≤ ��2 or ��2 ≤��1. Assume ��1 ≤��2, in that case, the respective segments in the polygon representation can not

intersect since two segments intersect if the two points of one segment are in two different parts in the polygon. In this case, both points are in the same part. (d) The vertex 1 can not be incident to two chords since if (1,��1) and (1,��2) are two chords, they both have a forward direction which contradicts the point (a). In the same way, the vertex �� can not be incident to two chords.

From Lemma 1 we can define ��������������(��) to be the vertex �� if (��,��) is a chord and �� <��, or ��������������(��) =�� if no such chord exists. Similarly, let ����������������(��) be the vertex �� if (��,��) is a chord and �� <��, or ����������������(��) =�� if no such chord exists. If (��,������������(��)) is a chord then �� = ����������������(��������������(��)). Similarly, if (��,����������������(��)) is a chord then �� = ��������������(����������������(��)). Since ����(��) ≤4 for all �� ∈��(��), we have |��(��)|=��(|��(��)|). Fig. 3 illustrates an example of a cycle with chords having eight vertices and three chords. In the example ��������(6)=7, ��������(6) =5, ��������������(6) =8, ����������������(6) =3.

Fig. 3. A cycle with chords having eight vertices.

Now the problem is the following:

Problem 3: Given a cycle with chords �� with �� = |��(��)| vertices, �� =|��(��)| edges, and some restrictions on the edges ��:��(��)→2����. Find an interval edge-coloring ��:��(��) →���� such that ��(��) ∈��(��) for all �� ∈ ��(��).

First, we need to fix the color of the edge (1,��). We will take all the possible colors �� ∈��(1,��) and try to find an edge-coloring �� such that ��(1,��)=��. After fixing the color ��, we can now find an edge-coloring by constructing it from left to right using dynamic programming.

We will now describe the algorithm for a fixed ��. For every vertex �� ∈ ��(��), let ��(��)=�� if there is a vertex �� ∈��(��) such that �� <�� and ��������������(��) ≥ ��, otherwise, let ��(��) =��. The vertex ��(��) is the first vertex to the left of the vertex �� such that the chord (��,��������������(��)) goes over the vertex �� (or ends at ��). Let ��(��) be the set of edges that contains the cycle edges (��,��+1) for 1≤��<��, the cycle edge (1,��), and all the chords that are incident to any of the vertices 1≤��<��.

We will store ����[��][��1][��2] for each vertex 1≤ ��2 ≤��, 0≤��2 ≤��. ��1 is the color of the cycle edge (��������(��),��), ��2 is the color of the chord (����,��������������(��(��))) if ��(��)≠ �� or ��2 =0 if ��(��) =��. Let ����[��][��1][��2]=1 if there is an edge-coloring for the edges of ��(��), such that

��(1,��)=��, ��(��������(��),��)=��1 and ��(��(��),��������������(��(��)))=��2 if ��(��)≠�� (if ��(��)=�� then ��2 =0) and for all the vertices from 1,…,��−1the colored edges form intervals of integers for these vertices. We will assume that ����[��][��1][��2]=0 initially for all 1≤�� ≤��, 0≤��1,��2 ≤��.

For the vertex 1, we will make ����[1][��][0]=1.

Assume we already calculated the values for the vertices 1,…,��−1, and now we want to calculate for the vertex ��. There are several cases to consider:  C1: ��(��) =�� and ����������������(��−1)=��−1  C2: ��(��) =�� and ����������������(��−1)≠��−1  C3: ��(��) =��−1 and ����������������(��−1)=��−1  C4: ��(��) =��−1 and ����������������(��−1)≠��−1  C5: ��(��) <��−1

When ��(��) =�� and ����������������(��−1)=��−1 it means that there is no backward chord starting with �� or starting with ��−1, and there is no chord that contains the vertex ��. In this case we take all the colors ��1 for which ������������������[��−1][��1][0]=1, and consider the colors ��1 +1 and ��1 −1 (let �� ={��1 −1,��1 +1}). For any color �� ∈��, if �� ∈��(��−1,��) then ������������������[��][��][0]=1. This way, we ensure that the colors of the edges incident to the vertex ��−1 form an interval of integers.

When ��(��) =�� and ����������������(��−1)≠��−1 it means that there is no backward chord starting with ��, but there is a backward chord starting with ��−1(the chord (��−1,����������������(��−1))), and there is no

18

Norwegian Journal of development of the International Science No 71/2021 chord that contains the vertex ��. The vertex ��−1 has three incident edges. For every color ��1 ∈[1,��], we try to color the edge (��������(��−1),��−1) with the color ��1, and we need to find two other colors ��2 and ��3 such that the set of colors {��1,��2,��3} is an interval of integers with length three. The color ��2 is going to be the color of the chord (��−1,����������������(��−1)), the color ��3 is going to be the color of the cycle edge (��− 1,��). We can pick the colors ��2,��3 from the colors {��1 −2,��1 −1,��1 +1,��1 +2} and we need to make sure 1≤��2,��3 ≤��. If we find such colors ��2,��3 such that ������������������[��−1][��1][��2]=1 and ��3 ∈��(��− 1,��) then we assign ������������������[��][��3][0]=1.

When ��(��) =��−1 and ����������������(��−1)= ��−1 it means that the vertex ��−1 has three incident edges. Similar to the previous case, for each color ��1 ∈ [1,��] we try to find colors ��2,��3 ∈{��1 −2,��1 − 1,��1 +1,��1 +2} such that {��1,��2,��3} is an interval of integers with length three, 1≤��2,��3 ≤��, ������������������[��−1][��1][0]=1, ��2 ∈��(��− 1,��������������(��−1)), ��3 ∈ ��(��−1,��) and in that case we assign ������������������[��][��3][��2]=1. When ��(��) =��−1 and ����������������(��−1)≠ ��−1 it means that the vertex ��−1 is incident to four edges. The edges are (��������(��−1),��−1), (����������������(��−1),��−1), (��������������(��−1),��− 1), (��−1,��). The edges are going to be colored with colors ��1,��2,��3,��4 respectively. To do that, for any color ��1 ∈[1,��] we pick the colors ��2,��3,��4 from the set {��1 −3,��1 −2,��1 −1,��1 +1,��1 +2,��1 +3} such that the colors {��1,��2,��3,��4} form an interval of integers with length four, 1≤��2,��3,��4 ≤��. If ������������������[��−1][��1][��2]=1, ��3 ∈��(��− 1,��������������(��−1)), ��4 ∈ ��(��−1,��) then we assign ������������������[��][��4][��3]=1. Fig. 4 illustrates this case.

Fig. 4. The case when ��(��)=��−1 and ����������������(��−1)≠��−1.

When ��(��) <��−1 then the vertex ��−1 has two incident edges. We take any two colors ��1,��2 ∈[1,��] such that ������������������[��−1][��1][��2]=1. Then we pick a color ��3 from {��1 −1,��1 +1} and if ��3 ∈��(��−1,��) then we assign ������������������[��][��3][��2]=1.

When we finish the calculation of ������������������[��][��1][��2] there are two cases. The first case is when ��(��)=��, in which case we need to make sure that there is a color ��1 such that ������������������[��][��1][0]=1 and the set {��,��1} is an interval of integers with length two. If we can find such ��1, then there is an interval edge-coloring of the graph �� that satisfies all the restrictions; otherwise, it is impossible to find such interval edge-coloring. The second case is when ��(��)≠��, in which case we need to make sure that there are colors ��1,��2 such that ������������������[��][��1][��2]=1 and the set {��,��1,��2} is an interval of integers with length two. If we can find such ��1,��2 then there is an interval edge-coloring of the graph �� that satisfies all the restrictions, otherwise, it is not possible to find such interval edge-coloring.

To calculate the complexity of the algorithm, note that the heaviest operation is in the last case, where we pick two colors. If there was a chord (1,��−1), we would do that operation for almost all vertices. We also need to select the color ��. Hence the complexity of the algorithm is ��(��4).

REFERENCES:

1. West D.B. Introduction to Graph Theory. Prentice-Hall, New Jersey, 1996. 2. Asratian A.S., Kamalian R.R. Interval Colorings of Edges of a Multigraph. Appl. Math. 5 (1987), 25--34 (in Russian).

3. Kamalian R.R. Interval Colorings of Complete Bipartite Graphs and Trees. Preprint of the Computing Centre of the Academy of Sciences of Armenia. Yer. (1989). 4. Kamalian R.R. Interval Edge-colorings of Graphs. Doctoral Thesis. Novosibirsk (1990). 5. Axenovich M.A. On interval colorings of planar graphs. Congr. Numer. 159 (2002) 77–94. 6. Kamalian R.R., Petrosyan P.A. A note on interval edge-colorings of graphs. Math. Probl. Comput. Sci. 36 (2012) 13–16. 7. Petrosyan P.A. Interval edge-colorings of complete graphs and n-dimensional cubes. Discrete Math. 310 (2010) 1580–1587. https://doi.org/10.1016/j.disc.2010.02.001 8. Petrosyan P.A., Khachatrian H.H., Tananyan H.G. Interval edge-colorings of Cartesian products of graphs I. Discuss. Math. Graph Theory 33 (2013) 613–632. https://doi.org/10.7151/dmgt.1693 9. Khachatrian H. H., Petrosyan P. A. Interval edge-colorings of complete graphs. Discrete Mathematics, 339(9), (2016) 2249–2262. https://doi.org/10.1016/j.disc.2016.04.002 10. Kamalian R. R., Petrosyan, P. A. On Lower Bound for W(K2n). Mathematical Problems of Computer Science, Vol. 23, (2004), pp. 127--129 11. Kamalian R.R., Petrosyan P.A., On interval edge colorings of Harary graphs H2n−2,2n. Mathematical Problems of Computer Science, Vol. 24, (2005), pp. 86-88 12. Kamalian R. R., Petrosyan P. A. On Interval Colorings of Complete k-partite Graphs Kn k . Mathematical Problems of Computer Science, Vol. 26, (2006), pp. 28—32 13. Sahakyan A., Muradyan L. (2021). INTERVAL EDGE-COLORING OF EVEN BLOCK GRAPHS. Norwegian Journal of Development of the

International Science, (70-1), 26-30. https://doi.org/10.24412/3453-9875-2021-70-1-26-30 14. Sahakyan A. K., Kamalian R. R. (2021). INTERVAL EDGE-COLORINGS OF TREES WITH RESTRICTIONS ON THE EDGES. Proceedings of the YSU A: Physical and Mathematical Sciences, 55(2 (255)), 113-122. https://doi.org/10.46991/PYSU:A/2021.55.2.113 15. Sahakyan A. K. (2021). INTERVAL EDGE COLORING OF TREES WITH STRICT RESTRICTIONS ON THE SPECTRUMS. Science Review, (3 (38)), 27-29. https://doi.org/10.31435/rsglobal_sr/30072021/7592

16. Sahakyan A. K. (2021). EDGE COLORING OF CACTUS GRAPHS WITH GIVEN SPECTRUMS. International Academy Journal Web of Scholar, (2(52)), 25-28. https://doi.org/10.31435/rsglobal_wos/30062021/7617 17. Cormen T. H. Introduction to algorithms. Cambridge, Massachusetts; London: The MIT Press. 2009 18. Kuhn H. The Hungarian Method for the Assignment Problem. Naval Research Logistics Quarterly 2 (1955), 83--97.

This article is from: