M1 internship report: problems on interval graphs L(2,1)-labelling

Aug 28, 2014 - to the one of unit interval graphs, where all intervals are of length one. .... After this, I tried to move on to graphs with overlap at most 1, that is the ones ..... area: the time and memory complexity of the algorithm are bad, and there ... found here: http://perso.ens-lyon.fr/alexandre.talon/almost-mixed_paper.pdf.
510KB taille 2 téléchargements 273 vues
M1 internship report: problems on interval graphs L(2,1)-labelling Almost-mixed unit interval graphs Alexandre Talon August 28, 2014

1

Contents 1 Introduction 2 The L(2,1)-labelling 2.1 Preliminaries . . . . . . . . . . . 2.1.1 Definitions and notations 2.1.2 Known results . . . . . . 2.2 My work . . . . . . . . . . . . . . 2.2.1 Preliminaries . . . . . . . 2.2.2 Dynamic programming . . 2.2.3 A few non-working ideas . 2.2.4 Bounded overlap . . . . . 2.2.5 Coding . . . . . . . . . . 2.3 Conclusion . . . . . . . . . . . .

3 . . . . . . . . . .

. . . . . . . . . .

3 3 3 4 4 4 4 5 6 6 6

. . . . . . . . . .

. . . . . . . . . .

. . . . . . . . . .

. . . . . . . . . .

. . . . . . . . . .

. . . . . . . . . .

. . . . . . . . . .

. . . . . . . . . .

. . . . . . . . . .

. . . . . . . . . .

. . . . . . . . . .

. . . . . . . . . .

. . . . . . . . . .

. . . . . . . . . .

. . . . . . . . . .

. . . . . . . . . .

. . . . . . . . . .

. . . . . . . . . .

. . . . . . . . . .

. . . . . . . . . .

. . . . . . . . . .

. . . . . . . . . .

. . . . . . . . . .

. . . . . . . . . .

. . . . . . . . . .

. . . . . . . . . .

. . . . . . . . . .

. . . . . . . . . .

. . . . . . . . . .

. . . . . . . . . .

3 The almost-mixed unit interval graphs 3.1 Preliminaries . . . . . . . . . . . . . . 3.1.1 Definitions and notations . . . 3.1.2 Known results . . . . . . . . . 3.2 Contribution . . . . . . . . . . . . . . 3.2.1 First results . . . . . . . . . . . 3.2.2 Towards the second result . . . 3.2.3 Main result . . . . . . . . . . . 3.3 Conclusion . . . . . . . . . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

7 . 7 . 7 . 7 . 9 . 9 . 10 . 11 . 16

2

1

Introduction

This document accounts for the work I did during my internship with Pr. Jan Kratochvíl, from May 12th to August 8th , 2014. It took place in Charles university, in Prague. During these three months I worked on two problems: the L(2,1)-labelling of interval graphs, on which I ended up being stuck, and then on the classification of mixed unit interval graphs, for which I got more results. Interval graphs arise in fields such as DNA study and archaeology. An interval graph is made from a set of intervals of the real line: to each interval we associate a vertex, and two vertices are adjacent if and only if their intervals intersect. Among these graphs, we have the subclass of proper interval graphs for which it is required that no interval properly contains another one. This class of graphs corresponds to the one of unit interval graphs, where all intervals are of length one. The L(2,1)-labelling consists in colouring vertices with non-negative integers, so that the labels of two adjacent vertices have an absolute difference of at least 2, and the labels of two vertices having a common neighbour have an absolute difference of at least 1, ie they have different labels. The objective is to assign labels following this rule so that the highest label we use is as small as possible. This problem can be used for frequencies assignments: we may use such a labelling to assign wi-fi frequencies to routers for instance, so that two close routers have frequencies which are much apart, and two not so far away routers get different frequencies. The L(2,1)-labelling rule is here useful so that the routers do not interfere with one another. More generally the L(2,1)-problem is one particular instance of the L(d1 , d2 , · · · , di ) problems where two vertices which are at distance 1 ≤ k ≤ i from each other must receive labels which are at least dk apart. In the first approach to interval graphs I gave, though, no particular attention is paid to the types of intervals we use: are they open, closed, semi-closed? It appears that this is of no importance as far as interval graphs are concerned. This was proved in [3] for instance. However, deciding which types of intervals we allow is crucial when dealing with interval graphs of unit length. The second part of my internship completes the classification of the different classes of graphs each subsets of allowed intervals types leads to.

