Optimization and Realizability Problems for Convex Geometries

Thesis presented by Keno MERCKX In fulfillment of the requirements for the degree of Doctor of Philosophy (Docteur en Sciences) Academic year 2018-2019

Supervisor: Jean CARDINAL Co-supervisor: Jean-Paul DOIGNON

Samuel FIORINI (Universite´ libre de Bruxelles, Chair) Gwenael¨ JORET (Universite´ libre de Bruxelles, Secretary) Stefan LANGERMAN (Universite´ libre de Bruxelles) Michel HABIB (Universite´ Paris Diderot) Maurice QUEYRANNE (University of British Columbia)

i

UNIVERSITELIBREDE´ BRUXELLES

DOCTORAL THESIS

Optimization and Realizability Problems for Convex Geometries

Author: Supervisor: Keno MERCKX Jean CARDINAL Co-supervisor: Jean-Paul DOIGNON

Algorithms Research Group Departement´ d’Informatique

iii

“Pluralitas non est ponenda sine necessitate.”

William of Ockham

v

UNIVERSITE´ LIBRE DE BRUXELLES

Faculte´ des Sciences Departement´ d’Informatique

Abstract

Optimization and Realizability Problems for Convex Geometries

by Keno MERCKX

Convex geometries are combinatorial structures; they capture in an ab- stract way the essential features of convexity in Euclidean space, graphs or posets for instance. A convex geometry consists of a finite ground set plus a collection of subsets, called the convex sets and satisfying certain axioms. In this work, we study two natural problems on convex geometries. First, we consider the maximum-weight convex set problem. After proving a hard- ness result for the problem, we study a special family of convex geometries built on split graphs. We show that the convex sets of such a convex geom- etry relate to poset convex geometries constructed from the split graph. We discuss a few consequences, obtaining a simple polynomial-time algorithm to solve the problem on split graphs. Next, we generalize those results and design the first polynomial-time algorithm for the maximum-weight convex set problem in chordal graphs. Second, we consider the realizability problem. We show that deciding if a given convex geometry (encoded by its copoints) results from a point set in the plane is R-hard. We complete our text with a ∃ brief discussion of potential further work.

vii Acknowledgements