2

The L(2,1)-labelling

2.1 2.1.1

Preliminaries Definitions and notations

All the graphs we consider here are finite, undirected, and simple. Let G be a graph. We denote by V (G) and E(G) the vertex and edge set of G, respectively, or E and V if there are no ambiguities. We say that two vertices u and b are neighbour, adjacent, or connected if {u, v} ∈ E(G). For a vertex v ∈ V (G), let the neighbourhood NG (v) of v be the set of all vertices that are adjacent to v and let the closed neighbourhood NG [v] be defined by NG (v) ∪ {v}. Two distinct vertices u and v are twins (in G) if NG [u] = NG [v]. A mapping L : V → N is called a L(2,1)-labelling of G if it fulfils the following two conditions: • | L(u) − L(v)| ≥ 2 for all {u, v} ∈ E • | L(u) − L(v)| ≥ 1 for all u, v ∈ V such that ∃z ∈ V such that {u, z} ∈ E(G) and {v, z} ∈ E. Given a L(2,1)-labelling L, we define the span of L as max(L(u) | u ∈ V ). The L(2,1)-labelling problem consists in, given a graph, finding a L(2,1)-labelling of minimal span. We denote by λ(G) the span of such a labelling, that is our problem is to minimise λ(G). More formally the L(2,1)-labelling decision problem consists in, given a graph G and a non-negative integer k, determining if λ(G) ≤ k. Here is an example of an optimal L(2,1)-labelling of a unit interval graph.

3

2

6

10

8

4

5

6

2.1.2

2

3

4 0

0

1

Known results

It is known from [10] that the L(2,1)-labelling problem is NP-complete, and NP-hard on many classes of graphs. For instance, it remains NP-complete even if the span k ≥ 4 we want to reach is fixed, that is not part of the input of the problem, or if we restrict to graphs of treewidth 2. This problem is also NP-hard for the following classes of graphs: diameter-2 graphs, planar graphs, bipartite graphs, split graphs and chordal graphs. We currently only have polynomial algorithms to solve it for paths, circles, and trees when the goal span k is fixed. A linear algorithm for trees is given in [7]. It uses both perfect matchings on a bipartite graph and dynamic programming. Concerning unit interval graphs, the most useful result I found was discovered by Denise Sakai in [8]: she states that for unit interval graphs λ can only take three values: 2χ − 2, 2χ − 1 or 2χ, where χ is the chromatic number, and is equal to the size of the largest clique of the graph. Several necessary or sufficient conditions for a graph to have one of the three possible λ values are also given in [9] but there is no general both necessary and sufficient condition for any of the possible λ values.

2.2 2.2.1

My work Preliminaries

My first step was to find the known results. After this, I examined some proofs and algorithms to various extents: the proof of NP-completeness, the way to label paths and circles and some algorithms to solve the problem on trees. I also gathered information on what an interval graph was like. In fact for such a graph and one representation of it, we can sort the intervals in ascending order according to the position of their left ends and number their corresponding vertices according to this ordering. In the rest of the report we will always consider that the vertices as numbered according to such an ordering. In such an ordering, we notice an important property: since all intervals are of unit length, if vertices i < j are adjacent, so are vertices k and j, and vertices i and k, for each k between i and j. This means that a unit interval graph can be drawn as a set of cliques, some possibly overlapping, and others separated by paths. Also, I tried to focus on finding conditions for λ to take the two extremal values: intuitively, it means that there are less or more constraints than for the middle value. 2.2.2

Dynamic programming