First and foremost, I would like to thank Jean Cardinal and Jean-Paul Doignon for having accepted to supervise this thesis, and for their constant support during these six years. I am also very grateful for the freedom you allowed me on how I chose to organize my work. Thank you for guiding me through this journey and for all the feedback on this document. During my time as a student at ULB, I had the chance to meet excellent teachers. They deeply changed my vision of mathematics and computer sci- ence. Obviously Jean Cardinal and Jean-Paul Doignon, but also Samuel Fior- ini with his lectures on approximation algorithms, Gwenael¨ Joret by sharing his love for , and Olivier Markowitch and Yves Roggeman with their lectures on cryptography. I am also deeply thankful to Stefan Langer- man for his computation geometry class, and without whom I could not have started this work. My gratitude goes to Michel Habib and Maurice Queyranne (in addition to Jean Cardinal, Jean-Paul Doignon, Samuel Fiorini, Stefan Langerman, and Gwenael¨ Joret who have already been cited), for accepting to be part of the jury and for reviewing my thesis. Many thanks are also due to my friend Franc¸ois, with whom it was al- ways a pleasure to “work” with and share our happiness and frustration. I would like to say thank you to Udo for his interest in my work and his help- ful and challenging collaboration. I am grateful to Jeremie, Julie, Thibaut, Matthieu, Patrick, Christine and Hoan-Phung for making this experience amazing. I would like to thank the colleagues who worked as partners in different teaching activities. I would also like to thank my former classmates Isabelle, Maxime, and Rachel from ULB, and Michael, Coralie and Antoine from ARW. A huge thanks to Lucien, Olivier, Denis, Loraine, Laura, Lionel, Eiman and Celine.´ It goes without saying that I am greatly indebted to my parents as well as to my sister for their continuous support, encouragement, and love. Last, but not least, a heartfelt thank you goes to Marlene` for all your love, support and patience when I was only thinking about strange drawings. I would like to finish the acknowledgments by thanking any people that I may have forgotten to mention for their support and advice throughout the years.

ix

Contents

Abstractv

Acknowledgements vii

1 Introduction: summary and main results1 1.1 Convex geometries and ...... 1 1.2 Finding maximum-weight convex/feasible sets...... 2 1.3 The realizability problem...... 3 1.4 Contributions and collaborations...... 4

2 Background5 2.1 Basics...... 5 2.2 Graph theory...... 5 2.3 Order theory...... 6 2.4 Geometry...... 7 2.5 Complexity theory...... 7

3 An abstract notion of convexity9 3.1 Convex geometries...... 9 3.1.1 From closure operators to convex geometries...... 9 3.1.2 Antimatroids and shellings...... 12 3.1.3 Copoints and bases...... 14 3.1.4 Free sets, circuits and roots...... 15 3.1.5 Occurrences, applications and research topics..... 17 3.2 Examples of convex geometries...... 19 3.2.1 Convex geometries on posets...... 19 3.2.2 Shellings of chordal graphs...... 20 3.2.3 Affine convex geometries...... 22 3.2.4 Search antimatroids in (directed) graphs...... 24 3.2.5 Miscellaneous...... 25 x

4 The maximum-weight convex set problem 27 4.1 A classic optimization problem...... 27 4.1.1 Problem definition...... 28 4.1.2 Computational hardness...... 29 4.1.3 Note on polyhedral results...... 31 4.2 Special cases solvable in polynomial time...... 31 4.2.1 Result for poset convex geometries...... 31 4.2.2 Result for double poset convex geometries...... 33 4.2.3 Result for convex geometries on vertices...... 34 4.2.4 Result for tree convex geometries on edges...... 35 4.2.5 Result for affine convex geometries in the plane.... 35 4.3 The case of split graphs...... 36 4.3.1 Characterization of the feasible sets...... 36 4.3.2 Connection between split graph shellings and posets. 41 4.3.3 The base poset...... 44 4.3.4 Optimization results...... 46 4.3.5 Free sets and circuits characterization...... 47 4.3.6 Beyond this special case...... 49

5 Finding a maximum-weight convex set in a 51 5.1 More on chordal graphs...... 51 5.1.1 Definitions...... 51 5.1.2 The -separator graph...... 52 5.2 Problems...... 53 5.2.1 Main problem...... 53 5.2.2 Dummy vertices and sub-problems...... 54 5.3 A special case solvable in polynomial time...... 55 5.3.1 The rooted poset...... 56 5.3.2 Reduction to a poset problem...... 58 5.4 A polynomial-time algorithm...... 60 5.4.1 Computation phase...... 61 5.4.2 Preprocessing...... 63 5.5 Analysis...... 64 5.5.1 Time complexity...... 65 5.5.2 Detailed example...... 67 xi

6 The realizability problem for convex geometries 71 6.1 Basics of computational geometry...... 71 6.1.1 Affine convex geometries...... 72 6.1.2 Abstract order types and chirotopes...... 73 6.1.3 Existential theory of the reals...... 76 6.2 Hardness result for the realizability problem...... 77 6.2.1 Overview...... 77 6.2.2 Technical properties...... 78 6.2.3 The fixed ring...... 83 6.2.4 The reduction...... 84

7 Conclusion 89 7.1 Further work...... 89 7.2 Closing remark...... 90

A Allowable sequences and realizability problems 91 A.1 Allowable sequences...... 91 A.2 Realizability for allowable sequence...... 94 A.3 Results for simple allowable sequences...... 95 A.4 Realizability for convex geometries...... 96

Bibliography 101

Index 113

1

Chapter 1

Introduction: summary and main results

“Well, it’s rather difficult to define. Perhaps I’m just projecting my own concern about it. I know I’ve never completely freed myself of the suspicion that there are some extremely odd things about this mission. I’m sure you’ll agree there’s some truth in what I say.”

— HAL 9000 in 2001: A Space Odyssey

We consider two natural problems on convex geometries: the maximum- weight convex set problem and the realizability problem. The main goal of this work is to obtain computational results for those questions on specific families of convex geometries. The theorems presented in this section are the main original results of this thesis. The notions used here will be formally introduced later on with references and detailed examples.

1.1 Convex geometries and antimatroids

Chapter3 of this work presents the concept of convex geometries, together with some examples. Roughly said, a convex geometry is defined by a finite set, called the ground set, and some special subsets of this ground set that we call “convex sets”. These special subsets must share some well-defined properties. Formally, a set system (V, ) is a convex geometry if ∅ , the C ∈ C set is stable under intersection, and for all C in V , there exists a c in C C\{ } V C such that C c is also in . We also study structures related to convex \ ∪ { } C geometries: antimatroids. Formally, a set system (V, ) is an F if V , the set is stable under union, and for all F in ∅ , there ∈ F F F\{ } exists an f in F such that F f is also in . The sets in are called the \{ } F F feasible sets. Convex geometries are related to antimatroids in the following 2 Chapter 1. Introduction: summary and main results sense: (V, ) is a convex geometry if and only if (V, V C : C ) is an C { \ ∈ C} antimatroid.

1.2 Finding maximum-weight convex/feasible sets

Chapters4 and5 concern the maximum-weight convex/feasible set problem. For a given antimatroid with some real weight on each element of its ground set, a natural problem is finding a feasible set with maximum weight, where the weight of a feasible set is the sum of the weight of its elements. Of course, the problem in a convex geometry is closely related to the maximum-weight convex set problem. The antimatroids are encoded by their bases i.e. the feasible sets that cannot be obtained as the union of two other feasible sets. In Chapter4, we adapt a result of Eppstein and show that the maximum- weight feasible set problem is hard.

Theorem. The problem of finding a maximum-weight feasible set in an antimatroid encoded in the form of its base poset is not approximable in polynomial time within 1 ε a factor better than O(N 2 − ) for any ε > 0, where N is the number of elements in the base poset, unless = . P NP The proof relies on a reduction from the problem of finding the maximum size of an independent set in a graph. Next, we study the maximum-weight feasible set problem restricted to antimatroids built on split graphs (i.e. graphs in which the vertices can be partitioned into a clique K and an independent set I). Given a split graph and using the set of vertices as ground set, the feasible sets of the split graph shelling antimatroid are by definition, the prefixes of perfect elimination or- derings (i.e. iteratively removing a whose neighborhood induces a clique). We show the following polynomial time result.

Theorem. Given a split graph G = (K I, E), a maximum-weight feasible set in ∪ the split graph shelling antimatroid defined on G can be found in polynomial time.

We design an algorithm to solve the problem with time complexity in O( I TMClo( K + I , E )) where TMClo(n, m) is the time complexity for | | | | | | | | solving the maximum-weight ideal problem for a poset with n elements and m cover relations. We also describe a new characterization of free sets (the feasible sets in which every subset is also feasible) and circuits (the minimal 1.3. The realizability problem 3 non-free sets) for the split graph shelling antimatroid. The main idea behind these results is to define partially ordered sets on the vertices of the split graph and use algorithmic and structural properties of the resulting partially ordered sets. In Chapter5 we tackle the the maximum-weight convex set problem in chordal graphs (i.e. graphs with no induced of length four or more). For a chordal graph, we use the notion of m-convex sets defined as follow: a set of vertices is a m-convex set if it contains the vertices of all chordless paths between any two vertices of the set. All m-convex sets form a convex geometry: it is called the monophonically convex geometry. We obtain the following theorem which generalizes the previous result.

Theorem. Given a chordal graph G = (V, E), a maximum-weight convex set in the convex geometry defined on G (by the m-convex sets) can be found in polynomial time.

The time complexity of the algorithm is O( V 2 E 2). Note that the algo- | | | | rithm for solving the problem on split graphs has a better time complexity, but cannot be applied to all chordal graphs. The idea of the proof is to use separators (i.e. a subset of vertices such that, when removed, the number of connected components increases) in the graph to break the problem down into a collection of simpler subproblems on partially ordered sets.

1.3 The realizability problem

In Chapter6 we look at a realizability problem. In the plane, a finite point set P naturally induces an (affine) convex geometry defined by the family of con- vex sets C 2P : conv(C) P = C . We say that a convex geometry (V, ) { ⊆ ∩ } C is realizable if there exists a point set V in the plane such that the convex ge- ometry induced by V is isomorphic to (V, ). The realizability problem for C convex geometries is, given a convex geometry (V, ), deciding if (V, ) is C C realizable. Here the convex geometry is encoded by a set of copoints (i.e. the convex sets that cannot be obtained as the intersection of two other convex sets). We prove the following theorem.

Theorem. The realizability problem for convex geometries encoded by a copoint poset is R-complete. ∃ 4 Chapter 1. Introduction: summary and main results

Here, the existential theory of the reals ( R) is a complexity class defined ∃ by the following complete problem: given a system of polynomial equali- ties and inequalities (with real coefficients), decide if there is an assignment of real values to the variables such that the system is satisfied. Moreover, we show that the realizability problem is R-hard even for a specific fam- ∃ ily of convex geometries defined on abstract order types (which are a strict abstraction of point sets also known as acyclic oriented matroids of rank 3). The main idea is to use a the hardness of the realizability problem for abstract order types and set up a polynomial reduction.

1.4 Contributions and collaborations

Parts of this dissertation have been or are to be published in international peer-reviewed journals. Results in Chapters4 and5 were obtained in collab- oration with Jean Cardinal and Jean-Paul Doignon, they have been published in Discrete Mathematics & Theoretical Computer Science [25] and Journal of Graph Algorithms and Applications [24] respectively. Results in Chapters6 were ob- tained in collaboration with Udo Hoffmann, they are currently under review for publication in Journal of Computational Geometry [67]. The results obtained in collaboration with Franc¸ois Gerard´ and published in Cryptology and Net- work Security [53] are not part of this work. 5

Chapter 2

Background

“It’s always difficult to keep personal prejudice out of a thing like this. And wherever you run into it, prejudice always obscures the truth.”

— Juror #8 in 12 Angry Men

We review here some basic definitions and notation used in this work.

2.1 Basics

We use the classical notation from set theory. The set 2V consists of the sub- sets of the set V. The cardinality of V is noted V . The symbol ∅ refers to the | | empty set. The symbol R refers to the set of real numbers. The complemen- tary set V X of X for X V is denoted by X{. A pair (V, ), where V is a \ ⊆ X finite set of elements called the ground set and 2V, is called a set system. X ⊆ For f and g real-valued functions, both defined on some unbounded subset of the real positive numbers, such that g(x) is strictly positive for all large enough values of x, we write f (x) 6 O(g(x)) if and only if for all sufficiently large values of x, the absolute value of f (x) is at most a positive constant multiple of g(x). For a finite set V, the function w is a weight function if w : V R. For a weight function w on a set V, we extend the functions to → 2V as follow: for U V, the real value of w(U) is the sum of w(u) for all u in ⊆ U. For all classical set theory formalism see Bourbaki [20].

2.2 Graph theory

A (simple) graph G is a pair (V, E) where V is a (finite) set of vertices and E a set of unordered pairs of vertices, the elements in E are called the edges.A directed graph G is a pair (V, A) where V is a (finite) set of vertices and A 6 Chapter 2. Background a set of ordered pairs of vertices, the elements in A are called the arcs. In a graph G = (V, E) (resp. a directed graph G = (V, A)), a path is a sequence of distinct vertices (v ,..., v ) such that v , v + E (resp. (v , v + ) A) 1 n { i i 1} ∈ i i 1 ∈ for all i in 1, . . . , n 1 . A path is chordless if no two vertices are connected { − } by an edge that is not in the path. The graph G0 = (V0, E0) is a subgraph of G = (V, E) if V V and E E. The subgraph G = (V , E ) of G = (V, E) 0 ⊆ 0 ⊆ 0 0 0 is induced if u, v V and u, v E imply u, v E . The graph is con- ∈ 0 { } ∈ { } ∈ 0 nected if for any u, v in V there is a path (u,..., v).A connected component of G is a maximal connected subgraph of G. Each vertex belongs to exactly one connected component, as does each edge. In a graph G = (V, E) (resp. a directed graph G = (V, A)), a cycle is a path (v ,..., v ) such that v , v 1 n { n 1} is an edge (resp. (vn, v1) is an arc). A cycle is chordless if no two vertices of the cycle are connected by an edge that does not itself belong to the cycle. A graph is chordal if every chordless cycle in the graph has at most three vertices. For V V we denote by N(V ) the set of vertices w in V V such 0 ⊆ 0 \ 0 that w, v E for some v in V . We write N(v) for N( v ). For U V we { } ∈ 0 { } ⊆ define G U as the graph induced by V U, we write G v for G v with − \ − − { } v in V.A clique K of G is a set of pairwise adjacent vertices, we say that K is a maximal clique if there is no clique K of G such that K K . We denote by 0 ⊂ 0 the set of all maximal cliques in G. We call a vertex v simplicial if N(v) KG induces a clique. A set I of vertices is independent if no two vertices in I are adjacent. In a directed graph, a source is a vertex without incoming arcs and a sink is a vertex without outgoing arc. A directed graph G is an s, t-graph if G has no cycle, only one source (called s) and only one sink (called t). For a background on graph theory we recommend Diestel [33].

2.3 Order theory

A partially ordered set (or poset) P is a pair (V, 6) formed of a finite set V and a binary relation 6 over V which is reflexive, antisymmetric, and transi- tive. For a poset (V, 6) an ideal I is a subset of V such that for all elements a in I and b in V, if b 6 a, then b is also in I. The ideals are also known as downsets. We call idl(P) the set of ideals in P.A filter F is a subset of V such that for all elements a in F and b in V, if a 6 b, then b is also in F. The filters are also known as upsets. We denote the family of all filters of P by flt(P). For u, v in V, we say that v covers u in P if u = v, u v and there is no x 6 6 2.4. Geometry 7 in V u, v such that u x v. We usually use the Hasse diagram of a \{ } 6 6 poset to represent it: concretely, for a partially ordered set (V, 6) we repre- sent each element of V as a point in the plane and draw a line segment or curve that goes upward from u to v whenever v covers u. These curves may cross each other but must not touch any points other than their endpoints. Such a diagram, with labeled points, uniquely determines its partial order. We recommend Trotter [119] for more details on poset theory.

2.4 Geometry

A subset K of Rn is a Euclidean convex set if for every x, y in K, the segment [x, y] defined by λx + (1 λ)y : 0 λ 1 is contained in K. For X in { − 6 6 } Rn, the convex hull of X, noted conv(X) is the (unique) smallest Euclidean convex set (with respect to inclusion) that contains X. A point set P in R2 is in general position if, for all line ` spanned by p and p in P, we have that P 1 2 ∩ ` = p , p . For a finite set E, the pair (E, χ) is an abstract order type if χ : { 1 2} E3 1, 0, 1 satisfies the following properties. First, χ is not identically → {− } zero. Second, χ(p , p , p ) = sgn(ρ)χ(p , p , p ) for p , p , p E and ρ(1) ρ(2) ρ(3) 1 2 3 1 2 3 ∈ any permutation ρ. Third, there are p1 and p2 in E such that χ(p1, p2, q1) > 0 for all q E. Fourth, if χ(q , p , p )χ(p , q , q ), χ(q , p , p )χ(q , p , q ) and 1 ∈ 1 2 3 1 2 3 2 2 3 1 1 3 χ(q , p , p )χ(q , q , p ) are not 1 then χ(p , p , p )χ(q , q , q ) is also not 3 2 3 1 2 1 − 1 2 3 1 2 3 1, for any p , p , p , q , q , q in E. The notion of abstract order type is a − 1 2 3 1 2 3 generalization of the orientation (clockwise, collinear, or counterclockwise) of every ordered triple of points in a finite subset E of the plane R2. Note that abstract order types are also called acyclic oriented matroids of rank 3. For more details on convexity, abstract order type and oriented matroids see Goodman et al. [55].

2.5 Complexity theory

A complexity class is a set of problems of related computational complexity. We denote by the class of decision problems solvable in polynomial time P by a deterministic Turing machine. The class is the class of decision NP problems solvable by a nondeterministic polynomial-time Turing machine. An algorithm is a factor α approximation for a problem if and only if for every instance of the problem it can find a solution within a factor α of the 8 Chapter 2. Background optimum solution. If the problem is a minimization then α > 1 and the definition implies that the solution found by the algorithm is at most α times the optimum solution. On the other hand, for maximization problem, we have α < 1 so the definition guarantees that the approximate solution is at least α times the optimum. See Sipser [116] for more details on computational complexity. 9

Chapter 3

An abstract notion of convexity

“Part of me was afraid of what I would find and what I would do when I got there. I knew the risks, or imagined I knew. But the thing I felt the most, much stronger than fear, was the desire to confront him.”

— Capt. Benjamin Willard in Apocalypse Now

The goal of this chapter is to introduce the notions of convex geometry and antimatroid along with the complementarity principle between those ob- jects. After defining the basic concepts, we recall some structural results. As those notions were frequently “rediscovered”, we dedicate a section to por- tray the use of convex geometries and antimatroids in different branches of mathematics. This will be followed by a list of examples and the description of different families of convex geometries used in the literature. This chapter is mainly based on Korte et al. [83], and the paper of Edelman and Jami- son [42]. We also use some notions from matroid theory, see Oxley [99] for more details. Proofs omitted in this chapter can be found in those references.

3.1 Convex geometries

In this section, we see how an abstraction of Euclidean convex sets leads to the concept of convex geometry.

3.1.1 From closure operators to convex geometries

Many approaches to convex geometries and antimatroids are described in the literature, see for instance Monjardet [94]. We give the one based on closure operators because it highlights the link between antimatroids and matroids. Let V be a finite set and a collection of subsets of V with the following C 10 Chapter 3. An abstract notion of convexity properties:

∅ and V , ∈ C ∈ C C , C C C . 1 2 ∈ C ⇒ 1 ∩ 2 ∈ C

The set is called an alignment of V. This leads to the operator over 2V: C \ τ(X) = C : X C , { ∈ C ⊆ } where X is a subset of V. We observe that τ(X) is the unique minimal set (for the inclusion) in that contains X. Moreover, τ is a closure operator as it has C the following properties:

X τ(X), ⊆ X Y τ(X) τ(Y), ⊆ ⇒ ⊆ τ(τ(X)) = τ(X), τ(∅) = ∅.

Note that we have the following equality for a finite set V and a closure operator τ:

τ(X) : X 2V = X 2V : X = τ(X) . { ∈ } { ∈ }

The set in both sides of the equality describes the elements in the alignment , C these will be called the closed sets. We call the set V together with the closure operator τ a convex geometry if, for all X V the following property, called ⊆ the anti-exchange property, is verified.

If y, z / τ(X), y = z and z τ(X y), then y / τ(X z ). ∈ 6 ∈ ∪ ∈ ∪ { }

Note that the anti-exchange property is verified in the case of the Eu- clidean convex hull. Indeed, if we have two distinct points y and z outside of a convex hull of a set X and if z is in conv(X y ), then y is outside of ∪ { } conv(X y ). This is illustrated by Figure 3.1. ∪ { } For convex geometries, the closed sets are called the convex sets. In prac- tice, we define a convex geometry by a pair (V, ), where V is a finite set of C 3.1. Convex geometries 11

y

z

conv(X)

FIGURE 3.1: Illustration of the anti-exchange property for the convex hull in the plane. elements and 2V satisfies C ⊆

∅ , ∈ C C , C : C C , ∀ 1 2 ∈ C 1 ∩ 2 ∈ C C V , c V C : C c . ∀ ∈ C \ { } ∃ ∈ \ ∪ { } ∈ C

The convex sets are the elements in . This definition is equivalent to the one C with the closure operator, as stated by Korte et al. [83]. Figure 3.2 gives two examples of convex geometries on the ground set 1, 2, 3, 4 , whose collec- { } tion of convex sets is given as a poset with the cover relation.

1, 2, 3, 4 1, 2, 3, 4 { } { } 1, 2, 3 1, 2, 3 1, 3, 4 2, 3, 4 { } { } { } { } 1, 2 1, 3 2, 3 3, 4 { } { } { } { } 1 2 1 2 3 { } { } { } { } { } ∅ ∅

FIGURE 3.2: Two examples of convex geometries on four ele- ments.

We note here that the name convex geometry is controversial: it names a mathematical object as well as an entire discipline. Unfortunately, it has be- come more or less standard in the field. If we look back at the anti-exchange property, we see a link with the exchange property which requires for a clo- sure operator σ : 2V 2V that for all X V and for all y, z in V we have: → ⊆

If z / σ(X) and z σ(X y ), then y σ(X z ). ∈ ∈ ∪ { } ∈ ∪ { } 12 Chapter 3. An abstract notion of convexity

The exchange property is the same as the MacLane–Steinitz exchange property used in the standard matroid definition, see MacLane [87] and Ox- ley [99] for details. Note that the anti-exchange property is a fundamental feature of the convex hull in a real affine space, while the exchange property is a fundamental feature of the affine hull. To stay consistent with the notation in the Euclidean case, we call an ele- ment c of a convex set C in a convex geometry defined by τ an extreme point of C if c / τ(C c ). The set of extreme points of C is noted ext(C). The ∈ \{ } next theorem gives two interesting characterizations of convex geometries, proofs are given in Edelman and Jamison [42].

Theorem 3.1.1. For a finite set V, a closure operator τ : 2V 2V and = τ(X) : → C { X V , the three statements are equivalent: ⊆ } (i) the pair (V, ) is a convex geometry; C (ii) if C ( V is a convex set, there exists x in V C such that C x is convex; \ ∪ { } (iii) for all convex sets C in V, we have C = τ(ext(C)).

3.1.2 Antimatroids and shellings

We will now define structures which are, in a sense, duals of convex geome- tries: antimatroids. We also detail below the link between the two notions. Let V be a finite set and let be a non-empty family of subsets of V. We say F that (V, ) is an antimatroid if F

V , ∈ F F , F F F , 1 2 ∈ F ⇒ 1 ∪ 2 ∈ F F ∅ f F : F f . ∈ F \ { } ⇒ ∃ ∈ \{ } ∈ F

The last condition above is often called the accessibility property. The name antimatroid comes from the fact that these objects are closely related to the anti-exchange property, the opposite, in a way, of the exchange property for matroids. Note that many authors find the name barbaric and poorly adapted. The elements of will be called the feasible sets. Because the F feasible sets are closed under union, the set of their complements { = V F { \ F : F is closed under intersection, which gives us a closure operator. ∈ F} 3.1. Convex geometries 13

From this, we reach the following proposition, a proof can be found in Korte et al. [83].

Proposition 3.1.1. The pair (V, ) is an antimatroid if and only if (V, ) is a F C convex geometry with = V F : F . C { \ ∈ F}

1, 2, 3, 4 1, 2, 3, 4 { } { } 2, 3, 4 1, 3, 4 2, 3, 4 1, 3, 4 1, 2, 4 { } { } { } { } { } 3, 4 2, 4 1, 4 1, 2 { } { } { } { } 4 4 2 1 { } { } { } { } ∅ ∅

FIGURE 3.3: Two examples of antimatroids on four elements.

Figure 3.3 shows two antimatroids on the ground set 1, 2, 3, 4 , the fea- { } sible sets are given as a poset with the cover relation. We easily see that the complement of those feasible sets are the ones illustrated by Figure 3.2. We use the above proposition to adapt the definitions of feasible and convex sets as follows. For a convex geometry (V, ) the elements of V C : C C { \ ∈ C} are the feasible sets. Similarly, for an antimatroid (V, ), the element of F V F : F are the convex sets. Because of the complementarity ex- { \ ∈ F} posed in Proposition 3.1.1, every result on convex geometries can be trans- lated into a result about antimatroids and vice versa. In this work we will use both points of view depending on the context and the results we want to show. Antimatroids also relate to special elimination processes. An elimination process of a set V designates a general procedure in which the elements of V are removed one at a time according to a given rule. If every element which is removable at some stage of the process remains removable at any later stage, we call this a shelling process. Given a feasible set F in an antimatroid

(V, ), a shelling of F is an enumeration f1, f2,..., f F of its elements such F | | that f , f ,..., f is feasible for any k with 1 k F . The underlying { 1 2 k} 6 6 | | rules here is: the element f in V is removable at step i if Fi 1 f is in − ∪ { } F where Fi 1 is the set of elements removed at steps 1 to i 1. This is indeed a − − shelling process. In view of the accessibility property, any feasible set admits at least one shelling. There is an axiomatization of antimatroids in terms of 14 Chapter 3. An abstract notion of convexity shelling, for details see Korte et al. [83]. Many examples of antimatroids arise in a natural way from shelling processes as shown by Goecke et al. [54]. Some authors such as Eppstein [45] call basic words of an antimatroid (V, ) any F shelling of the whole set V.

3.1.3 Copoints and bases

Let (V, ) be a set system and C in . An element f in V C is attached C C \ at C if C f is also in . For an element v in V, the set C is a copoint ∪ { } C if C is a maximal set (with respect to inclusion) of contained in V v . C \{ } There may be more than one copoint attached at an element. For convex geometries, this notion of copoint allows another characterization as stated by in Edelman and Jamison [42].

Theorem 3.1.2. The pair (V, ) with an alignment of V is a convex geometry if C C and only if every copoint C has a unique attaching element.

For a convex geometry, the copoints are also the convex sets that cannot be obtained as the intersection of two other convex sets, as stated by the following proposition from Korte et al. [83]. Figure 3.4 shows the list of all copoints for a given convex geometry.

Proposition 3.1.2. Let (V, ) be a convex geometry and C a convex set with k C elements attached at it. Then C is the intersection of k copoints.

1, 2, 3, 4 { } Copoints Attachment 1, 2, 3 1, 3, 4 2, 3, 4 { } { } { } 1 3 { } 2 3 1, 3 2, 3 3, 4 { } { } { } { } 1, 2, 3 4 { } 1, 3, 4 2 1 2 3 { } { } { } { } 2, 3, 4 1 { } ∅

FIGURE 3.4: Illustration of copoints in a convex geometry.

In particular, a proper subset of V is convex if and only if it is the in- tersection of copoints. Because the convex sets of a convex geometry (V, ) C are closed under intersection, a natural way to encode (V, ) is to only keep C 3.1. Convex geometries 15 track of the copoints. It is very common to order the copoints with the inclu- sion relation to obtain the copoint poset. An illustration of a copoint poset is given in Figure 3.5.

1, 2, 3, 4 { } 1, 2, 3 1, 3, 4 2, 3, 4 { } { } { } 1, 3 2, 3 3, 4 { } { } { } 1 2 3 1, 2, 3 1, 3, 4 2, 3, 4 { } { } { } { } { } { } 1 2 ∅ { } { } FIGURE 3.5: A convex geometry and its copoint poset.

Because of the duality between convex and feasible sets, the concept of copoints and attachment are also used in antimatroids. This leads us to the following definitions regarding the feasible sets of a convex geometry. A base of a convex geometry is a non-empty feasible set that is not the union of two other feasible sets. Note that the notion of base often appears under the name “path”, but the term becomes confusing when dealing with graph theory where the notion of path is used for something completely different. In the same way we have defined the copoint poset, it is easy to obtain the base poset by ordering the bases with the inclusion relation. We use the term endpoint of a feasible set F to denote an element f in F such that F f is \{ } also feasible. Obviously, a base has a unique endpoint.

3.1.4 Free sets, circuits and roots

We will now focus on the notion of free sets, circuits and roots. Those con- cepts are designed to fit the antimatroid point of view. Let (V, ) be a convex C geometry with the set of its feasible sets. For X V, we define the trace F ⊆ of (V, ) on X as C

Tr( , X) = F X : F . F { ∩ ∈ F}

Using the definition of an antimatroid given in Subsection 3.1.2, we see that Tr( , X) is also an antimatroid. We say that a set X V is free if Tr( , X) = F ⊆ F 2X. We call circuit a set T V if it is minimal non-free, in other words, if T ⊆ 16 Chapter 3. An abstract notion of convexity is not free but every proper subset of T is free. Next, we define for a feasible set F the feasible continuation of F as

Γ(F) := c V F : F c . { ∈ \ ∪ { } ∈ F}

From a convex geometry point of view, Γ(F) is the set of extreme points of the complement of F in V. In other words Γ(F) = ext(V F). The circuits play \ an important role in the study of convex geometry and antimatroids because they lead to another nice characterization. We call the interior of a set X V ⊆ the feasible set F such that F X and F is maximal for this property. From ⊆ the union stability of the feasible sets, the interior of a set is unique. The next proposition will help us to define the concept of root, again the proof is in Korte et al. [83].

Proposition 3.1.3. Let (V, ) be a convex geometry with the set of its feasible C F sets, a circuit T and I the interior of V T. Then Γ(I) T and T Γ(I) = 1. \ ⊆ | \ | Now, for a circuit T we call the root of T the unique element r in T such that r = T Γ(I), where I is the interior of V T. The set T r will be { } \ \ \{ } called the stem. Usually we write (T r , r) to denote a circuit T with root r. \{ } Figure 3.6 gives an illustration of free sets and circuits in a convex geometry. The next proposition gives a more intuitive view of the circuits.

Proposition 3.1.4. Let (V, ) be a convex geometry with the set of its feasible C F sets, T V and r C. Then T is a circuit with root r if and only if Tr( , T) = ⊆ ∈ F 2T r . \{ } We close this section with a characterization of antimatroids by their cir- cuits due to Dietrich [34]. For a set system (V, ), the author call rooted F subset a pair (X, r) such that X V and r V X. ⊆ ∈ \ Theorem 3.1.3. Let be a set of rooted subsets of a finite set V. Then is the K K set of circuits of an antimatroid (V, ) if and only if satisfies the following two F K properties:

(C , r), (C , r) , C C C = C , 1 2 ∈ K 1 ⊆ 2 ⇒ 1 2 (C , r ), (C , r ) , r C r , (C , r ) with C C C r . ∀ 1 1 2 2 ∈ K 1 ∈ 2 \{ 2} ∃ 3 2 ∈ K 3 ⊆ 1 ∪ 2 \{ 1} 3.1. Convex geometries 17

C F 1, 2, 3, 4 1, 2, 3, 4 { } { } 1, 2, 3 1, 3, 4 2, 3, 4 2, 3, 4 1, 3, 4 1, 2, 4 { } { } { } { } { } { } 1, 3 2, 3 3, 4 2, 4 1, 4 1, 2 { } { } { } { } { } { } 1 2 3 4 2 1 { } { } { } { } { } { } ∅ ∅ Free sets Circuits 1 { } 2 { } 4 { } 1, 2 { } 1, 4 ( 1, 4 , 3) { } { } 2, 4 ( 2, 4 , 3) { } { } 1, 2, 4 ( 1, 2, 4 , 3) { } { } FIGURE 3.6: Illustration of free sets and circuits in a convex geometry.

3.1.5 Occurrences, applications and research topics

The concept of convex geometry has been discovered several times as ex- plained by Monjardet [94]. Dilworth [35] first examined structures very close to convex geometries such as the class of lower locally distributive lattices. He was followed by Avann [9, 10] who studied lower semidistributive lattice, Boulaye [18, 19] with the α-weakened lattices, Pfaltz [103] and the concept of G-lattice, Greene and Markowsky [59] with the notion of lower locally dis- tributive lattice. Edelman [40] and Jamison [70, 71] studied in detail the convex geome- tries. Together, Edelman and Jamison [42] presented the foundations of the theory of convex geometries. Korte et al. [83] considered antimatroids as a subclass of greedoids which have been introduced by Korte and Lovasz´ [81] and can be viewed as accessible set systems that satisfy the exchange prop- erty. In choice function theory, the concept of path independence of a choice function was suggested by Plott [106] in order to weaken the condition of 18 Chapter 3. An abstract notion of convexity rationality in a manner which preserves one of the key properties of ratio- nal choice, namely that choice over any subset should be independent of the way the alternatives were initially divided up to consideration. Later, Ko- shevoy [84] shows that a choice function is path independent if and only if some closure operator attached to it defines a convex geometry. This relation has also been studied by Monjardet and Raderanirina [95]. More recently, this connection between choice functions and convex geometries led to some generalizations by Danilov and Koshevoy [32]. In mathematical psychology the concepts of learning space and antima- troid are equivalent, see Falmagne and Doignon [37, 48] for details. In the learning space paradigm, the feasible sets represent a set of knowledge states from students, and the feasible continuation represents the items this student will be able to learn next based on his current state. This theory has led to the design of ALEKS (Assessment and Learning in Knowledge Spaces), a com- puter system, and a company built around that system. This helps students learn knowledge-based academic systems such as mathematics by assess- ing their knowledge and providing lessons in concepts that the assessment judges them as ready to learn. This development opens the door for many applications, see Eppstein [45], Doignon et al. [38] and Yoshikawa et al. [123]. The convex geometries also appear in many other fields of mathemat- ics. We mention here the formal language theory, see Crapo [29], Boyd and Faigle [21] and Kempner and Levit [76]. We can also mention game theory, see Algaba and et al. [7] and more recently Jimenez-Losada´ and Ordo´nez˜ [74]. There are various research questions around convex geometries. With- out being exhaustive we mention a few problems. The counting problems for a small numbers of elements, see Uznanski´ [120] or asymptotically, see Echenique [39]. Eppstein [44] generalized to antimatroids the 1/3-2/3-con- jecture from ordered sets. There also exist some polyhedral and optimiza- tion results given, among others, by Korte and Lovasz´ [82], Knauer [79] and Queyranne and Wolsey [107, 108]. There are representation theorems, see for instance Kashiwabara et al. [75] and Adaricheva and Wild [5]. Infinite versions of convex geometries occur in several sources, see for instance Dil- worth and Crawley [36], Semenova [114], Wahl [121], Adaricheva et al. [2], Adaricheva and Nation [4] and Mao [90]. 3.2. Examples of convex geometries 19

3.2 Examples of convex geometries

In this section we provide some families of convex geometries and antima- troids. We skip the known proofs that the different properties given in the previous section applied to the structures below. The goal here is not to give an exhaustive list of all families of convex geometries, but to present some classical examples used in the literature. We also give more context and de- tails on convex geometries which are used later in this work. We switch between the convex and feasible sets points of view in order to give the most intuitive idea of the notions. Fore more examples, see for instance Goecke et al. [54].

3.2.1 Convex geometries on posets

One particular class of convex geometries comes from shelling processes over posets by removing successively maximal elements. Let (V, 6) be a poset, then (V, idl(V, 6)) is a poset convex geometry. Thus the convex sets are the ideals and the feasible sets are the filters. By duality, (V, flt(V, 6)) is a poset antimatroid. The class of poset convex geometries is often consid- ered as most basic ones, because it arises in many different contexts. Poset convex geometries are the only convex geometries closed under union as shown in Korte et al. [83]. There exist several other characterizations for this class of convex geometries. Nakamura [97, 96] obtains a characterization of poset convex geometries by single-element extensions and by excluded mi- nors. Recently, Kempner and Levit [77] introduced the poly-dimension of an antimatroid, and proved that every antimatroid of poly-dimension 2 is a poset antimatroid. They established both graph and geometric characteriza- tions of such convex geometries. A shelling in a poset antimatroid coincide with a linear extensions of the poset (which explains their relationship to the 1/3-2/3-conjecture mentioned in Eppstein [44]). We also note the Represen- tation Theorem due to Birkhoff [14]: When ordered by inclusion, the feasible sets of a poset antimatroid form a distributive lattice. Conversely, any dis- tributive lattice is isomorphic to some poset antimatroid. Circuits are of the form ( v , r) with v, r in V and v < r. Moreover an antimatroid is a poset { } antimatroid if and only if all of its circuits have cardinality 2, as proved by Korte et al. [83]. It is easy to show that the set of copoints of (V, idl(V, 6)) is V flt(v) : v V . Figure 3.7 gives an example of a poset convex geometry. { \ ∈ } 20 Chapter 3. An abstract notion of convexity

1, 2, 3, 4, 5 { }

1, 2, 3, 4 { }

1, 2, 3 1, 2, 4 { } { }

1, 2 2, 4 5 { } { } 1 2 3 4 { } { }

1 2 ∅

FIGURE 3.7: A poset and the poset convex geometry built on it.

There is another popular notion of convexity on posets, instead of shelling from the top we could shell it from the bottom and the top. Let (V, 6) be a poset, then (V, ) is a double poset convex geometry when the sets in C C are the intersections between a filter and an ideal. By duality, (V, ) with F = X Y : X idl(V, ), Y flt(V, ) is a double poset antimatroid. F { ∪ ∈ 6 ∈ 6 } For u and v in a convex set C, we have directly that if u 6 c 6 v then c is in C. Formally introduced by Edelman [40], the circuits of the double poset antimatroids are ( u, v , x) such that u < x < v and u, v, x in V. Figure 3.8 { } gives an example of a double poset convex geometry.

1, 2, 3, 4 { }

1, 2, 3 2, 3, 4 { } { }

1, 3 1, 2 2, 3 2, 4 3, 4 4 { } { } { } { } { } 1 2 3 4 2 3 { } { } { } { }

1 ∅

FIGURE 3.8: A poset and the double poset convex geometry built on it.

3.2.2 Shellings of chordal graphs

Chordal graphs lead to several convex geometries. We first recall some well- known examples of such graphs. A tree is a graph in which any two vertices are connected by exactly one path. In a tree, a vertex v with N(v) = 1 is | | 3.2. Examples of convex geometries 21 called a leaf.A split graph is a graph whose set of vertices can be partitioned into a clique and an independent set. A is a chordal graph in which the distances in any connected are the same as they are in the original graph. Finally, a graph is a if the inter- section of every two connected subsets of vertices of the graph is empty or connected. We start by looking at two types of convex geometries defined on trees. The first idea is use the vertices as ground set. For a tree T = (V, E) the pair (V, ) is a tree convex geometry on vertices when is composed of the ver- C C tex sets of all connected subgraphs of T.A vertex shelling tree antimatroid is obtained by the shelling processes on vertices that consist of repeatedly deleting leaves of the remaining tree. The circuits of the vertex shelling tree antimatroid are ( u, v , r) such that r is on the path between u and v, for u, { } v, r distinct vertices in V. There is another popular notion of convexity on trees, instead of defining the shelling on vertices we could define it on the edges. For a tree T = (V, E) the pair (E, ) is a tree convex geometry on edges where is composed C C of the edges sets of all connected subgraphs of T. An edge shelling tree antimatroid is obtained by the shelling processes on the set of vertices that consist of repeatedly deleting edges of the tree that contain a leaf. The circuits of the edge shelling tree antimatroid are ( e, f , r) such that in the graph T r { } − the edges e and f are in separate connected components. For a graph G = (V, E), a set C of vertices is a connected convex set (also known as c-convex set) if the subgraph induced by C is connected. Given a graph G = (V, E) with the set of c-convex sets of G, it happens that C (V, ) is a convex geometry if and only if G is a block graph, see Jamison [72] C for a proof. The convex geometry (V, ) is then called a connected convex C geometry. We can also use the shortest paths in a graph G = (V, E) to obtain a notion of convexity. A set C V of vertices is a geodesic convex set (also ⊆ known as g-convex set) if C contains every vertex on every shortest path between vertices in C. Given a graph G = (V, E) with the set of g-convex C sets of G, it happens that (V, ) is a convex geometry if and only if G is a C disjoint union of Ptolemaic graphs, see Farber and Jamison [49] for a proof. The convex geometry (V, ) is then called a geodesic convex geometry. C For a graph G = (V, E), a set C of vertices is a monophonically convex set (also known as m-convex set) if C contains every vertex on every chord- less path between vertices in C. Given a graph G = (V, E) with the set of C 22 Chapter 3. An abstract notion of convexity m-convex sets of G, it happens that (V, ) is a convex geometry if and only C if G is chordal, see Farber and Jamison [49] for a proof. The convex geometry (V, ) is then called a monophonically convex geometry. The dual notion C comes by defining a shelling process that removes the simplicial vertices of a chordal graph, leading to a chordal graph antimatroid. See Chvatal´ [28] for a description of monophonically convex geometries using the concept of “betweenness”. In some works the special case of monophonically convex geometry in split graphs is studied, for instance in Eppstein [44]. Like double poset antimatroids, the circuits of chordal shelling antimatroids have cardi- nality 3. The pair ( u, v , r) is a circuit if and only if there is a chordless path { } from u to v passing through r. Figure 3.9 gives us the relation of inclusion be- tween the different families defined above. Note that the convexity notions

Monophonically convex geometry

Geodesic convex geometry

Connected convex geometry

Tree convex geometry on edges

Tree convex geometry on vertices

FIGURE 3.9: The inclusion relation for different classes of con- vex geometries defined on families of graphs. defined here on graphs can be generalized to hypergraphs. See Farber and Jamison [49] for more details. Figure 3.8 gives an example of a monophoni- cally convex geometry built on a chordal graph, which is in this case also a split graph.

3.2.3 Affine convex geometries

Let V Rn a finite point set. We use the convex hull to define an affine ⊂ convex geometry (V, ) with = C 2V : conv(C) V = C . Here the C C { ⊆ ∩ } underlying shelling structure corresponds to a recursive deletion of extreme points of the convex hull generated by the remaining points. This process can be generalized using a cone T and allowing only shelling in the direction of T. More formally, from a finite point set V in Rn and a cone T Rn, ⊆ the pair (V, ) is a lower affine convex geometry where = C 2V : C C { ⊆ 3.2. Examples of convex geometries 23

1, 2, 3, 4 { } 1, 2, 3 2, 3, 4 2 { } { } 1, 2 2, 4 2, 3 1, 3 3, 4 { } { } { } { } { } 1 4 1 2 3 4 { } { } { } { } 3 ∅

FIGURE 3.10: A chordal graph and the monophonically convex geometry build on it.

(conv(C) + T) V = C . Figure 3.8 gives an example of an affine convex ∩ } geometry built on a set of points in R2.

1, 2, 3, 4 { } R2 1, 2, 4 1, 3, 4 2, 3, 4 { } { } { } 1, 2 1, 3 1, 4 2, 3 2, 4 3, 4 3 { } { } { } { } { } { } 1 2 3 4 4 { } { } { } { } 1 2 ∅

FIGURE 3.11: A point set and the affine convex geometry build on it.

The affine convex geometries have been generalized using abstract order types and acyclic oriented matroids, see Bland [16] and Las Vergnas [86] for definitions and detailed constructions. Given an abstract order type (V, χ). For X V, we define the closure operator σ as follows, the set σ (X) is the ⊆ χ χ intersection of the sets H+ V such that X H+ and there are h , h in H+ ⊆ ⊆ 1 2 with χ(h1, h2, x) > 0 for all x in X. Now, given an abstract order type χ we define an AOT convex geometry (V, ) with = C 2V : σ (C) = C . The C C { ⊆ χ } letters AOT is the acronym for abstract order type. Note that the sets in H+ is an abstraction of the half-spaces generally used in the Euclidean convexity.

See Edelman [41] for the theorem stating that σχ is indeed a closure operator. Now for a transitive directed graph G = (V, A), a set C of arcs is a tran- sitive convex set (also known as t-convex set) if for every path P in C with a chord a A then a is in C. Given a transitive directed graph G = (V, A) ∈ 24 Chapter 3. An abstract notion of convexity with the set of t-convex sets of G the pair (V, ) is then called transitiv- C C ity convex geometry. Figure 3.12 gives the relation of inclusion between the different families defined above.

Lower affine convex geometry in R2 AOT convex geometry

Affine convex geometry in R2

Transitivity convex geometry

FIGURE 3.12: The inclusion relation for different classes of affine convex geometries.

3.2.4 Search antimatroids in (directed) graphs

Given a directed graph G = (V, A) with a vertex r in V, we define an antima- troid on V r whose feasible sets are F V r such that in the subgraph \{ } ⊆ \{ } induced by F r every vertex of F can be reached from r by a directed ∪ { } path. The pair (V r , ) with the set of feasible sets defined above is \{ } F F the point-search antimatroid. Alternatively, we can define an antimatroid on A whose feasible sets are arc-sets of connected subgraphs containing r, the result is called line-search antimatroid. Those construction can be made on undirected graphs, we obtain respectively the undirected point-search antimatroid and the undirected line-search antimatroid. It is possible to use both the vertices and edges as ground set, given a graph G = (V, E). We can define an antimatroid on V E where the collec- ∪ tion of feasible sets is the collection of all F in 2V E such that if the edge F ∪ (u, v) is in F, then either u or v is also in F. Then (V E, ) is a point-line ∪ F search antimatroid. Figure 3.13 gives us the relation of inclusion between the different families defined above.

Point-search antimatroid

Undirected point-search antimatroid Line-search antimatroid

Undirected line-search antimatroid

FIGURE 3.13: The inclusion relation for different classes of search antimatroids in graphs. 3.2. Examples of convex geometries 25

3.2.5 Miscellaneous

Given a graph G = (V, E), Ardila and Maneva [8] mention a specific shelling process on V by deleting vertices of degree at most k. This shelling gives rise to an antimatroid on V if every induced subgraph of G contains at least one vertex with degree at most k. In a graph, three vertices of a graph form an asteroidal triple if every two of them are connected by a path avoiding the neighborhood of the third. A graph is AT-free if it does not contain any asteroidal triple. Given an AT-free graph G = (V, E), we define the interval I(u, v) between two vertices u and v as the set of vertices z in V for which there is a chordless u, z-path that avoids N(v) v and a chordless v, z-path that avoid N(u) u . Chang et al. [27] ∪ { } ∪ { } use this notion to build a convex geometry on G. We define the set of convex as follows, C V is in if and only if for every pair of vertices in C the C ⊆ C interval between those two vertices is also in C. The pair (V, ) is then called C an AT-free convex geometry. Let V = 1, 2, . . . , n and 0 a, b n integers. Define V2 recur- { } 6 6 F ⊆ sively by ∅ and if F , j E F then F j is in if and only if ∈ F ∈ F ∈ \ ∪ { } F there are less than a numbers smaller than j not in F or less than b numbers larger than j not in F. The pair (V, ) is an (a, b)-path shelling antimatroid. F See Goecke et al. [54] for details. Poset antimatroids and double poset anti- matroids are special cases of (a, b)-path shelling antimatroids. Let G = (V, E) be an undirected graph and let r / V be an extra node. ∈ We call (V r , ) an uncover convex geometry with the union of the two ∪ { } C C sets: C r : C 2V and the set of vertex-sets that do not cover all edges { ∪ { } ∈ } of G. Note that the circuits of this convex geometry are of the form ( u, v , r) { } where u and v are adjacent. Given a bipartite graph G = (V, E) with V = U U the vertex bi- 1 ∪ 2 partition and a two-coloring (red and blue) of the edges, we call a vertex v universal extreme in G if v is not incident to any red edge. Now we define a shelling process on U1 by iteratively deleting a universal extreme vertex (from U1) and its neighbors (in U2). This process gives an antimatroid on a subset of U1. This subset is not always equal to U1, in particular, if G has no blue edge, the antimatroid obtained is (∅, ∅ ). { } Surprisingly, every antimatroid can be represented in this way. To see this let (V, ) be any antimatroid and denote by the collection of circuits F K of (V, ). We build a bipartite graph on V . We connect v in V to a circuit F ∪ K 26 Chapter 3. An abstract notion of convexity in by a red edge if v is the root of this circuit and by a blue edge if v is a K non-root element of this circuit. This defines a two-colored bipartite graph G = (V , E) and v in V is universal extreme in this graph if and only if ∪ K v is not the root of any circuit of (V, ). From this we see that the shelling F process on G defined by iteratively deleting a universal extreme vertex gives the antimatroid (V, ). An example is given by Figure 3.14. F

F 1 ( 1, 4 , 3) { } 1, 2, 3, 4 { } 2, 3, 4 1, 3, 4 1, 2, 4 2 { } { } { } ( 2, 4 , 3) 2, 4 1, 4 1, 2 { } { } { } { } 3 4 2 1 { } { } { } 4 ( 1, 2, 4 , 3) ∅ { } FIGURE 3.14: A representation of an antimatroid by a two- colored bipartite graph. 27

Chapter 4

The maximum-weight convex set problem

“Meticulous, yes. Methodical. Educated. They were these things. Nothing extreme. Like anyone, they varied. There were days of mistakes and laziness and infighting. And there were days, good days, when by anyone’s judgment, they would have to be considered clever. No one would say that what they were doing was complicated. They took from their surroundings what was needed, and made of it something more.”

— Aaron in Primer

In this chapter, we look at a fundamental optimization problem over con- vex geometries. The overall goal is to provide a polynomial-time algorithm for finding a maximum-weight convex set in a convex geometry (provided with a weight function) coming from a specific family. After having properly defined the problem and given some context, we will study the special case of monophonically convex geometries built on split graphs. The results in this chapter were obtained in collaboration with Cardinal and Doignon [25].

4.1 A classic optimization problem

In many practical optimization problems, feasible solutions consist of one or more sets that are required to satisfy some kind of convexity constraint. They can take the form of geometrically convex sets, such as in spatial planning problems, e.g. Williams [122], electoral district design, e.g. Douglas et al. [78], or underground mine design, e.g. Parkinson [100]. Alternatively, convexity can be defined in a combinatorial fashion. 28 Chapter 4. The maximum-weight convex set problem

4.1.1 Problem definition

Many classical problems in combinatorial optimization have the following form. For a set system (V, ) and for a function w : V R, find a set X of X → maximizing the value of X w(X) = ∑ w(x). x X ∈ For instance, the problem is known to be efficiently solvable for the inde- pendent sets of matroids, see Oxley [99], using the greedy algorithm. Since convex geometries capture a combinatorial abstraction of convexity in the same way as matroids capture linear dependence, we investigate the opti- mization of linear objective functions for convex geometries. It is not known whether a general efficient algorithm exists in the case of convex geometries. Of course, the hardness of finding a maximum-weight feasible set depends on the way we encode the convex geometries, see for instance Eppstein [45] and Enright [43] for more information. If one is given all the convex sets and a real weight for each element, it is trivial to find a maximum-weight convex set in time polynomial in where is the set of convex sets. |C| C We investigate what happens if we choose a more compact way to encode the information. We use now the copoint poset to describe a convex geom- etry. However, optimization on convex geometries given in this compact way is hard as Theorem 4.1.2 shows. Formally, we focus on the following maximum-weight convex set problem.

Problem 1. Given a convex geometry (V, ) encoded by its copoint poset C and a weight function w : V R, find a set C in that maximizes the value → C of w(C).

Note that, because the duality between convex and feasible sets and the fact that there are no sign restriction on the weights, an algorithm that solves Problem1 also solves directly the following maximum-weight feasible set problem.

Problem 2. Given an antimatroid (V, ) encoded by its base poset and a F weight function w : V R, find a set F in that maximizes the value of → F w(F). 4.1. A classic optimization problem 29

So we can now switch to the antimatroid point of view, thus making the exposition consistent with the historical development of the complexity re- sult below.

4.1.2 Computational hardness

We show here that solving Problem2 (and also Problem1) is hard. We first recall the following theorem due to Hastad˚ [63], initially stated in terms of a maximum clique.

Theorem 4.1.1. There can be no polynomial time algorithm that approximates the problem of finding the maximum size of an independent set in a graph on n vertices to within a factor better than O(n1 ε), for any ε > 0, unless = . − P NP For antimatroids given in the form of a base poset, we describe a - NP completeness reduction from the maximum independent set problem to the maximum-weight feasible set. The reduction is an adaptation of a result due to Eppstein [46].

Theorem 4.1.2. The problem of finding a maximum-weight feasible set in an an- timatroid encoded in the form of its base poset is not approximable in polynomial 1 ε time within a factor better than O(N 2 − ) for any ε > 0, where N is the number of elements in the base poset, unless = . P NP Proof. Given any graph G = (V, E) on which we want to find an indepen- dent set of maximum size, we use G to build a point-line search antimatroid (A, ) by letting A = V E and defining a feasible set (an element of ) as F ∪ F any subset F of A such that v , v E F then v F or v F. Remark { 1 2} ∈ ∩ 1 ∈ 2 ∈ that (A, ) is indeed an antimatroid because it satisfies both the accessibility F property and the union stability, and A . ∈ F The base poset of this antimatroid is composed of sets v for each vertex { } in V and sets v, e for each edge e E such that v e. Let d(v) denote the { } ∈ ∈ degree of the vertex v and δ = 0.1. We define a weight function: w : A R → by setting ( d(x) + δ if x V w(x) = − ∈ . 1 if x E ∈ We first show that if F is a given feasible set with weight w(F), then we can 1 construct an independent set of G of size at least w(F)δ− in polynomial time. To that end, we define a feasible set F F as follows. If V F corresponds 0 ⊆ ∩ 30 Chapter 4. The maximum-weight convex set problem

to an independent set of vertices in the graph G, then F0 = F. If it is not the case, we select a pair u, v F such that e = u, v E, and remove one { } ⊆ { } ∈ element of e from F. If u was removed, we also remove from F any element u, a F E, with a / F (to maintain the feasibility of the set). We repeat { } ∈ ∩ ∈ this operation until the remaining vertices in the set F0 form an independent set in the graph. The remaining elements then form the set F0. It is easy to check that F0 is always feasible. By the definition of the function w, we have the following inequalities,

w(F) 6 w(F0) 6 ∑ ( d(v) + δ) + ∑ 1 v V F − e E F ∈ ∩ 0 ∈ ∩ 0 6 ∑ ( d(v) + δ) + ∑ d(v) = δ V F0 . v V F − v V F | ∩ | ∈ ∩ 0 ∈ ∩ 0

So we have an independent set V F0 that we can construct in polynomial 1 ∩ time with size at least w(F)δ− . Now, let N be the number of bases of (A, ), and suppose we have a F function f and a f (N)-approximation algorithm to find a maximum-weight feasible set, i.e. we have an algorithm that returns a feasible set with weight 1 at least f (N)− times the weight of a maximum weight feasible set. Assume 1 ε that f (N) O(N 2 ) for some 0 < ε < 1. We know that N = V + 2 E , so 6 − | | | |

1 ε 2 1 ε 1 ε f (N) O(( V + 2 E ) 2 − ) O(( V + V ) 2 − ) O( V − 0 ), 6 | | | | 6 | | | | 6 | | for an ε ]0, 1[. So we have 0 ∈ 1 1 > 1 ε , f (N) O(n − 0 )

1 and we obtain a feasible set with weight at least 1 ε times the weight w∗ O(n − 0 ) of a maximum-weight feasible set. By the previous paragraph, we build an 1 ε 1 1 ε independent set with size at least (w∗/O(n − 0 ))δ− , so at least 1/O(n − 0 ) the size of a maximum independent set, and this contradicts Theorem 4.1.1. 1 ε So f (N) O(N 2 0 ) is impossible unless = . 6 − P NP Moreover, the above theorem remains true also for a subclass of antima- troids: the family of point-line search antimatroids. 4.2. Special cases solvable in polynomial time 31

4.1.3 Note on polyhedral results

A problem closely related to the optimization problem is the linear descrip- tion of the polytope defined by the convex sets. Korte and Lovasz´ [82] offer results on the topic. We state the definitions below. Let (V, ) be a convex C geometry, the convex set polytope of (V, )is defined by C

conv( ) = conv( χC : C ), C { ∈ C} where χC RV is the characteristic vector of C in , i.e. for i in V, we have ∈ C (χC) = 1 if i C and (χC) = 0 otherwise. i ∈ i The study of convex set polytopes is not the topic of this work, but as we see in the next section, knowing the linear description of conv( ) sometimes C helps in building an algorithm finding the maximum-weight convex set of a convex geometry (V, ). Obviously, the feasible set polytope is defined C using the same technique.

4.2 Special cases solvable in polynomial time

We will now review optimization problems restricted to some specific convex geometries, for which there is already a polynomial-time algorithm that finds a maximum-weight convex set.

4.2.1 Result for poset convex geometries

The problem of finding a maximum-weight convex set in a poset convex ge- ometry was first solved efficiently by Picard [104] using a minimum cut al- gorithm. For a poset convex geometry (V, ) built on the poset (V, ), the C 6P polytope conv( ) is given by C

x RV : 0 x 1 and x x , u, v V such that v u . { ∈ 6 v 6 v 6 u ∀ ∈ 6P }

The proof can be found in Picard [104] and Stanley [117]. With this descrip- tion, we have the following result from Picard [104] where TMCut(n, m) de- notes the time complexity for solving the minimum s, t-cut, in a s, t-graph with n vertices and m arcs. 32 Chapter 4. The maximum-weight convex set problem

Theorem 4.2.1. For a poset P = (V, ), and a weight function w : V R, 6P → finding an ideal of P that minimizes w can be done in O(TMCut( V , m)) time, | | where m is the number of cover relations in P.

The minimum s, t-cut can be obtained in polynomial time, for instance see Orlin [98] for a proof that TMCut(n, m) 6 O(nm). Note that switching from a poset representation to a copoint poset can be done in polynomial time. Below we give an idea of Picard’s reduction from the maximum flow problem. First, we define an s, t-graph G that has a vertex xv for each element v in V, a source vertex s and a sink vertex t. We now assign a weight on any arc of G as follows. If w(v) > 0, then there is an arc from s to xv with capacity w(v). If w(v) < 0, then there is an arc from xv to t with capacity w(v). Let + − V be the set of vertices with positive weights, and V− the set of nodes with strictly negative weights. For each cover relation u 6P v with u, v in V we create an arc (u, v) with infinite capacity. This is illustrated by Figure 4.1. For any s, t-cut s S, S{ t of the graph, we see that S{ is an ideal of the {{ } ∪ ∪ { }} poset if there is no infinite capacity arc from S to S{.

s

1 ∞ e 1 ∞ ∞ 5 ∞ ∞

a b c d e

c 4 d 5 − 1 2 4

a 1 2 − b − t

FIGURE 4.1: Illustration of the Picard’s reduction.

{ If we call WS the sum of the capacity of arcs that start in S and end in S , we have

min WS = min ∑ w(v) + ∑ w(v). S{ V S{ V + − ⊆ ⊆ v S{ V v S V− ∈ ∩ ∈ ∩ ! = min ∑ w(v) ∑ w(v) ∑ w(v) S{ V + − − − v S{ V v V− v S{ V ⊆ ∈ ∩ ∈ ∈ ∩ − = min ∑ w(v) w(V−). S{ V − v S{ ⊆ ∈ 4.2. Special cases solvable in polynomial time 33

The last term is constant, so we find an ideal of minimum weight by using an efficient minimum cut algorithm, for instance Orlin [98]. As the weights are real, switching from a minimization problem to a maximization problem is direct.

4.2.2 Result for double poset convex geometries

Groflin¨ [60] gives an algorithm to solve the maximum-weight convex set problem for double poset convex geometries. The algorithm relies on the lin- ear description of the convex set polytope for those convex geometries. This polytope is uniquely described by the box inequalities and some “alternative vector” associated to chains of the poset. An elegant reduction from the maximum-weight ideals problem to the maximum-weight convex set in double poset convex geometry is presented by Queyranne and Wolsey [107]. We give the main idea of the reduction after some definitions. For a poset P = (V, 6P) with a weight function w we define a new poset Q = (U, ) such that U = V V in which each element v in 6Q 0 ∪ 00 V has two copies v V and v V . For u , u in U the relation u u 0 ∈ 0 00 ∈ 00 1 2 1 6Q 2 holds if u u and one of the following is true, u , u V or u , u V 1 6P 2 1 2 ∈ 0 1 2 ∈ 00 or u V , u V . Roughly, the Hasse diagram of Q consists of two 1 ∈ 0 2 ∈ 00 copies of the Hasse diagram of P, connected by the relations v0 6Q v00 for all v in V, where v0 and v00 are the copies of V in V0 and V00 respectively. The weights are defined in Q by the weight function w with w (v ) = w(v) Q Q 0 − and wQ(v00) = w(v). The following proposition gives us the reduction.

Proposition 4.2.1. For a poset P = (V, ), and a weight function w : V R, a 6P → subset T U is a maximum-weight ideal in the associated poset Q = (V V , ⊆ 0 ∪ 00 6Q ) for the weight w , if and only if the set S = v V : v / T and v T is a Q { ∈ 0 ∈ 00 ∈ } maximum-weight convex set for the original weight function w of the poset convex geometry built on P.

For a poset P = (V, 6P) with n elements and m cover relations, the re- duction implies the creation of a poset Q with 2n elements and n + 2m cover relations. Hence the following theorem, using the result from the Subsec- tion 4.2.1.

Theorem 4.2.2. For a poset P = (V, ), and a weight function w : V R, 6 → finding a convex set in the double poset convex geometry built on P that maximizes 34 Chapter 4. The maximum-weight convex set problem w can be done in O(TMCut( V , V + m)) time, where m is the number of cover | | | | relations in P.

Again in this case, switching from a poset representation to a copoint poset can be done in polynomial time.

4.2.3 Result for tree convex geometries on vertices

Given a tree T = (V, E) finding an optimal subtree can be done in polyno- mial time as shows by Maffioli [88]. We describe the dynamic programming technique that leads to the theorem below. The description uses the nota- tions of Magnanti and Wolsey [89]. Note that a connected subgraph in a tree is called a subtree.

Theorem 4.2.3. For a tree T = (V, E), and a weight function w : V R, finding → a subtree T that maximizes w can be done in O( V 2) time. | | We will consider here a tree T = (V, E) with a root r in V and focus of finding a convex set containing r that maximizes w, or returning the empty set if every convex set containing r has negative weight. Let T(v) be the sub- tree of T rooted at v containing all nodes u for which the path from r to u contains v. Let p(v), the predecessor of v, be the first node u (not equal to v) on the unique path in T connecting v and r. Let S(v) be the immediate successors of node v, that is, all nodes u such that p(u) = v. Now let H(v) denote the optimal solution value of the rooted subtree problem defined on the tree T(v). If v is a leaf of T, then H(v) = max 0, w(v) . The dynamic pro- { } gramming algorithm moves up the tree from the leaves to the root. Suppose that we have computed H(u) for all successors of node v, then we determine H(v) using the recursion     H(v) = max 0, w(v) + ∑ H(u) .  u S(v)  ∈

An optimal solution is then found by working backward from the root, eliminating every subtree T(v) encountered with H(v) = 0. Running this procedure on every vertex of the tree gives the result on tree convex geom- etry on vertices. In this case, starting from a tree, we can obtain a copoint representation for the convex geometry in in polynomial time. 4.2. Special cases solvable in polynomial time 35

4.2.4 Result for tree convex geometries on edges

Given a tree T = (V, E), Groflin¨ and Liebling [61] give a minimal linear de- scription of the convex set polytope based on the notion of alternating vector for a tree. From the description, the authors build a primal-dual algorithm that leads to the following theorem for tree convex geometry on edges.

Theorem 4.2.4. For a tree T = (V, E), and a weight function w : E R, finding → a convex set in the tree convex geometry on edges built on T that maximizes w can be done in O( V 2) time. | | Again, starting from a tree we can obtain a copoint representation for the convex geometry in in polynomial time.

4.2.5 Result for affine convex geometries in the plane

For a set P of weighted points in the plane, Eppstein et al. [47] found a poly- nomial time algorithm to find a maximum-weight convex set in the convex geometry induced by P. Indeed, the authors first describe the following re- sult. Note that the convex geometries considered here are encoded with co- ordinates of points in R2, not by copoint posets.

Proposition 4.2.2. We can preprocess a point set P in the plane in O( P 2) time | | and space, such that afterwards, for each triangle in P, the number of points (and the sum of their weights) in any (query) triangle can be determined in constant time.

In this context, the authors use the following definition. A weight func- tion w of a point set P is decomposable if and only if for any polygon Pol = p ,..., p with p ,..., p in P and any index 2 < i < m, we have h 1 mi 1 m

w(Pol) = f (w( p ,..., p ), w( p , p , p + ,..., p ), p , p ), h 1 ii h 1 i i 1 mi 1 i

where the function f takes constant time to compute. In other words, when w is decomposable we can cut the polygon Pol in two along the line spanned by p1 and pi to obtain the weight of Pol from the weights of the two smaller polygons and some information on the cut segment. The weight function is called monotone decomposable if it is monotone in its first argu- ment. The next theorem is one of the main results of Eppstein et al. [47]

Theorem 4.2.5. Let w be a monotone decomposable weight function of a point set P with P = n. The convex hull of k points in P that minimizes or maximizes w | | 36 Chapter 4. The maximum-weight convex set problem can be computed in O(kn3 + G(n)) time, where G(n) is the total time required to compute w for the O(n3) possible triangles in the set.

This result can be adapted to the maximum-weight convex set problem for affine convex geometries in the plane as shown by Bautista-Santiago et al. [12].

Theorem 4.2.6. For a point set P, and a weight function w : P R, finding a → convex set that maximizes w can be done in O( P 3). | | More details and context for this problem can be found in Queyranne and Wolsey [108].

4.3 The case of split graphs

We consider here a special case of chordal graph antimatroids: the split graph shelling antimatroids, i.e. chordal graph antimatroids built on a split graph. We show that the feasible sets of such an antimatroid relate to some poset shelling antimatroids constructed from the graph. We discuss a few applications, obtaining in particular a simple polynomial-time algorithm to find a maximum-weight feasible set. We also provide a simple description of the circuits and the free sets. This special case will be useful to better under- stand the general case of chordal graph shelling antimatroids.

4.3.1 Characterization of the feasible sets

We recall from Chapter3 that a split graph is a graph whose set of vertices can be partitioned into a clique and an independent set (the empty set is both independent and a clique). Here we assume that for every split graph, the partition is given and we will denote by K and I the clique and the indepen- dent set, respectively. Note that split graphs are chordal graphs, and they are the only chordal graphs to be co-chordal (i.e. the complement of the graph is also chordal). Here is a useful characterization of the feasible sets in a split graph shelling antimatroid. Example1 provides an illustration.

Proposition 4.3.1. Let G = (K I, E) be a split graph and (V, ) be the split ∪ F graph vertex shelling antimatroid defined on G. Then a subset F of vertices is feasible for the antimatroid if and only if N(F) induces a clique. 4.3. The case of split graphs 37

Proof. For the necessary condition (Fig. 4.2), suppose we have a simplicial shelling O = ( f1,..., f F ) of a feasible set F such that N(F) does not induce a | | clique in G. Then, for some vertices v and v in N(F) we have v , v / E. 1 2 { 1 2} ∈ Hence v , v K, since K is a clique. Assume without loss of generality { 1 2} 6⊆ that v I. Let f be the first element in O such that f , v E. As v I, by 1 ∈ j { j 1} ∈ 1 ∈ definition of a split graph, f K and f is adjacent to all other vertices of K. j ∈ j Then fj is not adjacent to v2 because fj must be simplicial in G f1,..., fj 1 , \{ − } so v must be in I. Now let f be the first element of O such that f , v E 2 t { t 2} ∈ (notice j = t). Since v I, by a completely symmetric argument, we have 6 2 ∈ f K and f , v / E. Now a contradiction follows because, if j > t, the t ∈ { t 1} ∈ vertex ft is not simplicial in G f1,..., ft 1 , and if t > j the vertex fj is not \{ − } simplicial in G f1,..., fj 1 . \{ − } v I v I 1 ∈ 2 ∈

f K f K j ∈ t ∈ F

FIGURE 4.2: Illustration of the proof of necessary condition for Proposition 4.3.1.

Reciprocally, suppose that we have a set of vertices F such that N(F) in- duces a clique (Fig. 4.3). We will build a simplicial shelling O on F with the help of the following three-set partition of F:

V = F I, 1 ∩ V = (F K) N(I F), 2 ∩ \ \ V = (F K) N(I F). 3 ∩ ∩ \

We arbitrarily order the elements in each of the sets V1, V2, V3 and concatenate the orderings in this order to obtain the sequence O. By the definition of a split graph, it is obvious that the elements of O in V V fulfill the condition 1 ∪ 2 of a simplicial shelling. If V3 = ∅, we are done. Otherwise, N(V3) F is \ a clique and so it has exactly one element i in I, because N(F) induces a clique and thus all elements of V are adjacent to this single element of I 3 \ 38 Chapter 4. The maximum-weight convex set problem

F. Therefore the elements of O in V3 fulfill the conditions of the simplicial shelling.

V1 i I

F

V2 V3 K

FIGURE 4.3: Illustration of the proof of the sufficient condition for Proposition 4.3.1.

Example 1. Figure 4.4 below shows two split graphs on which we build a split graph shelling antimatroid. The set F on the left (Fig. 4.4(a)) is a feasible set and we see that N(F) defines a clique. On the right (Fig. 4.4(b)), we have a clique C and a possible simplicial shelling is proposed for a set of vertices such that its neighborhood is C.

1 2 F I I

N(F) C

K 3 K

4 5 (a) F N(F) induces a (b) F N(F) induces clique.∈ F ⇒ a clique.∈ F ⇐

FIGURE 4.4: Examples for Proposition 4.3.1.

Proposition 4.3.2. Let (V, E) be a graph and F be a subset of V. If N(F) is a clique, then V F is m-convex. \ Proof. Assume N(F) is a clique. Proceeding by contradiction, we take two vertices v, w in V F for which there exists a chordless path (u , u ,..., u ) \ 0 1 k 4.3. The case of split graphs 39

with v = u0 and uk = w having at least one vertex in F. Now we select i minimal and j maximal in 1, . . . , k 1 such that u and u are in F. Then { − } i j necessarily ui 1 and uj+1 are adjacent, so the path has a chord, contradiction. −

The converse of the implication in Proposition 4.3.2 does not hold even if the graph is connected. Even more: V F being m-convex does not imply \ that the graph N induced on N(F) is a parallel sum of cliques (in other words, that N is the complement of a multipartite graph). Figure 4.5 below shows a counter-example based on a 2-connected, chordal graph.

F

FIGURE 4.5: Counter-example for the converse implication in Proposition 4.3.2.

The converse of the implication in Proposition 4.3.2 holds if (V, E) is a split graph (this follows from Proposition 4.3.1 and Section 3 of Farber and Jamison [50]).

Corollary 4.3.1. Let G = (K I, E) be a split graph and (V, ) be the split graph ∪ F vertex shelling antimatroid defined on G. For all feasible sets F, there is at most one i I F such that there is k K F with k, i in E. ∈ \ ∈ ∩ { } Proof. This comes directly from Proposition 4.3.1 and the fact that the set I is an independent set.

Corollary 4.3.2. Let G = (K I, E) be a split graph and (V, ) be the split graph ∪ F vertex shelling antimatroid defined on G. Let u and v be distinct elements in V. Then V u, v if and only if u, v is in E, or at least one of the two vertices \{ } ∈ F { } is isolated in G.

Proof. This comes directly from Proposition 4.3.1.

Corollary 4.3.2 helps us to rebuild the original split graph for a given split graph shelling antimatroid, as shown in the following proposition. 40 Chapter 4. The maximum-weight convex set problem

Proposition 4.3.3. Let (V, ) be a split graph shelling antimatroid with = 2V, F F 6 then there is a unique split graph G such that (V, ) is the split graph shelling F antimatroid defined on G.

Proof. Suppose we have obtained a graph G such that (V, ) is the split F graph shelling antimatroid defined on it. Because = 2V and Proposi- F 6 tion 4.3.1, the graph G must have a non-empty subset S of vertices such that there exist a, b in N(S) with a, b / E (thus V a, b / ). { } ∈ \{ } ∈ F If we take an element v in V such that V u, v for all u in V v \{ } ∈ F \{ } (so v / a, b ), then Corollary 4.3.2 leaves two options. Either the vertex ∈ { } v is isolated in G or v forms an edge with every non-isolated vertex in G. Moreover, if this element v is such that v , then the existence of the { } ∈ F subset S in the graph and Proposition 4.3.1 imply that v must be an isolated vertex in the graph. We now build the graph G = (V, E) as follows. First, we identify the isolated vertices as the vertices i satisfying V i, u for all u in V i \{ } ∈ F \{ } and i . Next, among all pairs of non-isolated vertices v , v , the ones { } ∈ F { 1 2} that give an edge in G satisfy V v , v . We know that there is no \{ 1 2} ∈ F other edge by Corollary 4.3.2.

Remark that for the split graph shelling antimatroid (V, 2V), there exist several split graphs such that (V, 2V) is the split graph shelling antimatroid defined on it. For instance the complete graph on V, or the graph (V, ∅). Testing whether a given antimatroid (V, ) is a split graph shelling anti- F matroid can be done using arguments in the proof of Proposition 4.3.3: First, build a graph G = (V, E) with v , v E exactly if V v , v and { 1 2} ∈ \{ 1 2} ∈ F V v , u / for some u in V v and V v , u / for some u in \{ 1 1} ∈ F 1 \{ 1} \{ 2 2} ∈ F 2 V v . Next check that G is split and consists of exactly the feasible sets \{ 2} F of G. We now distinguish two classes of feasible sets for the split graph shelling antimatroids. A feasible set F is an i-feasible set if there is a vertex i in N(F) ∩ I (by Corollary 4.3.1, such an i is unique). On the other hand, a feasible set F is a -feasible set when N(F) K. Figure 4.6 below illustrates the two ∗ ⊆ classes of feasible sets. A feasible set of a split graph shelling antimatroid belongs either to the family of -feasible sets, or to one family i of i-feasible sets as shown in F ∗ ∗ F the following corollary. The proof is straightforward. 4.3. The case of split graphs 41

i I I

F2 F1

K K

(a) F is an i-feasible set. (b) F is a -feasible set. 2 1 ∗

FIGURE 4.6: Examples of the two classes of feasible sets.

Corollary 4.3.3. Let G = (K I, E) be a split graph and (V, ) be the split graph ∪ F vertex shelling antimatroid defined on G. If I = i1,..., i I , then decomposes { | |} F into

i I . F ∗ ∪ F 1 ∪ · · · ∪ F | |

4.3.2 Connection between split graph shellings and posets

For investigating a split graph (K I, E), we will make use of two functions K I ∪ from I to 2 ∪ , the forced set function and the unforced set function, respec- tively:

fs(i) = k K : k, i / E i0 I : N(i0) N(i) , { ∈ { } ∈ } ∪ { ∈ 6⊆ } uf(i) = fs(i){ i = k K : k, i E i0 I : N(i0) N(i) i . \{ } { ∈ { } ∈ } ∪ { ∈ ⊆ }\{ }

As shown in the next lemma, the forced set function evaluated at i gives us the vertices which belong in any i-feasible set. The unforced set function evaluated at i just gives the complement of fs(i), minus i. So for all i in I the vertex set of the graph is equal to i fs(i) uf(i). Those two definitions { } ∪ ∪ are illustrated in Figure 4.7.

Lemma 4.3.1. Let G = (K I, E) be a split graph and (V, ) be the split graph ∪ F vertex shelling antimatroid defined on G. Let i be in I, then for any i-feasible set F in we have fs(i) F. F ⊆ Proof. If F is an i-feasible set, we have i I F{ and there is k in K F with ∈ ∩ ∩ k, i E. If a vertex v in fs(i) is not in F then we have two possibilities. { } ∈ Either v K and so i, v / E (by definition of fs(i)), but that contradicts ∈ { } ∈ 42 Chapter 4. The maximum-weight convex set problem

i3 i2 i1 I

uf(i2) fs(i2)

k3 K

k1 k2

FIGURE 4.7: Illustration of the forced set and unforced set func- tions.

Proposition 4.3.1 because i, v N(F), or v I and there is k K such that { } ⊆ ∈ 0 ∈ k , i / E but k , v E (by definition of fs(i)). We know that k, k E by { 0 } ∈ { 0 } ∈ { 0} ∈ definition of K, but that also contradicts Proposition 4.3.1 because if k / F, 0 ∈ then i, k N(F), and if k F then i, v N(F) with i, v / E by { 0} ⊆ 0 ∈ { } ⊆ { } ∈ definition of I.

Lemma 4.3.2. Let G = (K I, E) be a split graph and (V, ) be the split graph ∪ F vertex shelling antimatroid defined on G. Let i be in I, then fs(i) . ∈ F ∗ Proof. Directly from the definition of fs(i), we have that N(fs(i)) K. So ⊆ fs(i) . ∈ F ∗ We will now establish the link between split graph shelling antimatroids and poset antimatroids. If we have a split graph G = (K I, E), we build ∪ a poset on K I with the binary relation defined by u v if and only if ∪ ≺ ≺ u K, v I and u, v E in G. The resulting poset (K I, ) is of height at ∈ ∈ { } ∈ ∪ ≺ most two (the number of elements in a chain is at most two). Next, we prove that all the structures (V, ) and (uf(i), F fs(i) : F i ∅) for i in I F ∗ { \ ∈ F } ∪ are poset antimatroids.

Proposition 4.3.4. Let G = (K I, E) be a split graph and (V, ) be the split ∪ F graph vertex shelling antimatroid defined on G, then = flt(K I, ). F ∗ ∪ ≺ Proof. First we show that flt(K I, ). Take F in , by definition of a F ∗ ⊆ ∪ ≺ F ∗ -feasible set, if there is a k F K, then N(k) I F. Then F is a filter of ∗ ∈ ∩ ∩ ⊆ (K I, ). ∪ ≺ Next we show that flt(K I, ). Suppose that F is a filter of (K F ∗ ⊇ ∪ ≺ ∪ I, ), then N(F) K by the definition of , and by Proposition 4.3.1 we ≺ ⊆ ≺ 4.3. The case of split graphs 43 know that F is a feasible set because K is a clique, and also a -feasible set ∗ because N(F) I = ∅. ∩ In the following, we use (uf(i), ) to denote the poset formed on uf(i) ≺ with the binary relation restricted to uf(i). ≺ Proposition 4.3.5. Let G = (K I, E) be a split graph and (V, ) be the split ∪ F graph vertex shelling antimatroid defined on G, then for all i in I, = fs(i) H : F i { ∪ H flt(uf(i), ) , H K = ∅ . ∈ ≺ ∩ 6 } Proof. Let i be in I. We first show that fs(i) H : H flt(uf(i), F i ⊆ { ∪ ∈ ≺ ) , H K = ∅ . Take a F in i, then fs(i) F by Lemma 4.3.1. We have ∩ 6 } F ⊆ directly from the definition of i that (F fs(i)) K = ∅, note also that F \ ∩ 6 F fs(i) = F uf(i). Now we just need to show that F uf(i) is a filter of \ ∩ ∩ (uf(i), ). This is equivalent to showing that N(k) I uf(i) F for all k in ≺ ∩ ∩ ⊆ K (F uf(i)). So if we take a k in K (F uf(i)), then k, i E, but F is a ∩ ∩ ∩ ∩ { } ∈ feasible set, so we must have, by Corollary 4.3.1, N(k) I uf(i) F. ∩ ∩ ⊆ Secondly, we show that i fs(i) H : H flt(uf(i), ) , H K = ∅ . F ⊇ { ∪ ∈ ≺ ∩ 6 } Suppose that H is a filter of (uf(i), ) such that H K = ∅. We need to show ≺ ∩ 6 that H fs(i) is a feasible set. We use again Proposition 4.3.1 and check that ∪ N(fs(i) H) induces a clique. We only need to observe that N(fs(i)) N(i) ∪ ⊆ by definition of the function fs, and this implies N(fs(i) H) N(i) i ∪ ⊆ ∪ { } which is a clique. Finally, by construction H N(i) = ∅ and i / H, so ∩ 6 ∈ fs(i) H is an i-feasible set and the proof is complete. ∪ Note that, in the above proposition, for i in I the set fs(i) H : H { ∪ ∈ flt(uf(i), ) without the condition H K = ∅ is included in i. ≺ } ∩ 6 F ∗ ∪ F Corollary 4.3.4. Let G = (K I, E) be a split graph and (V, ) be the split graph ∪ F vertex shelling antimatroid defined on G, then (V, ) and (uf(i), F fs(i) : F F ∗ { \ ∈ i ∅) for i in I are all poset antimatroids. F } ∪ Proof. This follows directly from Propositions 4.3.4 and 4.3.5.

Proposition 4.3.5 shows us that an i-feasible set can be decomposed into fs(i) and a filter of (uf(i), ). It is easy to see that this decomposition is ≺ unique. The definitions of -feasible and i-feasible sets lead to a better understand- ∗ ing of the poset produced by the feasible sets of a split graph shelling anti- matroid. Indeed, for a split graph shelling antimatroid (V, ) built on a split F 44 Chapter 4. The maximum-weight convex set problem graph (K I, E), we decompose the structure of the poset formed by its fea- ∪ sible sets into a poset ( , ) and I posets ( i, ), for i I, as illustrated F ∗ ⊆ | | F ⊆ ∈ by Figure 4.8 and detailed in Example2.

( , ) F i0 ⊆ ( , ) fs(i ) F i ⊆ 0 fs(i) ( , ) F ∗ ⊆ ∅

FIGURE 4.8: Schematic view of the poset produced by the fea- sible sets.

Example 2. Figure 4.9 shows a split graph (K I, E) and the poset formed by ∪ the feasible sets of the split graph shelling antimatroid built on it. The dashed link between a feasible set F and the union sign means that above this point, we look at i-feasible sets (for some i I) and the sets considered must be ∈ taken in union with fs(i).

4.3.3 The base poset

We recall from Chapter3 that for an antimatroid, a base is a feasible set that cannot be decomposed into the union of two other (non-empty) feasible sets. For a split graph shelling antimatroid (V, ) built on a split graph (K I, E), F ∪ the base poset is easy to obtain in terms of the following sets:

P = i : i I , 1 {{ } ∈ } P = k (N(k) I) : k K , 2 {{{ } ∪ ∩ } ∈ } P = fs(i) k (N(k) I i ) : i I, k N(i) , 3 { ∪ { } ∪ ∩ \{ } ∈ ∈ } P = P P P . 1 ∪ 2 ∪ 3

Proposition 4.3.6. Given a split graph shelling antimatroid (V, ) built on a split F graph (K I, E) without any vertex i in I such that N(i) = K, its set of bases equals ∪ P.

In the proposition above, the condition forbidding any i in I such that N(i) = K is not very restrictive because if such an i exists, then we change the partition K I into (K i ) (I i ). ∪ ∪ { } ∪ \{ } 4.3. The case of split graphs 45

4 5 6 I

2 K 1 3

1, 2, 3, 4, 5, 6 { }

2, 3 1, 2, 4, 5, 6 2, 3, 4, 5, 6 1, 3, 4, 5, 6 1 1, 2, 4 { } { } { } { } { } { }

2 3 1, 4, 5, 6 2, 4, 5, 6 3, 4, 5, 6 2, 3, 5, 6 1, 4 2, 4 { } { } { } { } { } { } { } { } ( ∪, ) F 4 ⊆ 1, 4, 5 2, 5, 6 4, 5, 6 3, 5, 6 3, 4, 6 2 { } { } { } { } { } { } ( ∪, ) F 6 ⊆ 4, 5 5, 6 4, 6 3, 6 { } { } { } { } ( ∪, ) F 5 ⊆ 4 5 6 { } { } { }

∅ ( , ) F ∗ ⊆

FIGURE 4.9: A split graph and the feasible sets posets associ- eted with its shelling antimatroid.

Proof. Every set in P is feasible, because of Proposition 4.3.1. Next we show that every feasible set in P cannot be decomposed into the union of two proper feasible sets. This is trivial for the sets in P1. So suppose that F = k (N(k) I) in P is the union of two proper feasible sets F and F {{ } ∪ ∩ } 2 1 2 with k F . Then F is not feasible because of Proposition 4.3.1 and the as- ∈ 1 1 sumptions which ensures that there is no i in I such that N(i) = K. Now suppose that F = fs(i) k (N(k) I i ) in P is the union of two { ∪ { } ∪ ∩ \{ } 3 proper feasible sets F and F with k F . Then, using Proposition 4.3.1, F is 1 2 ∈ 1 1 not feasible because i N(F ) but for all f in F k we have f , i / E, so ∈ 1 \{ } { } ∈ N(F1) do not induces a clique. Second, we show that every F in is the union of some sets in P. If F is a F -feasible set, we use the sets from P and P . If F is an i-feasible set, we use ∗ 1 2 the sets from P of the form fs(i) k (N(k) I i ) with k N(i) and 3 { ∪ { } ∪ ∩ \{ } ∈ some sets from P1. By Corollary 4.3.3 we are done.

Figure 4.10 illustrates Proposition 4.3.6. Directly from Proposition 4.3.6, we have the following corollary. 46 Chapter 4. The maximum-weight convex set problem

4 5 6 I

2 K 1 3 1, 2, 3, 5, 6 { }

1, 2, 4, 5 1, 3, 4, 5 2, 3, 6 1, 3, 4, 6 { } { } { } { } P3

1, 4, 5 2, 5, 6 3, 6 { } { } { } P2

4 5 6 { } { } { } P1

FIGURE 4.10: A split graph and the base poset associated with its shelling antimatroid.

Corollary 4.3.5. Let (V, ) be a split graph shelling antimatroid built on a split F graph (K I, E) without any vertex i in I such that N(i) = K. The number of bases ∪ in (V, ) is at most the number of vertices plus the number of edges from K to I. F

4.3.4 Optimization results

We will now prove that for a weighted split graph shelling antimatroid, the problem of finding a maximum-weight feasible set can be done in polyno- mial time in the size of the input even if the form of the input considered is a more compact representation than the base poset. We use the split graph itself to encode all the information about the feasible sets. In the case of the poset antimatroids, the optimization problem (intro- duced in Subsection 4.2.1) is solved using the solution to the maximum clo- sure problem:

Problem 3. Given a poset (V, ) and a weight function w : V R, find a 6 → filter F that maximizes w(F) = ∑ w( f ). f F ∈ We recall from Section 4.2 that Picard [104] designs a polynomial algo- rithm to solve Problem3. The method runs in O(TMCut(n, m)) time, where 4.3. The case of split graphs 47

TMCut(n, m) denotes the time complexity for solving the minimum s, t-cut, in a s, t-graph with n vertices and m arcs. Moreover, we know from Orlin [98] that TMCut(n, m) 6 O(nm). From now, we denote by TMClo(n, m) the time complexity for solving the maximum closure problem for a poset with n el- ements and m cover relations. Taking advantage of this optimization result, we have the following theorem.

Theorem 4.3.1. Giving a split graph G (as a list of vertices and a list of edges), the problem of finding a maximum-weight feasible set in the split graph shelling antimatroid defined on G can be done in polynomial time.

Proof. We recall that for every split graph shelling antimatroid we introduce a unique poset with relation (see just before Proposition 4.3.4) . The con- ≺ struction of this poset combined to Corollary 4.3.3 and Propositions 4.3.4 and 4.3.5 allows us to decompose the problem of finding a maximum feasi- ble set in a split graph antimatroid into several maximum closure problems. Indeed, we first solve the maximum closure problem for (V, ), yielding a ≺ -feasible set with maximum weight among all the -feasible sets. Then for ∗ ∗ each i in I, we solve the maximum closure problem for (uf(i), ), yielding a ≺ set S such that S fs(i) is a feasible set (in i) that has greater or equal ∪ F ∗ ∪ F weight than each i-feasible set. The algorithm outputs the feasible set found with maximum weight.

So suppose that we have a procedure to find a filter in a poset (V, 6) of maximum weight (given by a function w) called MaxClo(V, 6, w). In a split graph (K I, E), we look at the element i in I that maximizes the weight of ∪ fs(i) MaxClo(uf(i), , w), we then compare the result with the weight of ∪ ≺ MaxClo(K I, , w) and keep the maximum. The time complexity of the ∪ ≺ algorithm is O( I TMClo( I + K , E )). Note that if we use a procedure to | | | | | | | | find a filter in a poset (V, 6) of minimum weight (given by a function w), with very little modifications, our algorithm can be used to return a feasible set of minimum weight.

4.3.5 Free sets and circuits characterization

Let G = (V, E) be a chordal graph. It is known that the rooted circuits of its vertex shelling antimatroid admit the following simple description: a pair (C, r) is a rooted circuit if C consists of two distinct vertices u, v such that r is 48 Chapter 4. The maximum-weight convex set problem an internal vertex on some chordless path joining u and v (this follows imme- diately from Corollary 3.4 in Farber and Jamison [50]). Moreover, the circuit (C, r) is critical if and only if the path has exactly three vertices. For the par- ticular case of split graphs we now provide more efficient characterizations of (critical) circuits, and then of free sets.

Proposition 4.3.7. Let (V, ) be the vertex shelling antimatroid of the split graph F (K I, E). Set ∪

C = ( i, j , k) : k K, i, j N(k) I ; 1 { { } ∈ ∈ ∩ } C = ( i, l , k) : k K, i N(k) I, l (N(k) K) N(i) ; 2 { { } ∈ ∈ ∩ ∈ ∩ \ } C = ( i, j , k) : k K, i N(k) I, j I N(k) and 3 { { } ∈ ∈ ∩ ∈ \ m K with i, m / E, j, m E . ∃ ∈ { } ∈ { } ∈ }

Then the collection of rooted circuits of (V, ) equals C C C . Moreover, the F 1 ∪ 2 ∪ 3 collection of critical rooted circuits equals C C . 1 ∪ 2 Proof. Notice that any chordless path in a split graph (K I, E) has at most ∪ four vertices. Moreover, if it has three vertices, the internal vertex is in K and at least one endvertex is in I. If it has four vertices, the internal vertices are in K and the endvertices in I. The result then follows from the characteriza- tion of the circuits of the shelling antimatroid of a chordal graph (which we recall just before the statement): the rooted circuits forming C1 and C2 come from paths with three vertices, those forming C3 come from paths with four vertices.

Proposition 4.3.8. Let G = (K I, E) be a split graph with L and J (possibly ∪ empty) subsets of respectively K and I. Then L J is free in the vertex shelling ∪ antimatroid of G if and only if either there is no edge between L and J, or there exists some vertex h in J such that L N(h) and N(J h ) N(h) L. ⊆ \{ } ⊆ \ Proof. Assuming first that X is a free set in (V, ), we let L = X K and J = F ∩ X I (we may have L and/or J empty). If no edge of V has an endvertex in L ∩ and the other one in J, then L J is as in the first case of the statement. If there ∪ is some edge l, h with l L and h J, we show that L and J are as in the { } ∈ ∈ second case of the statement. First, there holds L N(h) because otherwise ⊆ for any vertex u in L N(h), we would find the circuit h, l, u in X (but a \ { } free set cannot contain any circuit). Second, we prove N(J h ) N(h) L \{ } ⊆ \ again by contradiction. Thus assume some vertex v belongs to N(J h ) \{ } \ 4.3. The case of split graphs 49

(N(h) L). Then v is adjacent to some i in J h , and v belongs to either \ \{ } L or K N(h). In the first eventuality, X contains the circuit h, v, i . In the \ { } second eventuality, whether l, i E or l, i / E, the circuit h, l, i is in { } ∈ { } ∈ { } X. In both eventualities we reach a contradiction. Thus X = L J is as in the ∪ second case of the statement. Conversely, assume L and J are as in the statement and let us prove that X = L J contains no circuit, and so that X is free. If a rooted circuit ( i, j , k) ∪ { } from C1 (as in Proposition 4.3.7) is in X, our assumption imposes i = h = j, a contradiction. If a rooted circuit ( i, l , k) from C is in X, then our assump- { } 2 tion implies first i = h because l N(i) L, and then k / L in contradiction ∈ ∩ ∈ with k X. Finally, if a rooted circuit ( i, j , k) from C is in X with m as in ∈ { } 3 C , our assumption implies i = h, but then m N(k) N(h) is a contradic- 3 ∈ \ tion with the assumption.

4.3.6 Beyond this special case

We studied the structure of split graph shelling antimatroids and described an algorithm to solve the maximum-weight feasible set problem in polyno- mial time. The antimatroids considered form a very special class, but the idea of using the maximum closure problem for a poset can be generalized to solve the maximum convex set problem for monophonically convex geome- try as we see in the next chapter.

51

Chapter 5

Finding a maximum-weight convex set in a chordal graph

“I was there to push people beyond what’s expected of them. I believe that’s an absolute necessity.”

— Terence Fletcher in Whiplash

In this chapter, we consider the problem of finding a maximum-weight convex set of a given vertex-weighted chordal graph. It generalizes previ- ously studied special cases in split graphs. It also happens to be closely re- lated to the closure problem in partially ordered sets and directed graphs. We give the first polynomial-time algorithm for the problem. This chapter is the result of a collaboration with Cardinal and Doignon [24].

5.1 More on chordal graphs

Before developing the main result, we present some structural results on chordal graphs.

5.1.1 Definitions

In the following, monophonically convex sets of a chordal graph G will be referred to as convex sets of G. From a path p = (v1,..., vn) we can extract a chordless path by taking a shortest path between v1 and vn in the subgraph induced by the vertices in p.A separator S of a graph G is a set of vertices such that there exist two vertices u, v in V S connected by a path in the \ graph but not in G S. We say that S is a minimal separator if there is no − separator S of G such that S S. For u, v in V, a subset S of V u, v is 0 0 ⊂ \{ } 52 Chapter 5. Finding a maximum-weight convex set in a chordal graph a uv-separator if u and v are connected in G but not in G S. The set S is a − minimal vertex separator of G if S is a uv-separator for some u, v in V and S does not strictly contain any uv-separator. Note that any minimal separator is also a minimal vertex separator, but the converse does not hold in general. We denote by the set of all minimal vertex separators in G. Note that in S G chordal graphs, every minimal vertex separator is a clique. We also recall that for any chordal graph G = (V, E) we have V and V 1, |KG| 6 | | |S G| 6 | | − the proofs of those inequalities can be found in Fulkerson and Gross [52], and Ho and Lee [64] respectively.

5.1.2 The clique-separator graph

Ibarra [69] introduces the clique-separator graph for chordal graphs. For a chordal graph G, he defines a mixed graph where the nodes are the maximal cliques and minimal vertex separators of G. Moreover, the (directed) arcs capture the inclusion-covering relation between the minimal vertex separa- tors, while the (undirected) edges represent (minimal) inclusion from min- imal vertex separators to maximal cliques of G. More precisely, the clique- separator graph of a chordal graph G has a set of clique nodes, one for G each maximal clique of G and a set of separator nodes one for each minimal vertex separator of G. The clique-separator graph has also a set A of edges and arcs defined as follow. Each arc (S, S0) is from a separator node S to a separator node S such that S S and there is no separator node S such 0 ⊂ 0 00 that S S S . Each edge K, S is between a clique node K and a sep- ⊂ 00 ⊂ 0 { } arator node S such that S K and there is no separator node S such that ⊂ 0 S S0 K. Later in this work, we will denote by Ar the set of arcs in a ⊂ ⊂ G clique-separator graph . Figure 5.1 gives an example of a clique-separator G graph of a chordal graph. Two of the mains results obtained by Ibarra are the following theorems.

Theorem 5.1.1. For a chordal graph G = (V, E), constructing the clique-separator graph of G can be done in O( V 3) time. | |

Theorem 5.1.2. Let G = (V, E) be a chordal graph with clique-separator graph G and let S be a separator node of . If G S has connected components G ,..., G , G − 1 t then t > 1 and S : S , S S has connected components ,..., G − { 0 0 ∈ S G 0 ⊆ } G1 Gt such that for every 1 6 i 6 t, the vertex set of Gi is the same as the vertex set represented by the nodes of S. Gi − 5.2. Problems 53

K4 K5 K6

G K K K 8 9 K 3 1 K7

K2 K10 K11 K12

K4 S5 K5 S6 K6

S2 K8 S8 K9 S4 G K1 K3 S7 K2 S1 S3 K7

K10 S9 K11 S10 K12

FIGURE 5.1: A clique-separator graph of a chordal graph G. G 5.2 Problems

We formally introduce the optimization problems we will consider in the rest of this chapter.

5.2.1 Main problem

Here is our main problem, the maximum-weight convex set problem in chor- dal graphs.

Problem 4. Given a chordal graph G and a weight function w : V R, find → a set C in that maximizes the value of w(C). CG Our main result follows.

Theorem 5.2.1. The maximum-weight convex set problem in chordal graphs can be solved in polynomial time.

The well-known problem of finding a maximum-weight subtree (i.e. an acyclic connected subgraph) in a tree can be solved by selecting a vertex as “root”, finding a maximum-weight subtree that contains the root, and iterat- ing this procedure for all possible roots (see Magnanti and Wolsey [89]). In order to use a similar approach to solve Problem4, we define a notion of root. It will be easier to work with chordal graphs which are connected. Note that our results straightforwardly extend to the non-connected case. 54 Chapter 5. Finding a maximum-weight convex set in a chordal graph

5.2.2 Dummy vertices and sub-problems

In order to simplify some of the later statements and arguments, we want to have in each maximal clique some vertex which is adjacent to no vertex outside the clique and which has weight zero. To this aim, we add such a vertex to any maximal clique (without changing the result of the optimization problems, see the end of the present subsection). Formally, let G = (V, E) be a vertex-weighted graph. For each maximal clique K of G, we add a new vertex dK to the graph and we make dK adjacent to exactly the vertices in K (unless K already has vertices of weight zero, not adjacent to any vertex outside of K, then we select one of those that becomes dk). The weight of dK is set to 0, while the other vertices keep their weight. The resulting vertex- weighted graph is called the extension G0 of G. Notice that the maximal cliques of G are all of the form K d , where K is a maximal clique of 0 ∪ { K} G; we call d the dummy vertex of the maximal clique K d . Given a K ∪ { K} vertex-weighted chordal graph G = (V, E), its extension G0 = (V0, E0) is also a vertex-weighted chordal graph. Remark that G and G0 essentially have the same clique-separator graph. When G = G0, we say that the vertex-weighted chordal graph G is extended.

3 4 5 3 4 5

G0 G d 2,3,4 d 2,4,5 2 { } 2 { }

d 1,2 1 1 { }

FIGURE 5.2: A chordal graph and its extension.

For a set R of vertices of an extended vertex-weighted chordal graph G, we say that a convex set C of is R-rooted if R C. If R is a singleton CG ⊆ r we write r-rooted instead of r -rooted. This modification allows us to { } { } define the following problem.

Problem 5. Given an extended chordal graph G with a weight function w : V R and a maximal clique K of G, find a d -rooted convex set C of G that → K maximizes the value of w(C).

We show below that, given any vertex-weighted chordal graph G, solving Problem5 for the extension G of G for all K in gives us a solution to 0 KG 5.3. A special case solvable in polynomial time 55

Problem4. The first lemma states the obvious link between the convex sets of G and G0.

Lemma 5.2.1. Let G = (V, E) be a chordal graph, C be a convex set of G and C0 be a convex set of G0 = (V0, E0), the extension of G. Then C is a convex set of G0 and C V is a convex set of G. 0 ∩ Proof. First, C is a convex set of G0 because any chordless path in G0 between two vertices of C is a chordless path in G. Second, C V is convex in G 0 ∩ because any chordless path in G between two vertices of C V is a chordless 0 ∩ path in G0. The next lemma shows a stronger result than what we need for proving the equivalence between Problem4 and Problem5, but it will be useful.

Lemma 5.2.2. Let G = (V, E) be a chordal graph with a convex set C in G, and G0 be the extension of G. Let KC be a maximal clique of the graph induced by C. Then, for every K in such that K K , the set d C is convex in G . 0 KG0 C ⊆ 0 { K0 } ∪ 0 Proof. For K in such that K K , suppose that d C is not convex 0 KG0 C ⊆ 0 { K0 } ∪ G (d f f c) G c C in 0. So there is a chordless path K0 , 1,..., t, in 0 with in but f1,..., ft not in C. Because f1 must be in K0, we know that for all v in KC we must have v, c E (otherwise any chordless path in G we can extract from { } ∈ (v, f1,..., ft, c) contradicts the convexity of C). There results a contradiction with the maximality of KC. Lemmas 5.2.1 and 5.2.2 combined show that any algorithm solving Prob- lem5 in polynomial time establishes Theorem 5.2.1. Indeed, we run the al- gorithm solving Problem5 on every maximal clique and save a maximum- weight solution C∗ among all the outputs of the executions. Then we remove the dummy vertices from C∗ and we are done. In what follows, the chordal graphs we consider are extended: we con- sider that every maximal clique K contains a fixed, dummy vertex dK.

5.3 A special case solvable in polynomial time

In this section, we solve Problem5 for a family of special instances. We first define a partial order relation on the vertices of a given chordal graph. Then we use this relation to reduce instances of Problem5 in this family to the closure problem in posets. The latter problem can be solved in polynomial time using Picard’s algorithm [104]. 56 Chapter 5. Finding a maximum-weight convex set in a chordal graph

5.3.1 The rooted poset

Let K be a maximal clique of a chordal graph G = (V, E). We define the binary relation on V as the set of pairs (u, v) V V such that there is a 6K ∈ × chordless path (v,..., dK) that contains u. For the reduction we need to check that the relation is indeed a partial order.

Theorem 5.3.1. For G = (V, E) a chordal graph and K a maximal clique of G, the pair (V, 6K) is a poset.

It can be shown that the order relation we just defined is a special case of the C-factor relation defined by Edelman and Jamison [42] (taking the convex set C equal to d ). The poset P = (V, ) will be referred to as the K- { K} K 6K rooted poset of G. Figure 5.4 shows a chordal graph and the Hasse diagram for (V, 6K) with K = 1, 2, d 1,2 . { { }} Theorem 5.3.1 directly follows from the two lemmas below, respectively stating that the relation is antisymmetric and transitive, and whose proofs are illustrated in Figure 5.3. The reflexivity of the relation is obvious.

Lemma 5.3.1 (Antisymmetry). For G = (V, E) a chordal graph and K a maximal clique of G, the relation 6K is antisymmetric.

Proof. For a and b in V, we show that we cannot have a 6K b, b 6K a and a = b. Suppose a b and b a, so there are two chordless paths 6 6K 6K (u1,..., uj,..., un) and (v1,..., vl,..., vm) with u1 = vl = a, uj = v1 = b and un = vm = dK. If we take the path

(uj+1,..., un, vm 1,..., vl, u2,..., uj 1), − − we can extract a chordless path p with starting vertex uj+1 and ending vertex uj 1. The path p has at least three vertices because uj+1, uj 1 is not in E. − { − } The vertex b is not in p because a = b, so we can add it to p. But then, 6 a contradiction arises, because we obtain a chordless cycle with more than three vertices due to the fact that b only forms an edge with uj 1 and uj+1 − among the considered vertices.

Lemma 5.3.2 (Transitivity). For G = (V, E) a chordal graph and K a maximal clique of G, the relation 6K is transitive.

Proof. For a, b and c three different vertices in V, suppose we have a 6K b and b 6K c. So we have (u1,..., uj,..., un) and (v1,..., vl,..., vm), two chordless 5.3. A special case solvable in polynomial time 57

paths with u1 = a, uj = v1 = b, vl = c and un = vm = dK. From the path (u1,..., uj, v2,..., vm) we extract a chordless path (u1,..., ux, vy,..., vm). If y 1, . . . , l then c is in the chordless path and we have a c. If y ∈ { } 6K ∈ l + 1, . . . , m , then from the following path: { }

(uj+1,..., un, vm 1,..., vy, ux,..., uj 1), − − we can extract a chordless path p that avoids b, with starting vertex uj+1 and ending vertex uj 1. A similar argument to the proof of the previous lemma − shows a contradiction.

a, uj 1 uj+1 − u1, dK vl b, uj, v1 vy vm 1 − vm 1 c − a, ux dK u1 uj 1 uj+1 − b, uj, v1

FIGURE 5.3: Illustrations of the proofs of antisymmetry and transitivity for the relation 6K.

  V, 6 1,2,d 1,2 { { }} G = (V, E) d 6,8 d 4,6,7 { } 7 8 { } 1 d 4,5,7 d 1,2 { } { } 6 3 2 d 3,4,5 d 3,4,5 d 2,3,4 { } { } { } 5 5 4 d 2,3,4 d 4,5,7 d 4,6,7 { } { } { } 3 4 6 7 d 6,8 { } 1 2 8 d 1,2 { }

FIGURE 5.4: A chordal graph and its 1, 2, d 1,2 -rooted poset. { { }} 58 Chapter 5. Finding a maximum-weight convex set in a chordal graph

5.3.2 Reduction to a poset problem

We now give a sufficient condition on a pair (G, K), where G is a chordal graph and K a maximal clique of G, for the existence of a one-to-one corre- spondence between the non-empty ideals of the K-rooted poset and the dK- rooted convex sets. Given a chordal graph G with clique-separator graph , G for K in G and a = (S1, S2) in Ar , we say that a is K-blocking if S1 is a mini- K G mal s d -separator for every s in S S . Figure 5.5 shows a clique-separator 2 K 2 2 \ 1 graph in which (S1, S2) and (S6, S7) are K1-blocking arcs but (S2, S3) and (S5, S4) are not.

K3 S3 K4 S4 K5 K8 S7 K9

K2 S2 S5 K6 S6 K7

K1 S1

FIGURE 5.5: A clique-separator graph with exactly two K1- blocking arcs.

As shown in Theorem 5.3.2, the absence of K-blocking arcs is a sufficient condition for the correspondence between ideals of PK and dK-rooted convex sets. Figure 5.6 below gives a schematic view of the second part of the proof.

Theorem 5.3.2. Let G = (V, E) be a chordal graph with clique-separator graph , G a maximal clique K in such that there is no K-blocking arc in and P be the KG G K K-rooted poset of G. Then a subset I of V is a non-empty ideal of PK if and only if I is a dK-rooted convex set in G.

Proof. First, let C be a convex set containing d . For c in C d , any vertex K \{ K} u such that u 6K c belongs to some chordless path. By convexity, we have u C so C is an ideal of P . ∈ K Now let I be an ideal of PK and suppose, for contradiction, that I is not convex. Then by definition, there must exist x and y in I and a chordless path

(x, f1, f2,..., ft, y) such that f1, f2,..., ft do not belong to I. Note that x and y must be incomparable in PK, for otherwise f1 or ft would be contained in I. In particular, they are both different from dK. Moreover we cannot have both x, d and y, d as edges, since otherwise x, y K. So without loss of { K} { K} { } ⊆ generality, we assume that x, d E. { K} 6∈ 5.3. A special case solvable in polynomial time 59

Let T be a minimal xy-separator included in the neighborhood N(x) of x. Let S = T I. We claim that S is either an xd -separator or an yd - ∩ K K separator. Suppose otherwise. Then there must be two chordless paths of (x u u u d ) (y v v v d ) I the form , 1, 2,..., n, K and , 1, 2,..., n0 , K contained in and avoiding S. By concatenating them, we obtain a path from x to y in I avoiding S, which contradicts the fact that T was an xy-separator. This proves the claim.

In fact, S is an xdK-separator because otherwise, we can extract a chordless path from (y, ft,..., f1, x,..., dK) that avoids S and contradicts the fact that S is an yd -separator. Now consider a minimal xd -separator S S and a K K 1 ⊆ minimal vertex separator S T such that a = (S , S ) is an arc of . We 2 ⊆ 1 2 G know such an arc exists because T is an xy-separator while S is not. We now show that a is K-blocking, a contradiction. By definition, a is K-blocking if and only if S is a td -separator for any t 1 K ∈ S S . Suppose for contradiction that for some such t there exists a chordless 2 \ 1 path from t to d avoiding S . We recall that t T and T N(x), hence K 1 ∈ ⊆ x, t is in E. But then there is a chordless path from x to d avoiding S , { } K 1 contradicting that S1 is an xdK-separator. Hence a is indeed K-blocking.

f1 ft x T y

S I u1 v1

dK

FIGURE 5.6: Illustration of the second part of proof for Theo- rem 5.3.2.

So whenever the graph G has no K-blocking arc, it is possible to compute a maximum-weight dK-rooted convex set of G in polynomial time by first computing the cover relation of the K-rooted poset, then using Picard’s algo- rithm [104]. Note that the relation 6K can be computed in polynomial time as we show later. There are some well-known examples of chordal graphs G such that for every K in , the clique-separator graph of G has no K- KG blocking arc. For example, k-trees have no arc in their clique-separator graph (see Patil [101] for details). A k-tree is a graph formed by starting with a 60 Chapter 5. Finding a maximum-weight convex set in a chordal graph clique of size k + 1 and then repeatedly adding vertices with exactly k neigh- bors inducing a clique. In the next section, we will see how to deal with the case where the clique-separator graph contains a K-blocking arc.

5.4 A polynomial-time algorithm

We now consider chordal graphs G with one or more K-blocking arcs in their clique-separator graph, for some K in . We describe an algorithm for find- KG ing a maximum-weight convex set rooted in K. For a chordal graph G with clique-separator graph we define the sub- G graph G a for a = (S1, S2) in Ar as the graph induced by the union of S1 G and the connected component of G S that intersects S . Figure 5.7 shows − 1 2 an example of the operation. Note that G a is also a chordal graph (as any induced subgraph of a chordal graph is also chordal).

G = (V, E)

3 4 5 G 2, 4 { }

d 2,3,4 d 2,4,5 { } 2 { } 2, 3, 4, d 2,3,4 2, 4, 5, d 2,4,5 { { }}{ { }} a

d 1,2 1 { } 1, 2, d 1,2 2 { { }}{ } H = G a

3 4 5 H 2, 4 { }

d 2,3,4 d 2,4,5 { } 2 { } 2, 3, 4, d 2,3,4 2, 4, 5, d 2,4,5 { { }}{ { }}

FIGURE 5.7: An example of the operation.

For a chordal graph G = (V, E), a subset R of V and a weight func- tion w, we denote by opt(G, R) a maximum-weight R-rooted convex set of G with respect to w. If R is a singleton r , we will write opt(G, r) instead { } of opt(G, r ). The algorithm proceeds in two main steps. In a first pre- { } processing phase, for each arc a = (S , S ), we compute opt(G a, S ) that 1 2 1 is, a maximum-weight convex set of G a rooted in the vertex separator

5.4. A polynomial-time algorithm 61

S1. After this preprocessing phase we denote by label(a) the solution of this sub-problem. An algorithm for this preprocessing phase is described in Sec- tion 5.4.2.

5.4.1 Computation phase

In this second phase, we are going to use the labels of the arcs to compute a maximum-weight dK-rooted convex. The algorithm proceeds essentially by collapsing the vertices of the subgraph (G a) S into a single vertex − 1 za for each arc a = (S1, S2) that is K-blocking. The weight of za is then set to w(label(a)) w(S ), so that the weight of an optimal solution remains − 1 unchanged. This is detailed in Algorithm1.

Algorithm 1: Finding a maximum dK-rooted convex set in a chordal graph Input: a chordal graph G and its clique-separator graph , a maximal clique K of G, a weight function w, the function labelG Output: a maximum-weight K-rooted convex set C 1 while a = (S1, S2) Ar such that a is K-blocking do ∃ ∈ G 2 Identify the vertices of (G a) S into a new vertex z − 1 a 3 w(z ) w(label(a)) w(S ) a ← − 1 4 Add a dummy vertex to the new maximal clique z S { a} ∪ 1 5 Update G 6 Use Picard’s algorithm to compute a maximal weight dK-rooted convex set C of G 7 Return C

Note that the number of K-blocking arcs decreases at each iteration of the loop. Indeed, at least the vertex separator S2 disappears. One step of the algo- rithm is illustrated by Figure 5.8. Since the goal is to find a maximum-weight convex set in the graph, we need to remember that including the vertex za in a solution for the collapsed instance amounts to choosing the set label(a) S \ 1 in a solution of the original instance.

Theorem 5.4.1. Let G = (V, E) be a chordal graph with a maximal clique K and let a = (S1, S2) be a K-blocking arc of Ar . Let G∗ be the graph obtained from G after G applying Steps2–4 of Algorithm1 on a. Then w (opt(G, dK)) = w(opt(G∗, dK)).

Before proving Theorem 5.4.1, we make two simple observations. 62 Chapter 5. Finding a maximum-weight convex set in a chordal graph

S S2 2 S G 1 a

S1 d za za S1 za, d z S S1 { }∪ { { a}∪ 1 } ∪ S1 G∗

S1

FIGURE 5.8: Illustration of the transformation in Algorithm1 and the implication for the clique-separator graph.

Lemma 5.4.1. Let G be a chordal graph, S be a minimal vertex separator of G and let V and V be the vertex sets of two distinct components of G S. If C and C are 1 2 − 1 2 two S-rooted convex sets in the graphs induced by V S and V S respectively, 1 ∪ 2 ∪ then C C is a convex set of G. 1 ∪ 2 Proof. By contradiction, suppose there are c and c in C C and a chordless 0 1 ∪ 2 path (c, f ,..., f , c ) of G with f ,..., f outside of C C . There must exist 1 n 0 1 n 1 ∪ 2 i in 1, . . . , n such that f is in S otherwise we have a contradiction with the { } i fact that S is a separator. But then, f C C because S C C , and we i ∈ 1 ∪ 2 ⊆ 1 ∩ 2 have a contradiction.

Lemma 5.4.2. Let G = (V, E) be a chordal graph with a maximal clique K and let

a = (S1, S2) be a K-blocking arc of Ar . Then, for a dK-rooted convex set C in G G that contains some vertex of (G a) S , we have S C. − 1 1 ⊂ Proof. By contradiction, let s be in S C and let c be in C (G a S ). 1 1 \ ∩ − 1 We know that d and c are not in the same connected component of G S . K − 1 Because a is K-blocking, there is a chordless path (dK, v1,..., vn, s1, s2) with s S S , s S and v / S . There is also a path (s , s ,..., c) in G 2 ∈ 2 \ 1 1 ∈ 1 n ∈ 1 1 20 a with s S S from which we can extract a chordless path that only 20 ∈ 2 \ 1 intersects S1 in s1. So we build a path (dK, v1,..., vn, s1,..., c) that can not have a chord, a contradiction.

Proof of Theorem 5.4.1. We decompose the equality into two inequalities. We show w(opt(G, dK)) > w(opt(G∗, dK)) first. More precisely, we show that for every dK-rooted convex C∗ of G∗, we have a dK-rooted convex set C of G with w(C) = w(C ). If z / C we take C = C and we are done. Now, if ∗ a ∈ ∗ ∗ 5.4. A polynomial-time algorithm 63 z C , we define C as the union of C z (which is convex because N(z ) a ∈ ∗ ∗ \{ a} a induces a clique) with label(a). Obviously w(C) = w(C∗), we only need to check that C is convex. Because a is K-blocking, N(za) d z S = S1 is a \{ { a}∪ 1 } minimal d z -separator, hence C z must include S . We also know that K a \{ a} 1 S1 is contained in label(a). From Lemma 5.4.1, C is convex in G, therefore w(opt(G, dK)) > w(opt(G∗, dK)). We now show w(opt(G, dK)) 6 w(opt(G∗, dK)). More precisely, for ev- ery dK-rooted convex C of G, we have a dK-rooted convex set C∗ of G∗ with w(C) w(C ). If C does not intersect (G a) S , we take C = C and we 6 ∗ − 1 ∗ are done. If C does intersect (G a) S , we define C as the union of z − 1 ∗ a with the vertices of C that also are in G∗. We have w(C) 6 w(C∗), otherwise we contradict the maximality of label(a). From Lemma 5.4.2, the vertices of C that are also in G form a convex set containing S . Since z S is a ∗ 1 { a} ∪ 1 clique, hence is convex, Lemma 5.4.1 implies that C∗ is also convex. So we have w(opt(G, dK)) 6 w(opt(G∗, dK)).

5.4.2 Preprocessing

We now describe the algorithm for computing the labels for the arcs in . G This step is done only once and does not depend on the root of the con- vex set we are looking for. Recall that the label of an arc a = (S1, S2) is a maximum-weight convex set of G a rooted in S . Note that this algorithm 1 uses Algorithm1 as a subroutine on smaller graphs. The algorithm is composed of two main ingredients. First, we need to label the arcs in an order such that the computation only involves arcs that are already labeled. We prove that we can achieve this by following the order of inclusion of the graphs G a. Second, in order to compute an optimal convex set rooted in S1, we need to check all possible roots dK such that S1 is contained in K. This is detailed in Algorithm2.

In step6 of Algorithm2, we can force S1 to be in the solution C∗ by assign- ing a sufficiently large weight to each vertex of S1 before calling Algorithm1.

More precisely, we assign them the weight ∑v V w(v) . By Lemma 5.2.2, ∈ | | looking for all the d -rooted convex sets with K in ensures that we will K Ka find a maximum-weight S -rooted convex set of G a. 1 Note that Algorithm2 labels the arcs in an order compatible with the par- tial order of inclusion of the graphs G a. The following lemma guarantees

64 Chapter 5. Finding a maximum-weight convex set in a chordal graph

Algorithm 2: Labeling the arcs in G Input: a chordal graph G and its clique separator graph , a maximal clique K of G, a weight function w G Output: the label function 1 while an arc in Ar without label do ∃ G 2 Select a = (S1, S2) Ar without label such that every arc a0 with G a G a is∈ alreadyG labeled 0 ⊂ 3 M S ← 1 4 Let a be the set of maximal cliques of G that contain S1 and are containedK in G a

5 for K in do Ka 6 Using Algorithm1, compute a maximum-weight convex set C∗ of G a rooted in d and containing S K 1 7 M max M, C ← w{ ∗} 8 label(a) M ← that the K-blocking arcs that will be processed by Algorithm1 are all already labeled.

Lemma 5.4.3. Let G be a chordal graph with clique-separator graph and let a = G (S1, S2) in Ar and a0 = (S3, S4) an arc of the clique-separator graph of G a. If G G a G a, then a is not K-blocking for any maximal clique K in . 0 6⊂ 0 Ka Proof. Suppose that G a G a. We show that S is not a minimal s d - 0 6⊂ 3 4 K vertex separator for s in S S . If G a = G a, then d is connected to s 4 4 \ 3 0 K 4 in (G a ) S and we have the result. 0 − 3 If G a = G a, there is v in G a such that v is not in G a. So there 0 6 0 must exist a chordless path p from s4 to v that avoids S3. But, because S4 is in G a and v is not, the path p must contains a vertex s S . Now, because 1 ∈ 1 s , d is an edge in G, we can deduce the existence of a chordless path from { 1 K} s4 to dK that avoids S3.

A complete execution of the algorithm on an example is given in a section below.

5.5 Analysis

We will now analyze the time complexity of the complete procedure that find a maximum-weight convex set in a chordal graph. A complete example of the execution is also provided. 5.5. Analysis 65

v

S1 s1 S2 S3 S4 s4

dK p

FIGURE 5.9: Illustration of the proof of Lemma 5.4.3.

5.5.1 Time complexity

From Algorithms1 and2, it seems straightforward that the time complexity needed to solve the maximum-weight convex set problem on a chordal graph G = (V, E) is bounded by a polynomial in V and E . More precisely, we | | | | see that the complexity of the algorithm used to solve Problem4 on G will be bounded by that of the preprocessing step. Indeed, the preprocessing step involves V E calls to Picard’s algorithm. We recall (from Chapter4) that | || | TMClo(n, m) denotes the time complexity for solving the maximum closure problem for a poset with n elements and m cover relations and TMCut(n, m) denotes the time complexity for solving the minimum s, t-cut, in a s, t-graph with n vertices and m arcs. We have TMClo(n, m) 6 O(TMCut(n, m)) (see Picard [104]) and TMCut(n, m) 6 O(nm) (see Orlin [98]). Hence the overall running time of our algorithm is O( V 2 E 2). If we denote by n the number | | | | of vertices of the input graph, then this is bounded by O(n6). To prove that the problem can be solved in this running time we need to show that all the information we need in Algorithms1 and2 can be com- puted in a time bounded asymptotically by the time of the preprocessing step. More precisely, given the chordal graph G, we can compute the follow- ing information in O( V 2 E 2) time: the clique-separator graph of G, the | | | | G vertices in G a for each a in Ar , the cliques in G for which a is K-blocking G K for each a in Ar , the clique in a for each a in Ar , the matrix of the relations G K G for each K in and a total order on the arcs such that G a G a 6K KG G ⊆ 0 implies a < a0 for a, a0 in Ar . The detailed proofs are given below. This G concludes the proof of Theorem 5.2.1. Note that the algorithm for solving the problem on split graphs (from Chapter4) has a better time complexity, but cannot be applied to all chordal graphs. We now prove that for a chordal graph G = (V, E) given by its adja- cency matrix, and a weight function on the vertices, the running time of our 66 Chapter 5. Finding a maximum-weight convex set in a chordal graph algorithm is in O( V 2 E 2), in the worst-case. We need to check that the in- | | | | formation needed for the execution of Algorithms1 and2 can be computed in advance, only once for a given graph. For a graph G, finding a connected component of G X that contains v where X V and v V X can be done − ⊆ ∈ \ in time O( V + E ) as stated by Hopcroft and Tarjan [68]. We will use the | | | | following lemma.

Lemma 5.5.1. Given a (connected) chordal graph G = (V, E) with clique-separator graph , we have V 1 6 E and Ar 6 E . G | | − | | | G | | | Proof. The first inequality follows from connectedness. For the second in- equality, notice each arc (S1, S2) Ar is generated by two cliques S1 and S2 ∈ G such that S S and there is no vertex S such that S S S . We assign 1 ⊂ 2 3 1 ⊂ 3 ⊂ 2 to each arc a = (S , S ) a unique edge s , s in G with s S and s S . 1 2 { 1 2} 1 ∈ 1 2 ∈ 2 This implies Ar 6 E . | G | | | Lemma 5.5.2. Given a chordal graph G = (V, E) and its clique-separator graph , G listing G a for all a in Ar can be done in O( E 2) time. G | |

Proof. For each arc a = (S1, S2), we need to find the connected component of G S that intersects S . Using Lemma 5.5.1, we have O( E 2) as total − 1 2 | | running time.

Lemma 5.5.3. Given a chordal graph G = (V, E) with clique-separator graph , G obtaining the list, for each a in Ar , of the cliques in G for which a is K-blocking G K takes O( E 2 V 2) time. | | | | Proof. By Lemma 5.5.2 we can obtain the list of G a for all a in Ar in O( E 2) G | | time. Then, for each a = (S1, S2) in Ar , and for each K in G, we check two G K conditions. First, that d is not in G a (i.e. S is a d s -separator for s in K 1 k 2 2 S2). Second, that there is no a0 = (S3, S1) in Ar such that dK is not in G a0 G (i.e. S1 is minimal among the s2dK-separator for every s2 in S2).

Lemma 5.5.4. Given a chordal graph G = (V, E) and its clique-separator graph , G obtaining the relations for all K in takes time O( V 2 E 2). 6K KG | | | | Proof. By Lemmas 5.5.2 and 5.5.3 we can obtain, for each arc a in Ar , the G vertices in G a and the cliques in G for which a is K-blocking in Ar in K G O( E 2 V 2). First, for all K in , we set d k for all k in K. Second, for | | | | KG k 6K all K in G, and for all a = (S1, S2) in Ar such that a is K-blocking, we set K G s u for all s S and u (G a) S . 6K ∈ 1 ∈ − 1 5.5. Analysis 67

Lemma 5.5.5. Given a chordal graph G = (V, E) and its clique-separator graph , G sorting the arcs of Ar such that G a G a0 implies a < a0 can be done in G ⊆ O( V E 2) time. | || | Proof. We use Lemma 5.5.2 to obtain a list of G a for all a in Ar . The G comparison between G a and G a0 for a, a0 in Ar takes O( V ) time. G | | Hence sorting takes O( V E 2) time. | || | Lemma 5.5.6. Given a chordal graph G = (V, E) with clique-separator graph G and the list of G a for all a in Ar , obtaining elements in a for all a in Ar takes G K G O( E V 2) time. | || |

Proof. For each arc a = (S1, S2) in Ar , we look at each K G such that G ∈ K S K, and we check if the clique is in G a. 1 ⊂ Finally, we have the main result of the section.

Theorem 5.5.1. Given a chordal graph G = (V, E) (encoded an adjacency matrix), a maximum-weight convex set in the monophonically convex geometry defined on G can be found in O( V 2 E 2) time. | | | |

5.5.2 Detailed example

Looking at Algorithms1 and2, it seems possible to merge them to save com- putation time. But the situation is not that simple, because in Theorem 5.4.1, the assumption that a is K-blocking cannot be removed. To illustrate the mechanism of the two algorithms, we give an example. Figure 5.10 shows a chordal graph G, its clique-separator graph and a weight function. The G goal is to compute opt(G, dK1 ). We look at the preprocessing phase first, and we use Algorithm2 to label a and a . Because G a G a , we begin by computing label(a ). In 1 2 2 ⊂ 1 2 other words, we want to compute a maximum-weight S2-rooted convex set of G a , illustrated in Figure 5.11. There is no K-blocking arc in G a for 2 2 any K in , we can directly use Picard’s algorithm on each clique in Ka2 Ka2 after temporarily changing the weight of the vertices in S2 in order to impose that S2 be contained in the solution. So Picard’s algorithm is used twice, with

K4 and K5, and we keep the best solution among the outputs. The result will be a convex set of weight 1, for instance 2, 4, 6, 7, 8, d , which becomes { K5 } label(a2). 68 Chapter 5. Finding a maximum-weight convex set in a chordal graph

0 0

dK dK 4 4 2 5 3 − 6 7 8

1 4 1 − − 3 4 5 K4 S3 K5 a2

d d K2 2 K3 0 0 0 K2 S2 K3 a1

d 1 K1 1 0 K1 S1

FIGURE 5.10: A chordal graph and its clique-separator graph for illustrating Algorithms1 and2.

0 0

d d 4 K4 2 K5 3 − 6 7 8

4 − 4 K4 S3 K5 S2 2 0

FIGURE 5.11: The graph G a and its clique-separator graph. 2

Now we compute label(a1), so we are looking for an S1-rooted convex set in G a represented in Figure 5.12. We temporarily change the weight of the 1 vertices in S and we run Algorithm1 on the graph G a four times, with 1 1 the cliques K2, K3, K4 and K5. For the clique K4 there is no K4-blocking arc and we use Picard’s algorithm. The same process is applied with K5. For the clique K2, the arc a2 is K2-blocking but already labeled. So we identify the ver- tices of (G a ) S to a vertex z with weight w(label(a )) w(S ) = 1. 2 − 2 a2 2 − 2 After this operation, there is no K2-blocking arc and we use Picard’s algo- rithm. Figure 5.13 shows a visual representation of the transformation. The same process is applied with K3. For the labeling of a1 we have used Picard’s algorithm four times. A best S -rooted convex set of G a is 2, 6, d with 1 1 { K4 } weight 4. Now every arc is labeled, and we look at the computing phase. Because we want a maximum-weight dK1 -rooted convex set, we run Algorithm1. 5.5. Analysis 69

0 0

d d 4 K4 2 K5 3 − 6 7 8

1 4 1 − − 3 4 5 K4 S3 K5 a2

d d K2 2 K3 0 0 S1 0 K2 S2 K3

FIGURE 5.12: The graph G a and its clique-separator graph. 1

0 1

d za K6 2

1 1 4 dK , za S2 − − { 6 2 } ∪ 3 4 5

d d K2 2 K3 0 0 S1 0 K2 S2 K3

FIGURE 5.13: The graph after the identification of vertices in order to remove K2-blocking arcs.

There is only one K1-blocking arc, namely a1. So we identify the vertices of (G a ) S to a vertex z with weight w(label(a )) w(S ) = 4. After this 1 − 1 a1 1 − 1 operation, there is no K1-blocking arc as shown in Figure 5.14, and we use Pi- card’s algorithm to find 1, 2, z , d as a maximum-weight K -rooted con- { a1 K1 } 1 vex set, which gives rise to the convex set C = 1, 2, d (label(a ) S ) = ∗ { K1 } ∪ 1 \ 1 1, 2, 6, d , d of G, with w(C ) = 5. { K1 K4 } ∗

4 z a1

d K7 2 0 0 K1 S1 2, z , d { a1 K7 }

d 1 K1 1 0

FIGURE 5.14: The state of the graph after removing the K1 blocking arc.

71

Chapter 6

The realizability problem for convex geometries

“We’ve always defined ourselves by the ability to overcome the impossible. And we count these moments. These moments when we dare to aim higher, to break barriers, to reach for the stars, to make the unknown known.”

— Joseph Cooper in Interstellar

In this chapter we discuss the realizability problem for convex geome- tries. After providing some context about the problem, we use a hardness result for the realizability of abstract order types to show that deciding the realizability of an affine convex geometry in the plane is R-hard (hence also ∃ -hard). This is related to a problem posed by Edelman and Jamison [42] NP in their seminal paper. The results in this chapter were obtained in collabora- tion with Hoffmann [67]. Originally, the hardness result for the realizability problem for convex geometries was based on results involving “allowable sequences”. We give here a simpler version of the proof only involving ab- stract order types. AppendixA provides basic definitions and properties of allowable sequence and a summary of the original proof. For details and context regarding the computational geometry concepts used in this chapter, see Goodman et al. [55] and Richter-Gebert [110].

6.1 Basics of computational geometry

We first introduce some key concepts in computational geometry and define the realizability problem in different contexts. We also introduce the existen- tial theory of the reals. 72 Chapter 6. The realizability problem for convex geometries

6.1.1 Affine convex geometries

We know that starting with a finite set of points P in Rd, we obtain an affine convex geometry (P, ) with equal to C 2P : conv(C) P = C . For CP CP { ⊆ ∩ } a convex geometry (V, ) we say that (V, ) is realized by a set of points P C C in Rd if (V, ) is isomorphic to (P, ). Edelman and Jamison [42] posed the C CP problem of characterizing the convex geometries that can be realized by a finite point set in Rd. We will, in a first time, mainly focus on affine convex geometries induced by point sets in R2 and show that even in this special case, the problem is hard. We define the realizability problem for convex geometries as the following decision problem. Given a copoint poset of a convex geometry (V, ), is there a point set P in R2 such that the affine con- C vex geometry induced by P is isomorphic to (V, )? Here the notion of iso- C morphism between two convex geometries (V , ) and (V , ) means there 1 C1 2 C2 is a bijection f : V V such that for all C in 2V1 we have C if and 1 → 2 ∈ C1 only if f (C) . Note that an affine convex geometry (P, ) has at most ∈ C2 C P 2 copoints. Indeed, the convex sets for affine convex geometries are de- | | fined using intersections of half-spaces spanned by two points of P. Because copoints are the convex sets that are not the intersection of other convex sets, the convex geometry has at most P 2 copoints. | | Adaricheva and Wild [5] show some relation between special cases of affine convex geometries and order types, implying that the computational problem of deciding a modified version of the Edelman–Jamison problem is hard. We mention some results connected to the realizability problem for con- vex geometries. Kashiwabara et al. [75] showed that any convex geometry can be represented as a generalized shelling in Rd for some d. Richters and Rogers [109] reproved this theorem giving a better bound on the dimension d. Different representations of finite convex geometries using different shapes than points for the elements of the ground set have been studied, see for instance Adaricheva and Bolat [3], Czedli´ [30] or Czedli´ and Kincses [31]. In the following sections, we give a simple construction showing that de- ciding the realizability of convex geometries in R2 is -hard (in fact we NP prove a stronger result). This construction can be lifted in any dimension, thus we obtain a hardness result for the original Edelman–Jamison problem. Formally, we reduce an R-complete realizability problem for abstract or- ∃ der types to the realizability problem for affine convex geometries. All these 6.1. Basics of computational geometry 73 notions are introduced below.

6.1.2 Abstract order types and chirotopes

Combinatorial abstractions of properties of point sets in Rd are useful tools in computational geometry. For example, many algorithms on point sets only require the “order type” of the point instead of the exact coordinates, which makes many algorithms in computational geometry purely combinatorial. For a point set P in the plane, the chirotope associated with P is the mapping ϕ : P3 1, 0, 1 , where → {− }    1 1 1 ϕ(p , p , p ) = sgn det   . 1 2 3  p1x p2x p3x 

p1y p2y p3y

The map ϕ encodes an orientation (clockwise, collinear, or counterclockwise) for triples of points. The other way of seeing a chirotope is that ϕ(p1, p2, p3) gives us the information of the position of p2 with respect to the directed line through (p1, p3). The information can be “to the left of”, “to the right of” or “contained in” the line. For a point set P in the plane, the pair (P, ϕ) is an order type if ϕ is the chirotope of P. Figure 6.1 shows a point set and the order type associated with it. By the properties of the determinant in the definition of ϕ, the four equalities ϕ(a, b, c) = 1, ϕ(a, b, d) = 1, ϕ(a, c, d) = 1 − and ϕ(b, c, d) = 0 completely determine the order type.

a

b c d ϕ(b, c, d) = 0

ϕ(a, d, b) = −1 ϕ(a, b, c) = 1 ϕ(a, c, d) = 1

FIGURE 6.1: Illustration of an order type.

For a finite set E, the pair (E, χ) is an abstract order type if χ : E3 → 1, 0, 1 satisfies the four acyclic rank 3 chirotope axioms which are the {− } following: 74 Chapter 6. The realizability problem for convex geometries

χ is not identically zero, • χ(p , p , p ) = sgn(ρ)χ(p , p , p ) for p , p , p in E and any per- • ρ(1) ρ(2) ρ(3) 1 2 3 1 2 3 mutation ρ,

there are p and p in E such that χ(p , p , q ) 0 for all q E, • 1 2 1 2 1 > 1 ∈ if χ(q , p , p )χ(p , q , q ) = 1 and χ(q , p , p )χ(q , p , q ) = 1 and • 1 2 3 1 2 3 6 2 2 3 1 1 3 6 χ(q , p , p )χ(q , q , p ) = 1, then χ(p , p , p )χ(q , q , q ) = 1, for any 3 2 3 1 2 1 6 1 2 3 1 2 3 6 p1, p2, p3, q1, q2, q3 in E.

More details and context are given in Bjorner¨ et al. [15]. Obviously, the order type induced by a point set in R2 is an abstract order type. But abstract order types are strict abstractions of point sets, hence not all abstract order types can be represented as a set of points in the plane. An abstract order type (E, χ) is realizable if there exists a point set in the plane with chirotope χ. This leads to the realizability problem for abstract order types: given an abstract order type (E, χ), decide if there exists a planar point set P, the order type of which is isomorphic to (E, χ). We say that two abstract order type (E , χ ) and (E , χ ) are isomorphic if there is a bijection f : E 1 1 2 2 1 → E2 such that for all a, b, c in E1 we have χ1(a, b, c) = χ2( f (a), f (b), f (c)). The smallest example of a non-realizable abstract order type is given by the modified Pappus configuration illustrated in Figure 6.2. The orientations in the abstract order type are given by the lines and one curve. So e is on the right side of the directed line through (d, f ) (i.e. the orientation of (d, e, f ) is counterclockwise). But in R2, the points d, e and f must be collinear by Pappus’s hexagon theorem. For more details on Pappus configuration, see Grunbaum¨ [62].

c b a

d e f

g h i

FIGURE 6.2: A non-realizable modified Pappus configuration. 6.1. Basics of computational geometry 75

An abstract order type induces an AOT convex geometry by definition of the latter (see Chapter3).

Lemma 6.1.1. An abstract order type uniquely determines an AOT convex geome- try.

But a given AOT convex geometry can be induced by several distinct ab- stract order types. This is illustrated by Figure 6.3 where two distinct (real- izable) abstract order types on P = a, b, c, d induce the convex geometry { } (P, 2P). For an AOT convex geometry (V, ) we say that an abstract order C type is a representation of (V, ) if the abstract order type induces (V, ). C C Obviously an AOT convex geometry can have more than one representation.

a c a d

P P CP = 2 CP = 2 χ(a, b, c) = 1 χ(a, b, c) = 1 χ(a, d, c) = 1 χ(a, d, c) = −1

b d b c

FIGURE 6.3: Two abstract order types inducing the same AOT convex geometry.

The concept of (abstract) order types appears under different names in the literature, for example in Knuth [80] where alternative axioms for acyclic uniform rank 3 oriented matroids are studied under the name of CC-systems. Another important result is the Topological Representation Theorem due to Folkman and Lawrence [51] using pseudoline arrangements which are ar- rangements of oriented x-monotone curves that pairwise intersect exactly once in the Euclidean plane. The theorem shows that every abstract order type can be represented as an arrangement of oriented pseudolines. See Bokowski [17] for the detail of a proof. It is a natural question to ask how the point sets that agree with the com- binatorial description looks like. This question leads to the following notion. For an abstract order type (E, χ) with E = n, the realization space of (E, χ) | | is the set of all points in R2n that gives a realization of (E, χ) in R2 where a point set with n elements in R2 is naturally mapped to a point in R2n. In his famous Universality Theorem, Mnev¨ [93] proved that for any arbitrary semi- algebraic set S there is some abstract order type whose realization space has, in some sens, the same structure as S 76 Chapter 6. The realizability problem for convex geometries

6.1.3 Existential theory of the reals

To provide a hardness result for the realizability problem for affine convex geometries, we will use the existential theory of the reals. In terms from mathematical logic, the theory consists in the set of all true sentences of the form

x ,..., x , F(x ,..., x ), ∃ 1 ∃ n 1 n where F(x1,..., xn) is a quantifier-free formula involving equalities and in- equalities of real polynomials connected by “and” connectors. The existential theory of the reals leads to the following decision problem: given a system of polynomial equalities and inequalities, decide if there is an assignment of real values to the variables such that the system is satisfied. Using this prob- lem as “complete” we define a complexity class called R. In other word, a ∃ decision problem P is in R if there is a polynomial reduction to P from the ∃ decision problem induced by the existential theory of the reals. See Basu et al. [11] for more details. The only known relations to other complexity classes are R SPACE, where SPACE is the class of decision problems N P ⊆ ∃ ⊆ P P solvable by a Turing machine in polynomial space. The second relation is a result by Canny [22]. Whether one of the relations is strict or not is unknown. The complexity class R has been introduced by Schaefer [113], moti- ∃ vated by the continuously expanding list of (geometric) problems that have been shown to be complete in this class. One of the first geometric R- ∃ complete problems is the abstract order type realizability problem. The re- duction is due to Mnev¨ with his Universality Theorem: for each polynomial inequality system S that consists of strict inequalities and equalities there is an abstract order type whose realization space is “stably equivalent” to the geometric set described by S. This means that the abstract order type con- structed from S is not only realizable if the set solutions of S is non-empty, but the set of solutions also has the same “structure”. The structures pre- served by the equivalence relation include the homotopy group and the al- gebraic complexity of the numbers (e.g., “does S have a rational solution”), see Richter-Gebert and Ziegler [111] for more consequences of stable equiv- alence. We give a more detailed introduction about this concept in the next section. Many geometric problems can be shown to be R-hard by a reduction ∃ 6.2. Hardness result for the realizability problem 77 from realizability problem for abstract order types (or the dual problem in- volving pseudoline arrangements), see Goodman et al. [55] for details. Some R-complete geometric problems include recognition of intersection graphs ∃ of segments (see Kratochv´ıl and Matousekˇ [85]), intersection graphs of discs (see McDiarmid and Muller¨ [92]), intersection graphs of convex sets (see Schaefer [113]) and point visibility graphs (see Cardinal and Hoffmann [26]), the art gallery problem (see Abrahamsen et al. [1]), realizability of the face lat- tice of a 4-polytope (see Richter-Gebert and Ziegler [111]) and d-dimensional Delaunay triangulations (see Adiprasito et al. [6]), computing the rectilin- ear crossing number (see Bienstock [13]) and planar slope number (see Hoff- mann [66]). Recently, Roy [112] published an ingenious and rather involved -hardness proof for recognition of arbitrary point visibility graphs. We NP refer to Cardinal [23] for an overview.

6.2 Hardness result for the realizability problem

In this section, we show that the realizability problem for convex geometries, encoded by a copoint poset, is R-hard. First, we state some technical re- ∃ sults on abstract order types and AOT convex geometries. Next, we define a specific family of abstract order types, which are the building blocks for our main result. Finally, we reduce the realizability problem for abstract order types to the realizability problem for convex geometries.

6.2.1 Overview

The main result of this chapter is the following theorem.

Theorem 6.2.1. The realizability of convex geometries encoded by a copoint poset is R-hard. ∃ However, before giving a proof for Theorem 6.2.1, we show a closely re- lated result.

Theorem 6.2.2. The realizability of AOT convex geometries, encoded by an abstract order type, is R-hard. ∃ The main idea of the proof for Theorem 6.2.2 is to show that, for some specific AOT convex geometries with additional information about their “ex- treme points”, we can retrieve the “only” abstract order type that induces the 78 Chapter 6. The realizability problem for convex geometries convex geometry. The technical results presented below are useful to define this process. The additional information about the extreme points will be given by the construction of a “fixed ring,” which can be viewed as further points added to the abstract order type to force a specific counterclockwise sequence of extreme points in every (potential) realization of the abstract or- der type.

6.2.2 Technical properties

We extend the notion of extreme points to abstract order types. For an ab- stract order type (P, χ), a point p in P is extreme if p is extreme in the AOT convex geometry induced by (P, χ). The definition is equivalent to the one in Las Vergnas [86]. The following lemma is a direct consequence of the defini- tion of extreme points and the application of the Jarvis March (see Jarvis [73]). Jarvis March is used to detect the extreme points of a convex hull from a given point set in the plan. Starting from a rightmost point of the point set, we keep the points in the convex hull by counterclockwise rotation. From a current point, we can choose the next point by checking the orientations of those points from the current point. When the angle is largest, the point is chosen. This process can directly be adapted to abstract order types. Figure 6.4 gives an illustration. Proofs and context can be found in Goodman et al. [55].

Lemma 6.2.1. For any abstract order type (P, χ) with an extreme point r1, there is a unique sequence of extreme points (r ,..., r ) such that r ,..., r are in gen- 1 k { 1 k} eral position, and for i in 1, . . . , k , χ(r , r + , a) 0 for every a in P, with the { } i i 1 > convention that rk+1 is r1.

r2

r3

r1

FIGURE 6.4: Illustration of Jarvis March. 6.2. Hardness result for the realizability problem 79

Note that the application of Jarvis March is polynomial. Given an AOT convex geometry induced by (P, χ) with an extreme point r1, we call the (counterclockwise) extreme cycle the unique sequence from Lemma 6.2.1.

In the following, when we mention an extreme cycle (r1,..., rk) and perform some operations on the point ri, we assume for convenience that an index i larger than k is identified with an element of 1, . . . , k as follow. The index is identified with k if i is a multiple of k and with i mod k otherwise. A direct consequence of the previous lemma is the following corollary (also a direct consequence of Jarvis March [73] for abstract order type).

Corollary 6.2.1. For any abstract order type (P, χ) with a, b in P, r1 an extreme point and (r1,..., rk) the unique counterclockwise sequence of extreme points E, the sets Ra,b,1 = r E : χ(a, r, b) = 1 and Ra,b, 1 = r E : χ(a, r, b) = 1 are { ∈ } − { ∈ − } composed of consecutive subsequences of (r1,..., rk). Moreover, there are at most two elements r in E such that χ(a, r, b) = 0.

In the following, for a convex geometry (P, ) we denote by τ the clo- C C sure operator associated to it. The next lemma is a direct consequence of the definition of convex sets for AOT convex geometry. Figure 6.5 gives an illustration of Lemma 6.2.2.

Lemma 6.2.2. Let (P, χ) be an abstract order type that induces an AOT convex geometry (P, ) and a, b, c, d in P in general position. We have that d is in C τ ( a, b, c ) if and only if χ(a, d, b) = χ(b, d, c) = χ(c, d, a). C { } Proof. Directly, d in τ ( a, b, c ) means that every convex set containing a, b C { } and c also contains d. So we must have χ(a, d, b) = χ(a, c, b) and χ(b, d, c) = χ(b, a, c) and χ(c, d, a) = χ(c, b, a), otherwise, using the definition of convex sets we build a convex set containing a, b and c, but not d. Using the acyclic rank 3 chirotope axioms (from Subsection 6.1.2) we have the result. Conversely by contradiction, if d is not in τ ( a, b, c ) then χ(a, d, b) = C { } 6 χ(a, c, b) or χ(a, d, c) = χ(a, b, c) or χ(b, d, c) = χ(b, a, c). Suppose we have 6 6 χ(a, d, b) = χ(a, c, b), then χ(a, d, b) = χ(b, d, c). The other cases are similar. 6 6

The next lemma highlights a connection with a given pair of points (a, b) and a given element of the extreme cycle. The two cases of the proof are illustrated by Figure 6.6. 80 Chapter 6. The realizability problem for convex geometries

a a

d b c b c

d

FIGURE 6.5: Illustration of the relation between orientations and the convex closure.

Lemma 6.2.3. Let (P, χ) be an abstract order type and r1 an extreme point such that (r ,..., r ) is the extreme cycle E. Let (P, ) be the induced AOT convex geometry 1 k C and a, b in P with a = b. There is exactly one point r in E such that a is not in 6 i τ ( ri+1, b ) and a is in τ ( ri, ri+1, b ). C { } C { }

Proof. First, we suppose that a is in τ ( rj, rj+1 ) rj for rj in E. in that C { } \{ } case we take rj = ri if b / τ ( a, rj ) and rj+1 = ri otherwise. So in the ∈ C { } following we suppose that a is not in τ ( rj, rj+1 ) rj for a rj in E. Second, C { } \{ } note that for a points rj in E, if b is in τ ( rj, rj+1 ) rj then a is outside C { } \{ } τ ( rj, rj+1, b ). So now we consider rj in E such that χ(rj, rj+1, b) = 0. If rj C { } 6 is such that χ(a, b, r ) = χ(a, b, r + ) = 0 , then a, b, r and r + are in general j j 1 6 j j 1 position and by Lemma 6.2.2, a is outside τ ( rj, rj+1, b ). C { } So by Corollary 6.2.1, there are only two pairs of candidates r , r + for { i i 1} the property that a is in the set τ ( ri, ri+1, b ), because ri and ri+1 cannot be C { } both in Ra,b,1 or both in Ra,b, 1. − Suppose r is not collinear with a and b, such that χ(a, b, r ) = χ(a, b, r + ). i i 6 i 1 There are two cases to consider: χ(r + , b, a) = 1 and χ(r + , b, a) = 1. i 1 i 1 − We know that χ(ri, b, ri+1) = 1 so if χ(ri+1, b, a) = 1, then, using acyclic rank 3 chirotope axioms (from Subsection 6.1.2) and Lemma 6.2.2, b is in

τ (ri, ri+1, b ) and a is not in τ ( ri, ri+1, b ). Now if χ(ri+1, b, a) = 1, C { } C { } − then a is in τ ( ri, ri+1, b ). If there is rj in E such that a is in τ ( rj, b ), then C { } C { } we have that a is in τ ( rj, rj+1, b ). Note that a is also in τ ( rj, rj 1, b ), but C { } C { − } rj 1, rj is not a valid candidate because a is in τ ( rj, b ). { − } C { } The next lemma is more technical and shows how the orientation of a triple (a, b, c) in an abstract order type imposes some constraints to the con- vex closure in the AOT convex geometry. Figure 6.7 shows in R2 the three possible cases. 6.2. Hardness result for the realizability problem 81

ri+1 ri ri+1 ri a a

b b

FIGURE 6.6: Two different cases for the selection of (ri, ri+1) in the proof of Lemma 6.2.3.

Lemma 6.2.4. Let (P, χ) be an abstract order type and r1 an extreme point such that (r ,..., r ) is the extreme cycle E. Let (P, ) be the induced AOT convex 1 k C geometry and a, b in P and c in P E such that a and b are not both collinear \ with r and r for l in 1, . . . , k , and χ(a, c, b) = 1. Let r and r in E be l l+1 { } i j such that a is in τ ( ri 1, ri, b ) and b is in τ ( rj, rj+1, a ) with a outside of C { − } C { } τ ( b, ri 1 ) and b outside of τ ( a, rj ). Then, either c is in τ ( a, b, ri,... rj ) C { − } C { } C { } or a is in τ ( b, c, ri 1 ) or b is in τ ( a, c, rj+1 ). C { − } C { }

Proof. First, suppose ri and rj+1 are collinear with a and b. Then, c must be in τ ( a, b, ri,... rj+1 ). Second, suppose that ri and rj+1 are both not collinear C { } with a and b. If c is not in τ ( a, b, ri+1,... rj ), then c must be in τ (ri 1, ri, a) C { } C − or τ (rj, rj+1, b). Consider the first case: c in τ (ri 1, ri, a). We show that a is in C C − τ ( b, c, ri 1 ). The fact that c is in τ (ri, ri+1, a) and a is in τ ( ri, ri+1, b ) can C { − } C C { } be translated, using Lemma 6.2.2, by χ(ri, c, ri+1) = χ(ri+1, c, a) = χ(a, c, ri) and χ(ri, a, ri+1) = χ(ri+1, a, b) = χ(b, a, ri). Moreover χ(ri 1, c, ri) = χ(ri 1, a, ri) = 1 and χ(a, c, b) = 1 by hypoth- − − esis. This means that χ(ri 1, a, c) = χ(c, a, b) = χ1(b, a, ri 1) = 1 or, − − − again using Lemma 6.2.2, a is in τ( b, c, ri 1 ). In a similar fashion, c in { − } τ (rj, rj+1, b) leads to the fact that b in τ( a, c, rj+1 ). C { }

ri ri−1 ri ri−1 ri ri−1 c

c a a a b b b

c

rj rj+1 rj rj+1 rj rj+1

FIGURE 6.7: The three possibles cases of Lemma 6.2.4. 82 Chapter 6. The realizability problem for convex geometries

In the next two results, we compare two abstract order types (P, χ1) and (P, χ2), which induce the same convex geometry. Formally, this means that every subset of P is a convex set in the convex geometry induced by (P, χ1) if and only if it is a convex set in the convex geometry induced by (P, χ2). The equality between the two abstract order types in Proposition 6.2.1 will be useful in the reduction presented in Subsection 6.2.4.

Lemma 6.2.5. Let (P, χ1) and (P, χ2) be two abstract order types that both have an extreme point r1. If the two abstract order types have the same counterclockwise sequence of extreme points (r1,..., rk) and if they induce the same convex geometry, then χ (a, r, b) = χ (a, r, b) for any extreme point r and every a, b in P r . 1 2 \{ }

Proof. Consider two abstract order types (P, χ1) and (P, χ2) with the same counterclockwise sequence of extreme points (r1,..., rk) such that they in- duce the same convex geometry (P, ). We denote by E the set of extreme C points. By Lemma 6.2.3, there is exactly one point ri in E such that a is not in τ (ri+1, b) and a is in τ (ri, ri+1, b). Moreover, there is exactly one point C C rj in E such that b is not in τ (rj+1, a) and b is in τ (rj, rj+1, a). Using Corol- C C lary 6.2.1, Lemma 6.2.2 and the fact that the counterclockwise sequence of extreme points is fixed, we have the result.

Proposition 6.2.1. Let (P, χ1) and (P, χ2) two abstract order types that both have an extreme point r1. If the two abstract order types have the same extreme cycle

(r1,..., rk) and if they induce the same convex geometry, then χ1 = χ2.

Proof. Consider two abstract order types (P, χ1) and (P, χ2) that both have an extreme point r1 with the same counterclockwise sequence of extreme points

(r1,..., rk). Also suppose that (P, χ1) and (P, χ2) induce the same convex geometry (P, ). We call E the set of extreme points. Note that if there exists C three points that are collinear in one abstract order type and not in the other, then the induced convex geometries are not equal. We suppose that χ = χ 1 6 2 and we show a contradiction. Because χ = χ , there are a, b and c in P, such 1 6 2 that χ (a, c, b) = 1 and χ (a, c, b) = 1. By Lemma 6.2.5, the three points 1 2 − cannot all be extreme points, so we suppose that c is not in E. Moreover, a and b cannot be such that a, b τ ( rl, rl+1 ) for l in 1, . . . , k , otherwise { } ⊂ C { } { } χ (r , r , c) = 1 or χ (r , r , c) = 1, which is not compatible with the 1 l l+1 − 2 l l+1 − definition of the extreme cycle.

By Lemma 6.2.3, there are two unique ri and rj in E such that a is in

τ ( ri 1, ri, b ) and b is in τ ( rj, rj+1, a ) with a outside of τ ( b, ri 1 ) and C { − } C { } C { − } 6.2. Hardness result for the realizability problem 83

b outside of τ ( a, rj ). Because χ1(a, c, b) = 1, Lemma 6.2.4 gives us that ei- C { } ther c is in τ ( a, b, ri,... rj ) or a is in τ ( b, c, ri 1 ) or b is in τ ( a, c, rj+1 ). C { } C { − } C { } Note that C = p P : χ (a, p, b) 0 and C = p P : χ (a, p, b) > { ∈ 2 > } 0 { ∈ 2 0 must be in . The case c in τ ( a, b, ri,... rj ) is not valid because the } C C { } intersection between τ ( a, b, ri,... rj ) and C is a convex set that includes C { } a, b, ri,... rj , but not c . Again a in τ ( b, c, ri 1 ) is also not valid because { } { } C { − } C0 b is a convex set and τ ( b, c, ri 1 ) (C0 b ) includes b, c, ri 1 ∪ { } C { − } ∩ ∪ { } { − } but not a . Similarly, b is in τ ( a, c, rj+1 ) leads to a contradiction because { } C { } τ ( a, c, rj+1 ) (C0 a ) includes a, c, rj+1 but not b . C { } ∩ ∪ { } { } { }

6.2.3 The fixed ring

We proceed to define abstract order types, which are the building blocks for our reduction. We define Dk as the (abstract) order type of the following point set in R2. We suppose that k > 2. Consider a (convex) k-gon with vertices (r ,..., r ) in counterclockwise order. Then add k points r ,..., r , 1 k { 10 k0 } one on each edge of the k-gon, where ri0 is placed on the edge induced by ri and r + with i 1, . . . , k 1 and r is placed on the edge induced by r i 1 ∈ { − } k0 k and r1. For convenience, we use the convention that ri = r(i mod k)+1 and ri0 = r(0i mod k)+1. We call Dk a fixed ring and denote the convex geometry induced by this abstract order type by (D , ). Note that the only collinearities in D k Ck k appear among the triples ri, ri0 and ri+1. This means we obtain the same abstract order type, regardless of the k-gon chosen in the construction, as illustrated by Figure 6.8.

0 r r0 r r6 r0 r0 2 1 1 0 5 5 0 0 r6 r4 r2 0 r6 0 r1 r4

r3 r6 r0 r0 3 0 0 1 r3 r5 0 r r0 r r3 4 4 5 0 r2 r2

FIGURE 6.8: Two point sets inducing D6.

Lemma 6.2.6. In (D , ), for a triple of extreme points (r , r , r ), the point r is k Ck a b c i0 in the convex closure of r , r , r if and only if r , r + r , r , r . { a b c} { i i 1} ⊂ { a b c} 84 Chapter 6. The realizability problem for convex geometries

Proof. First, suppose that r is in the convex closure of r , r , r . We must i0 { a b c} have r , r + r , r , r because D r and D r + are in . Sec- { i i 1} ⊂ { a b c} k \{ i} k \{ i 1} Ck ond, if r , r + r , r , r then r is in the convex closure of r , r , r { i i 1} ⊂ { a b c} i0 { a b c} because ri0 is between ri and ri+1.

The next lemma shows why we call Dk the fixed ring. Figure 6.9 shows the situation in the proof.

Lemma 6.2.7. In each realization Q of (D , ) the order of the extreme points on k Ck the convex hull of Q is (r1,..., rk) or (rk,..., r1).

Proof. Suppose there is a realization of (D , ) with a different order of ex- k Ck treme points on the convex hull. Suppose that rx and ry are the two neigh- bors or ri in the extreme point order, with none of x and y equal to i + 1. By Lemma 6.2.6, r must be outside of conv( r , r , r ) and conv( r + , r , r ). i0 { i x y} { i 1 x y} Then we have a contradiction, because r must be in conv( r , r + ) by defi- i0 { i i 1} nition and conv( r , r + ) is contained in conv( r , r + , r , r ). { i i 1} { i i 1 x y}

rx

0 ri ri ri+1

ry

FIGURE 6.9: The contradiction in the proof of Lemma 6.2.7.

6.2.4 The reduction

We prove Theorem 6.2.1 below. We set up a reduction from realizability of abstract order type. So given an abstract order type (P, χ), we build another abstract order type (P , χ ), which induces an AOT convex geometry (P , ). 0 0 0 C Then we show that (P , ) is realizable if and only if (P, χ) is realizable. The 0 C abstract order type (P0, χ0) will be called the augmented order type of (P, χ), a formal definition is given below. Roughly speaking, we merge a fixed ring

Dk to P, where k is the number of extreme points of (P, χ). Given an extreme 6.2. Hardness result for the realizability problem 85

point r of (P, χ), we merge r with r1 and merge the extreme cycle of Dk (start- ing with r1) with the extreme cycle of (P, χ) (starting with r). Then we add the points ri0, “very close” to the points ri on the “outer layers” defined by the extreme points. So P = P r ,..., r . The extreme points of the AOT 0 ∪ { 10 k0 } convex geometry will be referred to as E = r ,..., r . { 1 k} Formally, to complete the definition of χ0, we have to define the orienta- tion of triples containing two points of P and one point of r ,..., r and { 10 k0 } vice versa. Figure 6.10 gives an illustration of an augmented order type.

First, for pa, pb in P and ri0 in E, we have

 χ(p , r , p ) if χ(p , r , p ) = 0  a i b a i b 6 χ0(pa, ri0, pb) = χ(pa, ri+1, pb) if χ(pa, ri, pb) = 0 and χ(pa, ri+1, pb) = 0 .  6 0 if χ(pa, ri, pb) = χ(pa, ri+1, pb) = 0

Second, for p in P and ri0 in E, we have ( 1 if χ(ri, ri+1, p) = 0 or p = ri χ0(ri0, ri0+1, p) = 6 . 1 if χ(r , r + , p) = 0 and p = r − i i 1 6 i Third, for p in P and r , r in E such that i is in 1, . . . , n 1 , j is in i0 0j { − } 2, . . . , i 1 , we have { − }

 χ(r , r , p) if χ(r , r , p) = 0  i j i j 6 χ0(ri0, r0j, p) = χ(ri, ri+1, p) if χ(ri, rj, p) = 0 and p = rj .  − 6 χ(ri, ri+1, p) if p = rj

r2 r1 r2 0 r1 r1 0 r2

0 r4 r0 r3 r4 r3 3 r4

FIGURE 6.10: An order type and his augmented order type.

We now have a proof for Theorem 6.2.2. Figure 6.11 gives an illustration for the second part of the proof. 86 Chapter 6. The realizability problem for convex geometries

Proof of Theorem 6.2.2. We reduce the problem from realizability of abstract order type. Given an abstract order type (P, χ), we select an extreme point and build its augmented order type (P0, χ0), which induces an AOT convex geometry (P , ). We show that (P , ) is realizable if and only if (P, χ) is 0 C 0 C realizable. We select an extreme point r1 of (P, χ) such that (r1,..., rk) is the extreme cycle. First, if (P, χ) is realizable then there is a point set that has χ as its chiro- tope. Let r1 be an extreme point of the affine convex geometry induced by this point set. Suppose that (r1,..., rk) is the extreme cycle of this point set.

Now we add (r10 ,..., rk0 ) in this order. Each ri0 is placed close enough of ri to respect the orientations defined by the augmented order type with the point in P and the points in r10 ,..., ri0 1 . We obtain a realization for (P0, χ0) and a { − } realization of (P , ). All the steps can be done in polynomial time. 0 C Second, suppose that (P , ) is realizable. By Lemma 6.2.7 the point set Q 0 C that realizes the convex geometry has its extreme cycle equal to (r1,..., rk) or (rk,..., r1). So either Q or Q0, the image of Q by an axial symmetry, has its extreme cycle equal to (r1,..., rk). Suppose Q has its extreme points ordered as (r1,..., rk). We call (P0, χ2) the (abstract) order type induced by Q. We use Proposition 6.2.1 to conclude that χ0 = χ2. So (P0, χ0) is realizable (with the point set Q). We obtain a realization of (P, χ) by taking a sub-realization (i.e. a subset of point in the realization) of (P0, χ0). All the steps can be done in polynomial time.

Abstract order type Augmented order type Induced convex geometry 0 0 0 0 0 (P, χ) (P ∪ {r1, . . . , rk}, χ ) (P ∪ {r1, . . . , rk}, C)

0 0 (P ∪ {r1, . . . , rk}, χ2) Q Order type induced by the point set Realization

FIGURE 6.11: Second part of the proof for Theorem 6.2.2.

Proof of Theorem 6.2.1. We reduce from realizability of AOT convex geome- tries encoded by an abstract order type. So given an abstract order type (P, χ) that induces a convex geometry (P, ), we show that we can obtain, C in polynomial time, the copoint poset of (P, χ). Indeed, for such a convex geometry (P, ) (with P > 2) the copoints (i.e. C | | the convex sets that are not the intersection of other convex sets) are among 6.2. Hardness result for the realizability problem 87 the sets of the form p P : χ(p , p, p ) = 1 for p , p in P. Note that a { ∈ 1 2 6 } 1 2 set p P : χ(p , p, p ) = 1 does not necessarily give a copoint. So the { ∈ 1 2 6 } copoint poset of an AOT convex geometry has less than P 2 elements and | | can be quickly retrieved from the abstract order type.

This shows that the Edelman–Jamison problem is hard from a computa- tional point of view.

89

Chapter 7

Conclusion

“If you’re reading this, you’ve gotten out. And if you’ve come this far, maybe you’re willing to come a little further.”

— Andy Dufresne in The Shawshank Redemption

We conclude this work by listing some open problems related to this the- sis and giving a closing remark about the work done.

7.1 Further work

Regarding the monophonically convex geometries, the algorithm that solves the maximum-weight convex set in chordal graphs (in Chapter5) is mainly based on the existence of clique separator graphs for chordal graphs. We be- lieve this structure is helpful to obtain a linear description of the convex set polytope (defined in Chapter4) based on monophonically convex geome- tries. That would solve a question asked by Korte and Lovasz´ [82]. But even for the monophonically convex geometries based on a split graph, this de- scription does not seem easy to obtain, even when considering the structural results obtained in Chapter4. The investigation could start with the special case of k-trees, knowing that the case k = 1 is well known. About the maximum-weight convex set problem for other convex geome- tries, there are several families for which we do not know whether there is a polynomial time algorithm that solves the maximum-weight convex set problem. The technique used in this thesis relies on finding a link between a specific family of convex geometries and the family of poset convex geome- tries. The set of AT-free convex geometries seems a good candidate to start with. We believe that the structure that underlies the AT-free graphs can be modeled by several posets. 90 Chapter 7. Conclusion

Another possible continuation is to adapt the maximum-weight convex set algorithm based on the clique separator graph for other structure built on chordal graphs, for instance, the clique elimination greedoid defined in Goecke et al. [54]. The hardness result in Chapter6 could be helpful to show that other geo- metrical problems are R-hard. The realization problem for convex geome- ∃ tries can also be extended to other families. For instance, given a copoint poset of a convex geometry (V, ), is there a poset P such that (V, ) is the C C poset convex geometry induced by P? This decision problem is quite easy (solvable in polynomial time) because, by looking at the copoints (i.e. the ideals induced by one element), we can try to reconstruct the cover relations of a poset. If the construction leads to an actual poset, the answer is yes, oth- erwise, the answer is no. But the problem can be adapted for double poset convex geometries or for monophonically convex geometries. It seems that a lot of convex geometry families based on “strong” structures (e.g. graphs or poset) can be easily decided. However, further investigations are required.

7.2 Closing remark

This work provides some results on two natural problems about convex ge- ometries. First, the maximum-weight convex set problem. Studying the special case of the split graph leads us to a polynomial time algorithm for solving the problem on monophonically convex geometries. We hope our work will pave the way for further research on monophonically convex ge- ometries. Second, the realizability problem. The hardness result for abstract order types leads us to solve, from a computational point of view, a long- standing open question. We hope that more hardness results in computation geometry will be derived from this result in further research. 91

Appendix A

Allowable sequences and realizability problems

We provide here an idea of the original proof of the hardness result for the realizability problem of convex geometries. This original proof was obtained in collaboration with Hoffmann [67] and relies on results for allowable se- quences that can be found in the Ph.D. thesis of Hoffmann [65].

A.1 Allowable sequences

In the following, we consider another combinatorial description of a point set, the (generalized) allowable sequence or circular sequence. An allow- able sequence is a sequence of permutations π1,..., πk of the elements of 1, . . . , n such that every pair of elements is reversed exactly once in the se- { } quence, and two consecutive permutations differ by a move, the reversal of disjoint (consecutive) substrings of the permutation. For instance, the follow- ing sequence Ω of permutations is an allowable sequence:

π1 = (1, 2, 3, 4, 5, 6)

π2 = (1,3,2, 4,6,5 )

π3 = (1, 3,6,4,2, 5 )

π4 = (6,3,1, 4, 2, 5 )

π5 = (6, 3,4,1, 2, 5 )

π6 = (6, 3, 4,5,2,1 )

π7 = (6,5,4,3, 2, 1 )

π8 = (5,6, 4,2,3, 1 ) 92 Appendix A. Allowable sequences and realizability problems

Each reversal in a move is called a switch, and a switch is simple if it involves a substring of size two. A special case of allowable sequences are the simple allowable sequences, i.e. sequences where each move is one simple switch. An allowable sequence can be obtained from a point set in R2 in the fol- lowing way. The orthogonal projection of the point set onto an oriented line leads to a permutation of the points. Rotating this line (by a continuous mo- tion) by an angle of 180◦ leads to a sequence of permutations which is an al- lowable sequence. Figure A.1 gives an illustration of this procedure. A point set in R2 in general position with the additional condition that no two lines spanned by different pairs of points are parallel induces a simple allowable sequences.

3 3 2 1 2 1 4 4123 4 1423 3124 1243 1324

1 2 3 4

FIGURE A.1: An example of an allowable sequence of a point set.

The fact that a point set induces an allowable sequence leads to the ques- tion of the realizability. An allowable sequence Π is realizable if there exists a point set P in the plane such that the allowable sequence induced by P is Π. For instance, the sequence Ω given above is realizable. A point set that realizes Ω is shown in Figure A.2. Note that realizable simple allowable sequences correspond to point sets in general position with the additional condition that no two lines spanned by different pairs of points are parallel.

5

2 4

1 3 6

FIGURE A.2: A point set that induces the sequence Ω. A.1. Allowable sequences 93

The concept of an allowable sequence has first been described by Per- rin [102] in 1882 who conjectured that every allowable sequence is realizable. This was disproved by Goodman and Pollack [58] who showed that the “bad pentagon”, illustrated by Figure A.3, is not realizable. This paper also in- troduces the term “allowable sequence” for point sets in general position. The authors generalized the definition in Goodman and Pollack [56] using sequences of permutations. Allowable sequences have several applications in combinatorial geometry, see for example Goodman and Pollack [57]. The computational complexity of the realizability problem has been posed as an open question in Pilz [105].

π1 = (1, 2, 3, 4, 5) 3 π2 = (2, 1, 3, 4, 5) π3 = (2, 1, 4, 3, 5) π4 = (2, 1, 4, 5, 3) 1 π5 = (2, 4, 1, 5, 3) 5 π6 = (4, 2, 1, 5, 3) π7 = (4, 2, 5, 1, 3) π8 = (4, 2, 5, 3, 1) π9 = (4, 5, 2, 3, 1) π10 = (5, 4, 2, 3, 1) 2 4

FIGURE A.3: The non-realizable pentagon whose sides and “parallel” diagonals meet in a specific order.

One basic property describing the relation between allowable sequences and order types is given by the following lemma due to Goodman and Pol- lack [58, 57].

Lemma A.1.1. An allowable sequence uniquely determines an abstract order type.

But a given abstract order type can be determined by several allowable sequences, as shown below. In other words, allowable sequences carry more information than the abstract order type relation. Formally, given an allow- able sequence on P = 1, . . . , n we obtain an abstract order type (P, χ) by { } setting, for p1, p2, p3 in P, χ(p1, p2, p3) = 0 if p1, p2, p3 are contained in a switch, χ(p1, p2, p3) = 1 if the switch involving p1 and p2 precedes the switch involving p and p , and χ(p , p , p ) = 1 otherwise. When we 1 3 1 2 3 − 94 Appendix A. Allowable sequences and realizability problems mention this abstract order type connected to the allowable sequence we re- fer to it as the abstract order type induced by the allowable sequence. Fig- ure A.4 shows two distinct (realizable) allowable sequences that induce the same (realizable) abstract order type.

π1 = (1, 2, 3, 4) 1 4 π1 = (1, 2, 4, 3) 1 4

π2 = (2, 1, 3, 4) π2 = (2, 1, 3, 4)

π3 = (2, 3, 1, 4) π3 = (2, 3, 1, 4) π4 = (3, 2, 4, 1) 2 3 π4 = (3, 2, 4, 1) 2 3 π5 = (3, 4, 2, 1)

FIGURE A.4: Two allowable sequences inducing the same or- der type.

Similarly to abstract order types, we have the concept of realization space for a generalized allowable sequence A with n elements. If we identify natu- rally each point set on n elements with a point in Rn, the realization space of A is the set of all points in R2n that give a realization of A in R2.

A.2 Realizability for allowable sequence

Using ideas form Shor’s proof [115] of Mnev’s¨ Universality Theorem [93], we show that the same type of universality as for order types also holds for allowable sequences. This leads to the following result.

Theorem A.2.1. The realizability problem for generalized allowable sequences is R-complete. ∃ The main idea is to show an “equivalence” between the primary semi- algebraic sets (i.e. sets in Rn defined by a polynomial inequality systems that consists of strict inequalities and equalities) and the realization spaces for a generalized allowable sequences. The notion of “stable equivalent” is involved and would require further details (but it implies “homotopy equiv- alence”). For a more formal definition, see Richter-Gebert [110]. The proof of Theorem A.2.1 uses the following theorem due to Shor [115].

Theorem A.2.2. Every primary semi-algebraic set V Rd is stably equivalent to ⊆ a semi-algebraic set V Rn, with n = poly(d), for which all defining equations 0 ⊆ have the form x + x = x or x x = x for certain 1 i j < k n, where the i j k i · j k ≤ ≤ ≤ sequence 1 = x1, x2,..., xn is always strictly increasing. A.3. Results for simple allowable sequences 95

In addition to the decomposition of a polynomial equation into single addition or multiplication steps, the theorem also gives us a total order of the variables. We call the description of the semi-algebraic set as in Theo- rem A.2.2 one of its normal form. The proof of the equivalence also relies on the classic construction of von Staudt [118] involving the cross-ratio. The idea of von Staudt constructions is to encode an arbitrary system of polynomial equations and strict in equalities into the geometry of a point configuration, as shown in Figure A.5. The cross- ratio (a, b; c, d) of four points a, b, c, d R2 on a line is defined as ∈ a, c b, d (a, b; c, d) := | | · | |, a, d b, c | | · | | where x, y is the oriented euclidean distance between x and y. The cross- | | ratio is invariant under projective transformations, so we can extend the def- inition to the case when (exactly) one of the point is at infinity: the two dis- tances involving that point are dropped from the formula. If all of a, b, c and d are infinite points with slopes a0, b0, c0, and d0 then their cross-ratio (a, b; c, d) is (c a) (b d) − − . (d a) (b c) − −

b i bi ai ai

` ` ∞ ∞ di

ci ci di B B ` ` 0 x y x + y 1 x y xy ∞ 0 ∞ FIGURE A.5: Gadgets for addition (left) and multiplication (right) on a line.

A.3 Results for simple allowable sequences

It is possible to extend Theorem A.2.1 to simple allowable sequences, which is a useful tool to show the R-hardness of other geometric realizability prob- ∃ lems. Therefore we need to construct a simple allowable sequence Ω0 from a generalized allowable sequence Ω such that Ω0 is realizable if and only if Ω 96 Appendix A. Allowable sequences and realizability problems is realizable. We describe the construction geometrically from a realization. A similar combinatorial allowable sequence can be constructed for any given non-realizable allowable sequence.

Theorem A.3.1. The realizability problem of simple allowable sequences is R- ∃ complete.

To prove the theorem above we extend the notion of constructible order types, that has already been used to show that simple order type realizability is R-complete, see Bjorner¨ et al. [15], Shor [115] and Matousekˇ [91]. The ∃ main idea consist of replacing the points that prevent the allowable sequence from being simple. Every point, that lies on lines spanned by other points, is replaced by four new points as shown in Figure A.6. Next, the points that induce parallel lines can be slightly moved to obtain a simple allowable sequence.

4 p p1

`1 p

p3 p2

`2

FIGURE A.6: Replacing a point p by four points.

A.4 Realizability for convex geometries

We show that the realizability of AOT convex geometries, encoded by an abstract order type, is R-hard. We proceed to define some abstract order ∃ types which are the building blocks for our reduction (from realizability of simple allowable sequences). We define (D2k, χ2k) as the (abstract) order type of the following point set in the plane. Consider k lines that intersect in the common center point of two circles of almost the same radius. Place a point on each intersection point of any of the two circles with any of the k lines.

We denote the points on the outer circle by ri and the inner ones by ri0 in A.4. Realizability for convex geometries 97 counterclockwise order. The difference of the radii is small enough, such that r is an extreme point of D r and the only collinearities in D appear i0 2k \{ i} 2k among the points ri, ri0, ri+k and ri0+k. lies on the convex hull (of the set) when we remove ri. We call D2k a dou- ble ring and denote the induced (AOT) convex geometry by (D , ). For 2k C2k ri or ri0, we assume for convenience that an index i larger than 2k is identified with an element of 1, . . . , k as follow. The index is identified with 2k if i is a multiple of 2k and with i mod 2k otherwise.

Because the only collinearities in D2k appear among the points ri, ri0, ri+k and ri0+k. This means we can slightly perturb the lines in the construction of D2k, such that they do not intersect at the center but form an arbitrary line arrangement in the neighborhood of the center, and still obtain the same abstract order type, as illustrated by Figure A.7.

r1 0 r1 0 r6 r6

0 r2 0 r5 r2 r5

0 r3 0 r r3 4 r4

FIGURE A.7: Small perturbations in the double ring.

We will use this perturbation and a “unique representation” we obtain from Lemma A.4.1, which we will prove in the rest of this subsection, to fix an allowable sequence of a point set with a double ring. We have the following lemma, which has the same purpose that Lemma 6.2.7.

Lemma A.4.1. In each realization of (D , ) the order of the extreme points is 2k C2k (up to a reflection) (r1,..., r2k).

To show Theorem 6.2.2 using allowable sequences, we set up a reduction from realizability of simple allowable sequences. We give here only the main idea of the proof and omit some technical verification (for a formal proof of the theorem, see Chapter6). Figure A.8 shows the objects involved in the reduction below. Given a simple allowable sequence A (with ground set P = 1, . . . , n ), we build an abstract order type O which induces an AOT { } A convex geometry. The abstract order type OA will be called modified order type of A, we describe its construction as follows. Let PA be the abstract 98 Appendix A. Allowable sequences and realizability problems order type that is induced by the allowable sequence A (see Chapter6). To define OA we add a double ring D2k to PA, where k is the number of switches n in the allowable sequence (k = (2) because A is simple). This will be done in such a way that the double ring forms the two ”outer layers” of the points in PA. Formally, to complete the definition of OA, we have to define the orientation of triples containing two points of PA and one point of D2k and vice versa. First, the points of PA that are reversed in the i-th switch of A are collinear with ri, ri+k and ri0, ri0+k of D2k. Second, we have to define the orientation of non-collinear triples. A triple (p , p , r ) with j 1, . . . , k 1 h i j ∈ { − } is oriented clockwise if ph appears before pj in the j-th permutation of A, and counterclockwise otherwise. The orientation of (ph, pi, rj+k) is the reverse of (p , p , r ). A triple (r , r , p ) is oriented clockwise if i h + 1, . . . , h + k 1 h i j h i j ∈ { − } and counterclockwise if i h 1, . . . , h (k 1) . The triple including r ∈ { − − − } h0 has the same orientation as the triple where rh0 is replaced by rh. If rh and rh0 are included in a triple then, the latter has the same orientation as the triple where rh0 is replaced by rh+k.

Simple allowable seq. Induced abstract order type Modified order type 0 A = (P, Π) PA = (P, χ) OA = (P ∪ D2k, χ )

CA = (P ∪ D2k, C) Induced convex geometry

FIGURE A.8: Relations between A, PA, OA and CA.

The reduction from realizability of simple allowable sequences is similar to the proof of Theorem 6.2.2. To establish the reduction let as in the previous paragraph A be an allowable sequence on P, OA its modified order type and CA the convex geometry induces by OA. Suppose that CA is realizable, we know that each realization of CA (en- coded by OA) contains a copy of the double ring (i.e. the points in D2k), with the same order of the extreme points. With an argument similar to the one used in the proof of Proposition 6.2.1, we show that OA is also realizable. In a realization of OA, we have that the line spanned by rk and rk+n contains the points of P that are reversed in switch k in the allowable sequence. In other words, the double ring fixes the order of slopes of the lines spanned by two points in P. We obtain the allowable sequence P by considering the allowable sequence induced by a sub-realization of OA. So P is also realizable. A.4. Realizability for convex geometries 99

Now, suppose that A is realizable. We can realize OA by placing the points of the double ring D2k on the intersection points of the lines spanned by P with two “very large” circles of almost the same radius that contain a real- ization of A “close” to their center point.

101

Bibliography

[1] M. Abrahamsen, A. Adamaszek, and T. Miltzow. “The art gallery problem is R-complete”. In: STOC’18—Proceedings of the 50th Annual ∃ ACM SIGACT Symposium on Theory of Computing. ACM, New York, 2018, pp. 65–73. DOI: 10.1145/3188745.3188868. [2] K. V. Adaricheva, V. A. Gorbunov, and V. I. Tumanov. “Join-semidis- tributive lattices and convex geometries”. In: Adv. Math. 173.1 (2003), pp. 1–49. DOI: 10.1016/S0001-8708(02)00011-7. [3] K. Adaricheva and M. Bolat. “Representation of convex geometries by circles in the plane”. In: arXiv:1609.00092 (2016). [4] K. Adaricheva and J. B. Nation. “A class of infinite convex geome- tries”. In: Electron. J. Combin. 23.1 (2016), Paper 1.56, 12. [5] K. Adaricheva and M. Wild. “Realization of abstract convex geome- tries by point configurations”. In: European J. Combin. 31.1 (2010), pp. 379–400. DOI: 10.1016/j.ejc.2008.12.017. [6] K. A. Adiprasito, A. Padrol, and L. Theran. “Universality theorems for inscribed polytopes and Delaunay triangulations”. In: Discrete Com- put. Geom. 54.2 (2015), pp. 412–431. DOI: 10.1007/s00454-015-9714- x. [7] E. Algaba, J. M. Bilbao, R. van den Brink, and A. Jimenez-Losada.´ “Co- operative games on antimatroids”. In: Discrete Math. 282.1-3 (2004), pp. 1–15. DOI: 10.1016/j.disc.2003.10.019. [8] F. Ardila and E. Maneva. “Pruning processes and a new characteriza- tion of convex geometries”. In: Discrete Math. 309.10 (2009), pp. 3083– 3091. DOI: 10.1016/j.disc.2008.08.020. [9] S. P. Avann. “Application of the join-irreducible excess function to semi-modular lattices”. In: Math. Ann. 142 (1960/1961), pp. 345–354. DOI: 10.1007/BF01451028. 102 BIBLIOGRAPHY

[10] S. P. Avann. “Distributive properties in semi-modular lattices”. In: Math. Z. 76 (1961), pp. 283–287. DOI: 10.1007/BF01210978. [11] S. Basu, R. Pollack, and M.-F. Roy. Algorithms in real algebraic geom- etry. Second. Vol. 10. Algorithms and Computation in Mathematics. Springer-Verlag, Berlin, 2006, pp. x+662. [12] C. Bautista-Santiago, J. M. D´ıaz-Ba´nez,˜ D. Lara, P. Perez-Lantero,´ J. Urrutia, and I. Ventura. “Computing optimal islands”. In: Oper. Res. Lett. 39.4 (2011), pp. 246–251. DOI: 10.1016/j.orl.2011.04.008. [13] D. Bienstock. “Some provably hard crossing number problems”. In: Discrete Comput. Geom. 6.5 (1991), pp. 443–459. DOI: 10.1007/BF02574 701. [14] G. Birkhoff. “Rings of sets”. In: Duke Math. J. 3.3 (1937), pp. 443–454. DOI: 10.1215/S0012-7094-37-00334-X. [15] A. Bjorner,¨ M. Las Vergnas, B. Sturmfels, N. White, and G. M. Ziegler. Oriented matroids. Second. Vol. 46. Encyclopedia of Mathematics and its Applications. Cambridge University Press, Cambridge, 1999, pp. xii+548. DOI: 10.1017/CBO9780511586507. [16] R. G. Bland. “A combinatorial abstraction of linear programming”. In: J. Combinatorial Theory Ser. B 23.1 (1977), pp. 33–57. DOI: 10.1016/ 0095-8956(77)90055-7. [17] J. Bokowski, S. Mock, and I. Streinu. “On the Folkman-Lawrence topo- logical representation theorem for oriented matroids of rank 3”. In: European J. Combin. 22.5 (2001). Combinatorial geometries (Luminy, 1999), pp. 601–615. DOI: 10.1006/eujc.2000.0482. [18] G. Boulaye. “Notion d’extension dans les treillis”. In: Rev. Roumaine Math. Pures Appl. 13 (1968), pp. 1225–1231. [19] G. Boulaye. “Sur l’ensemble ordonne´ des parties connexes d’un graphe connexe”. In: Rev. Fran¸caiseInformat. Recherche Op´erationnelle 2.7 (1968), pp. 13–25. [20] N. Bourbaki. El´ementsde´ math´ematique. Springer Berlin Heidelberg, 2007. [21] E. A. Boyd and U. Faigle. “An algorithmic characterization of antima- troids”. In: Discrete Appl. Math. 28.3 (1990), pp. 197–205. DOI: 10.1016/ 0166-218X(90)90002-T. BIBLIOGRAPHY 103

[22] J. Canny. “Some Algebraic and Geometric Computations in PSPACE”. In: Proceedings of the Twentieth Annual ACM Symposium on Theory of Computing. STOC ’88. New York, NY, USA: ACM, 1988, pp. 460–467. DOI: 10.1145/62212.62257. [23] J. Cardinal. “Computational geometry column 62”. In: ACM SIGACT News 46.4 (2015), pp. 69–78. DOI: 10.1145/2852040.2852053. [24] J. Cardinal, J. Doignon, and K. Merckx. “Finding a Maximum-Weight Convex Set in a Chordal Graph”. In: J. Graph Algorithms Appl. 23.2 (2019), pp. 167–190. DOI: 10.7155/jgaa.00488. [25] J. Cardinal, J.-P. Doignon, and K. Merckx. “On the shelling antima- troids of split graphs”. In: Discrete Math. Theor. Comput. Sci. 19.1 (2017), Paper No. 7, 18. [26] J. Cardinal and U. Hoffmann. “Recognition and complexity of point visibility graphs”. In: Discrete Comput. Geom. 57.1 (2017), pp. 164–178. DOI: 10.1007/s00454-016-9831-1. [27] J.-M. Chang, T. Kloks, and H.-L. Wang. “Gray codes for AT-free or- ders via antimatroids”. In: Combinatorial algorithms. Vol. 9538. Lecture Notes in Comput. Sci. Springer, [Cham], 2016, pp. 77–87. DOI: 10 . 1007/978-3-319-29516-9_7. [28] V. Chvatal.´ “Antimatroids, betweenness, convexity”. In: Research trends in combinatorial optimization. Springer, Berlin, 2009, pp. 57–64. DOI: 10.1007/978-3-540-76796-1_3. [29] H. Crapo. “Selectors: a theory of formal languages, semimodular lat- tices, and branching and shelling processes”. In: Adv. in Math. 54.3 (1984), pp. 233–277. DOI: 10.1016/0001-8708(84)90042-2. [30] G. Czedli.´ “Finite convex geometries of circles”. In: Discrete Math. 330 (2014), pp. 61–75. DOI: 10.1016/j.disc.2014.04.017. [31] G. Czedli´ and J. Kincses. “Representing convex geometries by almost- circles”. In: arXiv:1608.06550 (2016). [32] V. Danilov and G. Koshevoy. “Choice functions and extensive oper- ators”. In: Order 26.1 (2009), pp. 69–94. DOI: 10.1007/s11083- 009- 9108-x. 104 BIBLIOGRAPHY

[33] R. Diestel. Graph theory. Fourth. Vol. 173. Graduate Texts in Mathemat- ics. Springer, Heidelberg, 2010, pp. xviii+437. DOI: 10.1007/978-3- 642-14279-6. [34] B. L. Dietrich. “A circuit set characterization of antimatroids”. In: J. Combin. Theory Ser. B 43.3 (1987), pp. 314–321. DOI: 10.1016/0095- 8956(87)90007-4. [35] R. P. Dilworth. “Lattices with unique irreducible decompositions”. In: Ann. of Math. (2) 41 (1940), pp. 771–777. DOI: 10.2307/1968857. [36] R. P. Dilworth and P. Crawley. “Decomposition theory for lattices without chain conditions”. In: Trans. Amer. Math. Soc. 96 (1960), pp. 1– 22. DOI: 10.2307/1993480. [37] J.-P. Doignon and J.-C. Falmagne. Knowledge spaces. Springer-Verlag, Berlin, 1999, pp. xvi+333. DOI: 10.1007/978-3-642-58625-5. [38] J.-P. Doignon, J.-C. Falmagne, and E. Cosyn. “Learning Spaces: A Mathematical Compendium”. In: Knowledge Spaces: Applications in Ed- ucation. Ed. by J.-C. Falmagne, D. Albert, C. Doble, D. Eppstein, and X. Hu. Berlin, Heidelberg: Springer Berlin Heidelberg, 2013, pp. 131– 145. DOI: 10.1007/978-3-642-35329-1_8. [39] F. Echenique. “Counting combinatorial choice rules”. In: Games Econ. Behav. 58.2 (2007), pp. 231–245. DOI: 10.1016/j.geb.2006.03.009. [40] P. H. Edelman. “Meet-distributive lattices and the anti-exchange clo- sure”. In: Algebra Universalis 10.3 (1980), pp. 290–299. DOI: 10.1007/ BF02482912. [41] P. H. Edelman. “The lattice of convex sets of an oriented matroid”. In: J. Combin. Theory Ser. B 33.3 (1982), pp. 239–244. DOI: 10.1016/0095- 8956(82)90043-0. [42] P. H. Edelman and R. E. Jamison. “The theory of convex geometries”. In: Geom. Dedicata 19.3 (1985), pp. 247–270. DOI: 10.1007/BF00149365. [43] J. Enright. “The computational complexity of antimatroid properties”. In: Adv. in Appl. Math. 26.1 (2001), pp. 23–46. DOI: 10 . 1006 / aama . 2000.0704. [44] D. Eppstein. “Antimatroids and balanced pairs”. In: Order 31.1 (2014), pp. 81–99. DOI: 10.1007/s11083-013-9289-1. BIBLIOGRAPHY 105

[45] D. Eppstein. “Learning Sequences: An Efficient Data Structure for Learning Spaces”. In: Knowledge Spaces. Ed. by J.-C. Falmagne, D. Al- bert, C. Doble, D. Eppstein, and X. Hu. Springer Berlin Heidelberg, 2013, pp. 287–304. DOI: 10.1007/978-3-642-35329-1_13.

[46] D. Eppstein. Pruning antimatroids is hard. 2007. URL: http://11011110 .livejournal.com/91976.html (visited on 12/17/2015). [47] D. Eppstein, M. Overmars, G. Rote, and G. Woeginger. “Finding min- imum area k-gons”. In: Discrete Comput. Geom. 7.1 (1992), pp. 45–58. DOI: 10.1007/BF02187823. [48] J.-C. Falmagne and J.-P. Doignon. Learning Spaces. Berlin: Springer- Verlag, 2011, pp. xv+417. DOI: 10.1007/978-3-642-35329-1\_8. [49] M. Farber and R. E. Jamison. “Convexity in graphs and hypergraphs”. In: SIAM J. Algebraic Discrete Methods 7.3 (1986), pp. 433–444. DOI: 10. 1137/0607049. [50] M. Farber and R. E. Jamison. “On local convexity in graphs”. In: Dis- crete Math. 66.3 (1987), pp. 231–247. DOI: 10 . 1016 / 0012 - 365X(87 ) 90099-9. [51] J. Folkman and J. Lawrence. “Oriented matroids”. In: J. Combin. Theory Ser. B 25.2 (1978), pp. 199–236. DOI: 10.1016/0095-8956(78)90039-4. [52] D. R. Fulkerson and O. A. Gross. “Incidence matrices and interval graphs.” In: Pacific J. Math. 15.3 (1965), pp. 835–855. [53] F. Gerard´ and K. Merckx. “SETLA: Signature and Encryption from Lattices”. In: Cryptology and Network Security, - 17th International Con- ference, Proceedings. Springer International Publishing, 2018, pp. 299– 320. DOI: 10.1007/978-3-030-00434-7_15. [54] O. Goecke, B. Korte, and L. Lovasz.´ “Examples and algorithmic properties of greedoids”. In: Combinatorial optimization (Como, 1986). Vol. 1403. Lecture Notes in Math. Springer, Berlin, 1989, pp. 113–161. DOI: 10.1007/BFb0083463. [55] J. E. Goodman, J. O’Rourke, and C. D. Toth,´ eds. Handbook of discrete and computational geometry. Discrete Mathematics and its Applications (Boca Raton). Third edition of [ MR1730156]. CRC Press, Boca Raton, FL, 2018, pp. xxi+1927. DOI: 10.1201/9781420035315. 106 BIBLIOGRAPHY

[56] J. E. Goodman and R. Pollack. “A theorem of ordered duality”. In: Geom. Dedicata 12.1 (1982), pp. 63–74. DOI: 10.1007/BF00147331. [57] J. E. Goodman and R. Pollack. “Allowable sequences and order types in discrete and computational geometry”. In: New trends in discrete and computational geometry. Vol. 10. Algorithms Combin. Springer, Berlin, 1993, pp. 103–134. DOI: 10.1007/978-3-642-58043-7_6. [58] J. E. Goodman and R. Pollack. “On the combinatorial classification of nondegenerate configurations in the plane”. In: J. Combin. Theory Ser. A 29.2 (1980), pp. 220–235. DOI: 10.1016/0097-3165(80)90011-4. [59] C. Greene and G. Markowsky. A Combinatorial Test for Local Distribu- tivity. Research reports - IBM. IBM Thomas J. Watson Research Divi- sion, 1974. [60] H. Groflin.¨ “Path-closed sets”. In: Combinatorica 4.4 (1984), pp. 281– 290. DOI: 10.1007/BF02579138. [61] H. Groflin¨ and T. M. Liebling. “Connected and alternating vec- tors: polyhedra and algorithms”. In: Math. Programming 20.2 (1981), pp. 233–244. DOI: 10.1007/BF01589348. [62] B. Grunbaum.¨ Configurations of points and lines. Vol. 103. Graduate Studies in Mathematics. American Mathematical Society, Providence, RI, 2009, pp. xiv+399. DOI: 10.1090/gsm/103. 1 e [63]J.H astad.˚ “Clique is hard to approximate within n − ”. In: Acta Math. 182.1 (1999), pp. 105–142. DOI: 10.1007/BF02392825. [64] C. W. Ho and R. C. T. Lee. “Counting clique trees and computing perfect elimination schemes in parallel”. In: Inform. Process. Lett. 31.2 (1989), pp. 61–68. DOI: 10.1016/0020-0190(89)90070-7. [65] U. Hoffmann. “Intersection Graphs and Geometric Objects in the Plane”. PhD thesis. TU Berlin, 2016. [66] U. Hoffmann. “On the complexity of the planar slope number prob- lem”. In: J. Graph Algorithms Appl. 21.2 (2017), pp. 183–193. DOI: 10. 7155/jgaa.00411. [67] U. Hoffmann and K. Merckx. A universality theorem for allowable se- quences with applications. 2018. arXiv: 1801.05992 [cs.CG]. BIBLIOGRAPHY 107

[68] J. Hopcroft and R. Tarjan. “Algorithm 447: Efficient Algorithms for Graph Manipulation”. In: Commun. ACM 16.6 (June 1973), pp. 372– 378. DOI: 10.1145/362248.362272. [69] L. Ibarra. “The clique-separator graph for chordal graphs”. In: Discrete Appl. Math. 157.8 (2009), pp. 1737–1749. DOI: 10.1016/j.dam.2009. 02.006. [70] R. Jamison. “Copoints in antimatroids”. In: Proceedings of the Eleventh Southeastern Conference on Combinatorics, Graph Theory and Computing (Florida Atlantic Univ., Boca Raton, Fla., 1980), Vol. II. Vol. 29. 1980, pp. 535–544. [71] R. E. Jamison-Waldner. “A perspective on abstract convexity: classify- ing alignments by varieties”. In: Convexity and related combinatorial ge- ometry (Norman, Okla., 1980). Vol. 76. Lecture Notes in Pure and Appl. Math. Dekker, New York, 1982, pp. 113–150. [72] R. E. Jamison-Waldner. “Convexity and block graphs”. In: Congr. Nu- mer. 33 (1981), pp. 129–142. [73] R. Jarvis. “On the identification of the convex hull of a finite set of points in the plane”. In: Inf. Process. Lett. 2.1 (1973), pp. 18 –21. DOI: 10.1016/0020-0190(73)90020-3. [74] A. Jimenez-Losada´ and M. Ordo´nez.˜ “Cooperative games with non- transferable utility on antimatroids”. In: Int. J. Gen. Syst. 47.6 (2018), pp. 613–631. DOI: 10.1080/03081079.2018.1487418. [75] K. Kashiwabara, M. Nakamura, and Y. Okamoto. “The affine repre- sentation theorem for abstract convex geometries”. In: Comput. Geom. 30.2 (2005), pp. 129–144. DOI: 10.1016/j.comgeo.2004.05.001. [76] Y. Kempner and V. E. Levit. “Correspondence between two antima- troid algorithmic characterizations”. In: Electron. J. Combin. 10 (2003), Research Paper 44, 9. [77] Y. Kempner and V. E. Levit. “Geometry of poset antimatroids”. In: Electron. Notes in Discrete Math. 40 (2013), pp. 169–173. DOI: 10.1016/ j.endm.2013.05.031. 108 BIBLIOGRAPHY

[78] D. M. King, S. H. Jacobson, E. C. Sewell, and W. K. T. Cho. “Geo- Graphs: An Efficient Model for Enforcing Contiguity and Hole Con- straints in Partitioning”. In: Operations Research 60.5 (2012), pp. 1213–1228. DOI: 10.1287/opre.1120.1083. [79] K. Knauer. “Chip-firing, antimatroids, and polyhedra”. In: European Conference on Combinatorics, Graph Theory and Applications (EuroComb 2009). Vol. 34. Electron. Notes Discrete Math. Elsevier Sci. B. V., Ams- terdam, 2009, pp. 9–13. DOI: 10.1016/j.endm.2009.07.002.

[80] D. E. Knuth. Axioms and Hulls. Vol. 606. Springer, 1992. DOI: 10.1007/ 3-540-55611-7. [81] B. Korte and L. Lovasz.´ “Mathematical structures underlying greedy algorithms”. In: Fundamentals of computation theory (Szeged, 1981). Vol. 117. Lecture Notes in Comput. Sci. Springer, Berlin-New York, 1981, pp. 205–209. DOI: 10.1007/3-540-10854-8\_22. [82] B. Korte and L. Lovasz.´ “Polyhedral results for antimatroids”. In: An- nals New York Academy of Sciences 555 (1989), pp. 283–295. DOI: 10 . 1111/j.1749-6632.1989.tb22462.x. [83] B. Korte, L. Lovasz,´ and R. Schrader. Greedoids. Vol. 4. Algorithms and Combinatorics. Springer-Verlag, Berlin, 1991, pp. viii+211. DOI: 10 . 1007/978-3-642-58191-5. [84] G. Koshevoy. “Choice functions and abstract convex geometries”. In: Math. Social Sci. 38.1 (1999), pp. 35–44. DOI: 10.1016/S0165-4896(98) 00044-4. [85] J. Kratochv´ıl and J. Matousek.ˇ “Intersection graphs of segments”. In: J. Combin. Theory Ser. B 62.2 (1994), pp. 289–315. DOI: 10.1006/jctb. 1994.1071. [86] M. Las Vergnas. “Convexity in oriented matroids”. In: J. Combin. The- ory Ser. B 29.2 (1980), pp. 231–243. DOI: 10 . 1016 / 0095 - 8956(80 ) 90082-9. [87] S. MacLane. “Some Interpretations of Abstract Linear Dependence in Terms of Projective Geometry”. In: Amer. J. Math. 58.1 (1936), pp. 236– 240. DOI: 10.2307/2371070. [88] F. Maffioli. Finding a Best Subtree of a Tree. Politecnico di Milano. Di- partimento di Elettronica, 1991. BIBLIOGRAPHY 109

[89] T. L. Magnanti and L. A. Wolsey. “Optimal trees”. In: Network models. Vol. 7. Handbooks Oper. Res. Management Sci. North-Holland, Ams- terdam, 1995, pp. 503–615. DOI: 10.1016/S0927-0507(05)80126-4. [90] H. Mao. “Geometries, independence spaces and infinite antima- troids”. In: Matematika (Johor) 33.1 (2017), pp. 105–111. DOI: 10.11113/ matematika.v33.n1.901. [91] J. Matousek. Intersection graphs of segments and R. 2014. arXiv: 1406. ∃ 2636 [cs.CG]. [92] C. McDiarmid and T. Muller.¨ “Integer realizations of disk and seg- ment graphs”. In: J. Combin. Theory Ser. B 103.1 (2013), pp. 114–143. DOI: 10.1016/j.jctb.2012.09.004. [93] N. E. Mnev.¨ “The universality theorems on the classification problem of configuration varieties and convex polytopes varieties”. In: Topol- ogy and Geometry — Rohlin Seminar. Ed. by O. Y. Viro and A. M. Ver- shik. Berlin, Heidelberg: Springer Berlin Heidelberg, 1988, pp. 527– 543. DOI: 10.1007/BFb0082792. [94] B. Monjardet. “A use for frequently rediscovering a concept”. In: Or- der 1.4 (1985), pp. 415–417. DOI: 10.1007/BF00582748. [95] B. Monjardet and V. Raderanirina. “The duality between the anti- exchange closure operators and the path independent choice opera- tors on a finite set”. In: Math. Social Sci. 41.2 (2001), pp. 131–150. DOI: 10.1016/S0165-4896(00)00061-5. [96] M. Nakamura. “Excluded-minor characterizations of antimatroids arisen from posets and graph searches”. In: Discrete Appl. Math. 129.2- 3 (2003), pp. 487–498. DOI: 10.1016/S0166-218X(02)00581-4. [97] M. Nakamura. “A single-element extension of antimatroids”. In: Dis- crete Appl. Math. 120.1-3 (2002). Sixth Twente Workshop on Graphs and Combinatorial Optimization (Enschede, 1999), pp. 159–164. DOI: 10.1016/S0166-218X(01)00288-8. [98] J. B. Orlin. “Max flows in O(nm) time, or better”. In: STOC’13— Proceedings of the 2013 ACM Symposium on Theory of Computing. ACM, New York, 2013, pp. 765–774. DOI: 10.1145/2488608.2488705. 110 BIBLIOGRAPHY

[99] J. Oxley. Matroid theory. Second. Vol. 21. Oxford Graduate Texts in Mathematics. Oxford University Press, Oxford, 2011, pp. xiv+684. DOI: 10.1093/acprof:oso/9780198566946.001.0001. [100] A. F. Parkinson. “Essays on sequence optimization in block cave min- ing and inventory policies with two delivery sizes”. PhD thesis. Uni- versity of British Columbia, 2012. DOI: 10.14288/1.0073023. [101] H. P. Patil. “On the structure of k-trees”. In: J. Combin. Inform. System Sci. 11.2-4 (1986), pp. 57–64. [102] Perrin. “Sur le probleme` des aspects”. In: Bull. Soc. Math. France 10 (1882), pp. 103–127. [103] J. L. Pfaltz. “Semihomomorphisms of semimodular lattices”. In: Proc. Amer. Math. Soc. 22 (1969), pp. 418–425. DOI: 10.2307/2037068. [104] J.-C. Picard. “Maximal closure of a graph and applications to com- binatorial problems”. In: Management Sci. 22.11 (1975/76), pp. 1268– 1272. DOI: 10.1287/mnsc.22.11.1268. [105] A. Pilz. “On the complexity of problems on order types and geometric graphs”. PhD thesis. TU Graz, 2014. [106] C. R. Plott. “Path independence, rationality, and social choice”. In: Econometrica 41 (1973), pp. 1075–1091. DOI: 10.2307/1914037. [107] M. Queyranne and L. A. Wolsey. “Modeling Poset Convex Subsets”. In: CORE Discussion Paper (2015/49). [108] M. Queyranne and L. A. Wolsey. “Optimum turn-restricted paths, nested compatibility, and optimum convex polygons”. In: J. Comb. Op- tim. 36.1 (2018), pp. 90–107. DOI: 10.1007/s10878-018-0281-y. [109] M. M. Richter and L. G. Rogers. “Embedding convex geometries and a bound on convex dimension”. In: Discrete Math. 340.5 (2017), pp. 1059–1063. DOI: 10.1016/j.disc.2016.10.006. [110] J. Richter-Gebert. Realization spaces of polytopes. Vol. 1643. Lecture Notes in Mathematics. Springer-Verlag, Berlin, 1996, pp. xii+187. DOI: 10.1007/BFb0093761. [111] J. Richter-Gebert and G. M. Ziegler. “Realization spaces of 4-polytopes are universal”. In: Bull. Amer. Math. Soc. (N.S.) 32.4 (1995), pp. 403– 412. DOI: 10.1090/S0273-0979-1995-00604-X. BIBLIOGRAPHY 111