After this, I tried to adapt the first polynomial algorithm for trees to the unit interval graphs. However, I was not able to do so. The main reason is that, contrarily to trees, there is no good ordering on which to run the dynamic algorithm. Indeed for trees, when we want to assign a colour to a vertex, it can only pose a problem to its brothers, children, grand-children, father and grand-father. A bottom-up approach makes it possible to compute all the values efficiently, hence the use of dynamic programming. However, I was not able to find such an efficient algorithm for unit interval graphs. Indeed, even with the standard ordering of vertices, there are too many and complex dependencies: a unit interval graph is not acyclic. The cliques, and the fact that they can be arbitrarily large and that they can overlap prevents us from designing a good algorithm using dynamic programming. To fix this, one solution is to consider only bounded-degree graphs, so as to decrease the number of dependencies one vertex can have. This can be made by considering the L(2,1)-labelling problem where k is a constant, and then the only input is the graph.

4

Theorem 1. The L(2,1)-labelling decisional problem, when k is fixed and not part of the input, can be solved in polynomial time. To prove this, we give the following algorithm. input : A unit interval graph, with vertices properly ordered from 1 to n, given by its adjacency matrix output: Whether the given graph can be L(2,1)-labelled with labels from 0 to k Compute the size of the largest clique χ. Compute the square of the adjacency matrix if k < 2χ − 2 then return false end else if k ≥ 2χ then return true end for i = 1 to n+1 do Initialize dyn[i] with the empty set end for i = n downto 1 do for col = 0 to k do for conf in dyn[i+1] do Remove from conf all vertices at distance > 2 of vertex i if labelling vertex i with col is compatible with conf then dyn[i].insert(conf∪{L(i) = col}) end end end end if dyn[1] is empty then return false end else return true end In this algorithm we fill the n cells of the array of sets dyn. Each cell contains all valid labellings of the vertices at distances 1 and 2 with greater index. Let d be the maximum degree of G. Each partial 2 labelling we store contains at most d + d2 values. Therefore, we have at most k d+d possible labellings in each cell of dyn. Finally, we can check if the newly assigned label is compatible with a previous partial labelling in O(d2 ), thanks to the square of the adjacency matrix of G. This makes a time complexity of 2 O(M (n) + n · k · (d + d2 + k d+d ), where M (n) is the complexity of a matrix multiplication. However, since we discard the case where k < d, because a vertex with degree d forces its d neighbours to have different labels (they are at distance 2 from one another), we have k ≥ d and the complexity 2 becomes O(M (n)+n·k ·(k +k 2 +k k+k ). Since k is a constant, we finally have O(M (n)+n) = O(M (n)), which is polynomial in n. 2

However, this algorithm is highly impractical: we may have more than n·k·(d+d2 +k d+d ) operations. If we take k = d = 10, which is rather small, we already have a case where the algorithm might not, in a lifetime, finish. 2.2.3

A few non-working ideas

My supervisor and I had some other ideas or simplifications to try, in order to find a more algorithm than the one given in the previous paragraph. One was to try linear programming the problem, but unfortunately the linear program I obtained from a L(2,1)-labelling problem only composed of integer solutions. Indeed, even with a graph containing a single vertex, I got 5

efficient to solve was not rational

optimal solutions as well as the integer ones: every colour would get

1 λ+1

for instance.

Another remark was that given a unit interval graph, we can merge twin vertices into some kind of equivalence classes and assign each class only a set of colours. By avoiding giving individual colours, we avoid useless permutations of colours between them. At first sight, we could think that only the two extremity vertices of a clique are important, and the other ones are equivalent. However, this is not true since there may be multiple overlaps. In fact, there are graphs where this simplification is of no use because every vertex has a unique role, as in the graph represented by Figure 1.

Figure 1: A graph representation with much overlapping A last idea was to consider graphs with a bounded size for cliques, but this led nowhere too. Even with these conditions, there may be much overlapping, which was the key problem as far I as noticed. 2.2.4

Bounded overlap

From the remark just above, I decided to restrain myself to graphs with little overlapping. I first tried to restrain to graphs with overlap 0, which means that two cliques of size more than 2 cannot share a vertex. This means we have a few cliques, connected by paths. The idea behind this was that paths are easy to label, and should act like a separator between cliques, which are also easy to label: each maximal cliques must be labelled with colours 0, 2, 4, · · · , 2χ − 2. I eventually came up with the following theorem: Theorem 2. Let G is a unit interval graph of overlap 0. If χ = 3 and two consecutive χ-cliques are separated by a path of length 1, 3, 4, 5, 6 or 9 then λ = 2χ − 1 = 5. In the other cases, λ = 2χ − 2. Proof. After this, I tried to move on to graphs with overlap at most 1, that is the ones where two cliques of size more than 2 may share at most one vertex. Yet, in spite of quite some time spent on this, I could not find anything useful. 2.2.5

Coding

To help me with the problem, I coded a few programs and scripts. Almost at the beginning I programmed an exhaustive algorithm taking a graph and outputting a L(2,1)labelling of it of minimum span. To make things easier to visualize, I used it in combination with Graphviz. This program enabled me to have a look on a few examples and try to see what the obstacles to a low λ number were. It also helped me find counter-examples to some of my guesses. Afterwards when I tried to see if some greedy strategy could work, I programmed the ones I thought about and which were not trivially false. This also helped me to refute them more easily. Finally, when I considered the overlapping of a graph, I made a program to generate automatically graphs data from concise information about the cliques: their sizes, how much they overlap, the lengths of the paths possibly separating them. All the programs were made in C++. I also made a few small Python scripts to interface them with Graphviz.

2.3

Conclusion

During this first part of my internship, I did not make much progress. The algorithm I came up with for the case where k is a constant is both extremely slow and memory consuming. The other result, about 6

overlap 0 yields an efficient algorithm but only for a tiny portion of unit interval graphs. However, in the literature we can find that it has been 20 years we have known that the λ number of a unit interval graph can only take three consecutive values, but about no progress has been made. Also, since the L(2,1)-labelling problem is known to be NP-hard for a very wide set of graphs, it may as well be the same for the class of graphs I studied. After the end of my internship, I found that another student, Veronika Steffanová, seem to have proved that the L(2,1)-labelling is NP-complete for the class of interval graphs.

3 3.1 3.1.1

The almost-mixed unit interval graphs Preliminaries Definitions and notations

In addition to the definitions and notations given if the previous section, we give the ones below. If C is a set of vertices, then we denote by G[C] the subgraph of G induced by C. Let M be a set of graphs. We say G is said to be M-free, if for every H ∈ M, the graph H is not an induced subgraph of G. If G contains no twins, then G is twin-free. Let N be a family of sets of intervals. We say that a graph G has an N -representation, if there is a function I : V (G) → N such that for any two distinct vertices u and v there is an edge joining u and v if and only if I(u) ∩ I(v) 6= ∅. We say that G is an N -graph if there is an N -representation of G. Let x, y ∈ R. We define the closed interval [x, y] = {z ∈ R : x ≤ z ≤ y} the open interval (x, y) = {z ∈ R : x < z < y}, the open-closed interval (x, y] = {z ∈ R : x < z ≤ y} and the closed-open interval, and by [x, y) = {z ∈ R : x ≤ z < y}. We will draw the different types of intervals following the same logic:

Figure 2: The representation of closed, open, closed-open and open-closed intervals For an interval A, let `(A) = inf({x ∈ R | x ∈ A}) and r(A) = sup({x ∈ R | x ∈ A}). If I is an interval representation of G and v ∈ V (G), then we write `(v) and r(v) instead of `(I(v)) and r(I(v)), respectively, if there are no ambiguities. Let U ++ be the set of all closed unit intervals, U −− be the set of all open unit intervals, U −+ be the set of all open-closed unit intervals, U +− be the set of all closed-open [ unit intervals, and U be the set of all X ± ++ −− unit intervals. We also define U = U ∪U and U = U x for all X ⊂ P(++, −−, −+, +−, ±. x∈X

For instance, U = U ±,+−,−+ . We call a U-graph a mixed unit interval graph and a U ±,+− -graph an almost-mixed unit interval graph. Here the problem is to study the different classes of graphs we can obtain by allowing only some types of intervals for their representations. 3.1.2

Known results

This problem has been studied during the past 30 years, and the following results were proved, very recently for the last ones. First there is one remark which simplifies the problem: if a graph contains twins, then they can be assigned the same interval in any representation of this graph. So from now on, we will mostly consider twin-free graphs. For such graphs, the representation I is clearly injective. From here we will denote by G X the set of all twin-free U X -graphs, for an appropriate X. For instance the set of twin-free mixed unit interval graphs is denoted by G and the set of all twin-free almost-mixed unit interval by G ±,+− . The following established theorems begin a classification of all interval graphs with unit intervals, depending on which types of intervals are allowed. 7

Theorem 3 (Roberts [6]). G is a U ++ -graph if and only if it is a K1,3 -free interval graph. Theorem 4 (Dourado et al., Frankl and Maehara [3, 4]). The classes of U ++ -graphs, U −− -graphs, U +− -graphs, U −+ -graphs, and U +−,−+ -graphs are the same. ∗ ∗ ∗ Theorem 5 (Rautenbach and Szwarcfiter [2]). G ∈ G ± if and only if G is a {K1,4 , K1,4 , K2,3 , K2,4 }-free interval graph.

∗ K1,4

K1,4

∗ K2,3

∗ K2,4

Figure 3: Forbidden induced subgraphs for twin-free U ± -graphs We can easily see that these three classes of interval graphs are not the same. Indeed, K1,3 is a U ± -graph but not a U ++ -graph. Also, the graph of Figure 4 is a U-graph but not a U ± -graph.

Figure 4: A graph, which is a U-graph, but not a U ± -graph ∗ Theorem 6 (Joos [1]). G ∈ G if and only if G is a {K2,3 } ∪ R ∪ S ∪ S 0 ∪ T -free interval graph.

R0

i triangles

R1 Figure 5: The class R

S1

i triangles

S2

Si

Figure 6: The class S

S10

S20

i triangles Figure 7: The class S 0

8

Si0

Ri

T0,0

T1,0

i triangles

T2,1

Ti,j

j triangles

Figure 8: The class T To summarise, we have the following inclusions (all being proper): {(∅, ∅)} ( {U ++ , U −− , U +− , U −+ , or U +−,−+ }-graphs ( U ± -graphs ( U-graphs.

3.2

Contribution

The motivation for my work was based on the fact that previous results did not mention all the possible subsets of types of intervals. For instance, U ±,+− was never spoken of, and seemed to introduce a new subclass of mixed unit interval graphs. U −−,−+ -graphs have not been dealt with either. More exactly, in this part we take care of each of the 7 missing subsets of unit intervals. We first consider the subsets which lead to an existing class, and then introduce the new one.

3.2.1

First results

The first theorem was not hard to find. The main idea is that there is a clear and "unique" separation between U ++ -graphs and the other classes: in addition to requiring to be an interval graph, the former admit K1,3 as unique minimal forbidden induced subgraph. But to have such a subgraph one must allow both closed and open intervals. Theorem 7. The classes of U ++ -graphs, U ++,+− -graphs, U ++,−+ -graphs, U −−,+− -graphs, U −−,−+ graphs, U ++,+−,−+ and U −−,+−,−+ are the same. Proof. The proof is straightforward. Firstly each of these classes contains U ++ -graphs. Secondly, K1,3 , which is the only minimal forbidden induced subgraphs for U ++ -graphs, is in none of these classes. Indeed, let us draw a unit interval representation of K1,3 and show it needs both closed and open intervals. We label the vertices like in Figure 9. We may assume, without loss of generality that `(b) < l(c) < l(d) and that `(a) = 0. Since all intervals have length 1, and given their intersections, we have: • `(b) ≥ −1 • `(b) + 1 ≤ `(c) ≤ 1 • `(c) + 1 ≤ `(d) ≤ 1 The first and third equalities imply that −1 ≤ `(b) + 2 ≤ `(c) ≤ 1. This forces `(b) = −1, `(c) = 0 and `(d) = 1. Then I(a) must be a closed interval, the right end of I(b) must be closed and the left end of I(d) too. To comply with the required intersections, I(c) must have open ends, which concludes the proof.

9

a

c b

c

d a

b

d

Figure 9: K1,3 and its unique U-representations 3.2.2

Towards the second result

Now the remaining thing to do was to show that the last two subsets of unit intervals (U ±,+− and U ±,−+ ) led to a proper new class, and to characterise it through a list of forbidden subgraphs, if possible minimal. One stake was to see whether or not there was a finite list of such graphs and, if the list would turn out to be infinite, whether we would still be able to come up with a polynomial-time algorithm to check that a graph is in the class. First the two subsets of intervals, for obvious symmetry reasons, lead to the same class. Also, it is not hard to find two graphs, one separating it from U ± -graphs: see Figure 4, the other separating it from the U-graphs: see Figure 10.

h

b

f

d

a

c

e

g

Figure 10: A graph separating U ± ∪ U +− -graphs and U-graphs After having found these graphs, at the beginning I tried to find some more, distinguishing our class from the mixed unit one, that is to find forbidden induced subgraphs for the almost-mixed class who are in the mixed class. However, I just took some interval configurations with all the interval types, drew the corresponding graph, and after tried to show that it was not possible to represent it with only three types of intervals, and that it was minimal. But this was not very formal, and some of my guesses turned out to be false and hard to make. At some point, I noticed one important thing: among the list of forbidden induced subgraphs for the ∗ ∗ class of U ± -graphs, there were two types: K1,4 , K2,4 and K2,3 which were also forbidden for mixed unit ∗ graphs, and K1,4 which was not. However a graph which is forbidden for G ±,+− is also forbidden for G ± . Therefore, any forbidden induced subgraph for G ±,+− which is allowed in G must contain an induced ∗ K1,4 . One lead was now to determine, for a graph in G \ G ±,+− , whether it had to contain multiple copies of ∗ K1,4 , and if so how these copies were "connected" to one another. From my readings, another thing to look at could be how to convert a representation involving all four types of intervals into one using only three of them, and when it is not possible, to try to determine why. This could also have led to new forbidden graphs, but I got nothing out of it. ∗ Focusing on K1,4 , though, made me discover the following lemma: ∗ Lemma 8. Up to symmetry, there are only two injective U-representations of K1,4 , shown in Figure 11. .

∗ Figure 11: The unique representations of K1,4

10

The proof is simple and uses the same idea as the one of in the proof of Theorem 7. This simple lemma was very helpful in automating the process of checking if one graph was actually forbidden for G ±,+− . However, this is still not sufficient. Since we want to find all minimal forbidden induced subgraphs, we have to find the mechanisms which force the coexistence of the two types of semi-closed intervals. After some time looking into this direction, I finally found the the crucial following lemma: Lemma 9. Let G ∈ G \ G ± and I a U-representation of it. For each vertex u0 (resp. d0 ) such that I(u0 ) (resp. I(d0 )) is an open-closed (resp. closed-open) interval, we have the following alternative: (i) there exists a U-representation I0 of G with fewer open-closed (resp. closed-open) intervals (ii) there exist vertices u, v, w, x, y (resp. a, b, c, d, e) in the same connected component as u0 (resp. d0 ) such that their intervals are the following: v u

w y

z

a

c b

e d

This lemma is very important because it says that if we take an appropriate representation of a graph (almost) whenever we have a semi-closed interval, there must be some precise intervals in its neighbourhood. The idea of the proof is that if one of these intervals is missing, then it is possible to change the semi-closed interval (u or d) into a closed one, without changing the types of the other intervals. To do so, we shift by a small enough quantity some of the intervals, so as to preserve the intersections. We can ∗ , which is not surprising given the above remarks notice that this neighbourhood of intervals forms a K1,4 concerning this graph.

3.2.3

Main result

Thanks to Lemma 9, and to a simple remark, we can easily to characterise the class of almost-mixed unit interval graphs. Let us take a graph G ∈ G \ G ±,+− and I an interval representation of G with as few closed-open interval as possible and, subject to this condition, as few open-closed interval as possible. I must contain all four types of intervals. We can then take two vertices of G d and u such that I(d) is closed-open and I(u) is open-closed. We may assume that I(u) and I(d) are connected (ie u and d are in the same connected component of the graph). Indeed, if this was not the case for every such pairs of d and u, then we could symmetrise the intervals of every "d"-type connected component and get a representation of G with only three types of intervals. Moreover by Lemma 9, there exist vertices e, c, b and a on the one hand, v, w, y and z on the other hand, such as in the figure of the lemma. We can apply the lemma simultaneously to both neighbours of u and neighbours of d and, because of the minimality criteria for the choice of I, the (ii) alternative is true. This provides us with neighbourhoods for some u and d, connected as stated just above. With these tools there is a simple method to list all possible minimal forbidden induced subgraphs we are looking for. We do it via their interval representations: let us consider that `(a) = 0 and let `(u) take all possible values. By doing so we get exactly all the graphs we want, depending on the value of `(u): • `(u) < −2:

11

v u

z

w y

c b

a

d e

intervals connecting I(z) and I(a)

This leads (see appendix for details) to class A: u

y

v

w

z

a

b

d

u

y

c

e

v

w

A0

z Ai

p1

pi

a

b

d

c

e

path of i ≥ 1 vertices

Figure 13: The class A

• `(u) ≥ 3: c b

a

v u

w y

d e

z

intervals connecting I(e) and I(v)

This leads (see appendix for details) to classes B, B 0 and B 00 : u y

b d

a

c

e

v

w

u y

b d

z

a

c

B0

e Bi

p1

pi

v

w

z

path of i ≥ 1 vertices

Figure 14: The class B

u y

b d

a

c

e

p1

v

w

u y

b d

z

a

c

e Bi0

B10

Figure 15: The class B 0

12

p1

pi

path of i ≥ 2 vertices

v

w

z

u y

b d

a

c

e

p1

v

p2

u y

b d

w

z

a

c

e Bi00

B200

p1

pi

path of i ≥ 2 vertices

Figure 16: The class B 00

• `(u) ∈ Z and −2 ≤ `(u) < 3: – `(u) = −2: v u

c b

a=z

w y

u

y

v

w

b

d

c

e

d e a=z

Figure 17: The graph C−2 – `(u) = −1: v u

a=w y

c=z b

d e

u

y

b

d

v

a=w

c=z

e

Figure 18: The graph C−1 – `(u) = 0:

a=v u

c=w b=y

u d e=z

b=y

a=v c=w

d

e=z

Figure 19: The graph C0 – `(u) = 1:

a

c=v b u

d e=w y

b z

d

y

u a

c=v

Figure 20: The graph C1 13

e=w

z

v

w

z

– `(u) = 2: c b

a

d e=v u

w y

u y

b d

z a

c

e=v

w

y

a

z

Figure 21: The graph C2 • −2 < `(u) < 3 and `(u) ∈ / Z: – −2 < `(u) < −1:

v u

a w y

u

c b

d e

z

v

w

d

z

c

e

b 0 Figure 22: The graph C−2

– −1 < `(u) < 0:

v u

u

c b

a

z

w y

d e

y

a

c v

d

w e

b

z

0 Figure 23: The graph C−1

– 0 < `(u) < 1: y

b

a

c b v u

d e w y

u

c

z

d

e w

a Figure 24: The graph C00

– 1 < `(u) < 2:

14

v

z

c b

a

b

v u

u

w

z

d e v

z

w y

a

e

y

c

d

Figure 25: The graph C10 – 2 < `(u) < 3:

a

c b

d e

v u

u y

b d w y

z a

c

e

v

w

z

Figure 26: The graph C20 We omit in this document the details for obtaining classes A, B, B 0 and B 00 , from the partial interval representations. At this point two things remain to be done: proving that each of these graphs are forbidden, and proving that they are minimal. The proof that they are forbidden boils down to noticing, thanks to Lemma 8, that their representations cannot be different than the one given here. The fact which imposes to have ∗ the two types of semi-closed intervals is intuitively that two vertices with similar role in the two K1,4 are ∗ connected via a path containing no other vertices of these K1,4 . Concerning the minimality, it suffices to notice that removing a vertex in a path would make it possible to decrease the number of semi-closed intervals, and to use Lemma 9 for the question of removing another vertex. From what precedes, we can state the following theorems: Theorem 10. G ∈ G ±,+− if and only if it is a A∪B∪B 0 ∪B 00 ∪C ∪C 0 ∪S ∪S 0 ∪{T0,j | j > 0}∪R0 ∪R1 -free interval graph. Theorem 11. The graphs of Theorem 10 are minimal forbidden induced subgraphs for the class G ±,+− . From Theorem 10 we can design an algorithm to recognise an almost-mixed unit interval graph: first check whether it is a mixed unit interval graph. After this, prune it to make it twin-free and search the result for the graphs in C ∪ C 0 . To check for the infinity of graphs in the remaining classes we look for all ∗ the copies of K1,4 and how they connect to one another, to find two of them connected like in Figure 13 to Figure 16. In fact, it is sufficient to check, for every vertex-disjoint copies of K1, 4∗ for two vertices u and v such that: ∗ • u and v are not in the same copy of K1,4 ∗ • none of them is of maximum degree (ie degree 4) in K1,4 ∗ • they are of equal degrees (ie they have the same "roles" in K1,4 ) ∗ and look for a path between u and v vertex-disjoint from the two K1,4 ’s. This leads to the last theorem:

Theorem 12. The class of almost-mixed unit interval graphs can be recognised in polynomial time. 15

∅ (

U ++ ,

U −− ,

U +− ,

U −+ ,

U +−,−+ ,

U ++,+− ,

U ++,−+ ,

U −−,+− ,

U −−,−+ ,

U ++,+−,−+ ,

U −−,+−,−+

( U± ( U ±,+− ,

U ±,−+

( U Figure 27: Classification of unit interval graphs classes

3.3

Conclusion

Now the classification of mixed unit interval graphs is complete, shown in Figure 27. The new subclass we introduce here is characterised by a list of minimal forbidden induced subgraphs. However, there are still some work to do in the area: the time and memory complexity of the algorithm are bad, and there is no algorithm to represent a U ±,+− -interval graphs with the right set of intervals. Such an algorithm could lead to a recognition algorithm with better time, since with the method described in this article, we need at least to find all the triangles of a graph, which complexity is the same as the one of matrix multiplication, that is at least Ω(|V |2 ), and for which our best algorithm is in O(22.37 ), not to mention the search for graphs in C and C 0 . The second half of my internship, about the almost-mixed unit interval graphs class, will lead to a paper I will cosign with Pr. Kratochvíl. A first version he has not yet really reviewed can be found here: http://perso.ens-lyon.fr/alexandre.talon/almost-mixed_paper.pdf. It contains the proofs omitted in this report.

References [1] F. Joos, A Characterization of Mixed Unit Interval Graphs,arXiv preprint arXiv:1312.0729 (2013). [2] D. Rautenbach and J.L. Szwarcfiter, Unit Interval Graphs of Open and Closed Intervals, J. Graph Theory 72(4), 418-429 (2013). [3] M.C. Dourado, V.B. Le, F. Protti, D. Rautenbach and J.L. Szwarcfiter, Mixed unit interval graphs, Discrete Math. 312, 3357-3363 (2012). [4] P. Frankl and H. Maehara, Open interval-graphs versus closed interval-graphs, Discrete Math. 63, 97-100 (1987). [5] V.B. Le and D. Rautenbach, Integral Mixed Unit Interval Graphs, Lecture Notes in Computer Science 7434, 495-506 (2012). [6] F.S. Roberts, Indifference graphs, in F. Harary (Ed.), Proof Techniques in Graph Theory, Academic Press, 139-146 (1969). [7] Hasunuma et al., A Linear Time Algorithm for L(2,1)-Labeling of Trees, Springer, 654-681 (2013) [8] D. Sakai, Labeling Chordal Graphs: Distance Two Condition, SIAM Journal on Discrete Mathematics, 133-140 (1994) [9] Lam et al., On distance two labelling of unit interval graphs, Taiwanese Journal of Mathematics 13.4, 1167-1179 (2009) 16

[10] J. Griggs and R. Yeh, Labelling graphs with a condition at distance 2, SIAM Journal on Discrete Mathematics 5.4, 586-595 (1992)

17