[112] B. Roy. “Point visibility graph recognition is NP-hard”. In: Internat. J. Comput. Geom. Appl. 26.1 (2016), pp. 1–32. DOI: 10.1142/S0218195916 500011. [113] M. Schaefer. “Complexity of some geometric and topological prob- lems”. In: Graph drawing. Vol. 5849. Lecture Notes in Comput. Sci. Springer, Berlin, 2010, pp. 334–344. DOI: 10.1007/978-3-642-11805- 0_32. [114] M. V. Semenova. “Lattices with unique irreducible decompositions”. In: Algebra Log. 39.1 (2000), pp. 93–103, 122. DOI: 10.1007/BF02681569. [115] P. W. Shor. “Stretchability of pseudolines is NP-hard”. In: Applied ge- ometry and discrete mathematics. Vol. 4. DIMACS Ser. Discrete Math. Theoret. Comput. Sci. Amer. Math. Soc., Providence, RI, 1991, pp. 531– 554. [116] M. Sipser. Introduction to the Theory of Computation. Second. Course Technology, 2006. [117] R. P. Stanley. “Two poset polytopes”. In: Discrete Comput. Geom. 1.1 (1986), pp. 9–23. DOI: 10.1007/BF02187680. [118] K. G. C. Staudt. Geometrie der Lage. F. Korn, 1847. [119] W. Trotter. Combinatorics and partially ordered sets: dimension theory. Johns Hopkins Series in the Mathematical Sciences. J. Hopkins Uni- versity Press, 1992. [120] P. Uznanski.´ http://paracombinatorics.wordpress.com/2013/04/07. Tech. rep. 2013. [121] N. Wahl. “Antimatroids of finite character”. In: J. Geom. 70.1-2 (2001), pp. 168–175. DOI: 10.1007/PL00000987. [122] J. C. Williams. “Convex Land Acquisition with Zero-One Program- ming”. In: Environment and Planning B: Planning and Design 30.2 (2003), pp. 255–270. DOI: 10.1068/b12925. [123] H. Yoshikawa, H. Hirai, and K. Makino. “A representation of antima- troids by Horn rules and its application to educational systems”. In: J. Math. Psych. 77 (2017), pp. 82–93. DOI: 10.1016/j.jmp.2016.09.002.

113

Index

abstract order type, 73 accessibility property, 12 acyclic oriented matroid of rank 3, 7 alignment, 10 allowable sequence, 71 generalized, 91 simple, 92 anti-exchange property, 10 antimatroid, 12 (a, b)-path shelling, 25 chordal graph, 22 line-search, 24 point-search, 24 double poset, 20 edge shelling of a tree, 21 line-search undirected, 24 point-line search, 24 point-search undirected, 24 poset, 19, 42 split graph shelling, 36, 42 vertex shelling of a tree, 21 arc, 6 asteroidal triple, 25 attached at, 14 augmented order type, 84 base, 15, 44 poset, 15 basic word, 14 114 INDEX blocking K-blocking, 58 c-convex, see convex set, connected characteristic vector, 31 chirotope, 73 acyclic rank 3 chirotope, 73 circuit, 15 circular sequence, 91 clique, 6, 36 maximal, 6 clique nodes, 52 clique-separator graph, 52 closed set, 10 closure operator, 10 complexity class, 7 connected, 6 connected component, 6 convex geometry, 10 AOT, 23 AT-free, 25 connected, 21 geodesic, 21 lower affine, 22 monophonically, 22 transitive, 24 uncover, 25 affine, 22, 36 double poset, 20, 33 on edges of a tree, 21, 35 on vertices of a tree, 21, 34 poset, 19, 31 convex hull, 7 convex set, 10, 13, 51 geodesic, 21 connected, 21 monophonically, 21 INDEX 115

polytope, 31, 33, 35 transitive, 23 copoint, 14 poset, 15 cover, 6 cross-ratio, 95 cycle, 6 chordless, 6 decomposable, 35 monotone, 35 double ring, 97 downset, see ideal dummy vertex, 54 edge, 5 elminiation process, 13 endpoint, 15 Euclidean convex set, 7 exchange property, 11 existential theory of the reals, 76 extended, 54 extension, 54 extract, 51 extreme cycle, 79 extreme point, 12, 78 factor α approximation, 7 feasible continuation, 16 feasible set, 12, 13 -feasible, 40 ∗ i-feasible, 40 polytope, 31 filter, 6 fixed ring, 83 forced set function, 41 free set, 15 g-convex, see convex set, geodesic 116 INDEX graph, 5 s, t-graph, 6 AT-free, 25 block, 21 chordal, 6 directed, 5 Ptolemaic, 21 split, 21, 36 greedoid, 17 ground set, 5

Hasse diagram, 7 immediate successor, 34 indeal, 6 independent set, 6, 36 induce, 94 interior, 16 isomorphic, 74 leaf, 21 m-convex, see convex set, monophonically modified order type, 97 monophonically convex set, 51 move, 91 normal form, 95 order type, 73 abstract, 7, 23 partially ordered set, 6 path, 6 chordless, 6 poset, see partially ordered set K-rooted, 56 predecessor, 34 primary semi-algebraic set, 94 problem INDEX 117

maximum closure, 46 maximum-weight convex set, 28, 53 feasible set, 28, 46 pseudoline, 75 realizability, 72 realizability problem, 74 for convex geometry, 72 realizable, 74, 92 realization space, 94 representation, 75 root of a circuit, 16 rooted R-rooted, 54 subset, 16 separator, 51 uv-separator, 52 minimal, 51 separator nodes, 52 set system, 5 shelling, 13 shelling process, 13 simplicial, 6 sink, 6 source, 6 stem, 16 subgraph, 6 subtree, 34, 53 switch, 92 simple, 92 t-convex, see convex set, transitive trace, 15 tree, 20 k-tree, 59 118 INDEX unforced set function, 41 universal extreme, 25 upset, see filter vertex, 5 vertex separator minimal, 52 weight function, 5