<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>On Maximal Chain Subgraphs and Covers of Bipartite Graphs</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Tiziana Calamoneri</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Mattia Gastaldello</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Arnaud Mary</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Marie-France Sagot</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Blerina Sinaimeri</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>INRIA and Université de Lyon Université Lyon 1, LBBE</institution>
          ,
          <addr-line>CNRS UMR558</addr-line>
          ,
          <country country="FR">France</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Sapienza University of Rome via Salaria 113</institution>
          ,
          <addr-line>00198 Roma</addr-line>
          ,
          <country country="IT">Italy</country>
        </aff>
      </contrib-group>
      <fpage>286</fpage>
      <lpage>291</lpage>
      <abstract>
        <p>In this paper, we address three related problems. One is the enumeration of all the maximal edge-induced chain subgraphs of a bipartite graph. We give bounds on their number and use them to establish the input-sensitive complexity of the enumeration problem. The second problem we treat is the minimum chain subgraph cover. Finally, we approach the problem of enumerating all minimal chain subgraph covers and show that it can be solved in quasi-polynomial time.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Introduction</title>
      <p>Enumerating (listing) the subgraphs of a given graph plays an important role
in analysing its structural properties. Thus, it is a central issue in many areas,
notably in data mining and computational biology.</p>
      <p>In this paper, we address the problem of enumerating without repetitions all
maximal edge-induced chain subgraphs of a bipartite graph. These are graphs
that do not contain a 2K2 as induced subgraph (i.e. there are no independent
edge sets of size 2). From now on, we will refer to them as chain subgraphs for
short when there is no ambiguity.</p>
      <p>
        Bipartite graphs arise naturally in many applications, such as biology as will
be mentioned later in the introduction, since they enable to model the relations
between two different classes of objects. The problem of enumerating in bipartite
graphs all subgraphs with certain properties has thus already been considered in
the literature. These concern for instance maximal bicliques for which polynomial
delay enumeration algorithms in bipartite [
        <xref ref-type="bibr" rid="ref11 ref6">6,11</xref>
        ] as well as in general graphs [
        <xref ref-type="bibr" rid="ref11 ref5">5,11</xref>
        ]
were provided. In the case of maximal induced chain subgraphs, their enumeration
Copyright c by the paper’s authors. Copying permitted for private and academic
purposes.
can be done in output polynomial time as it can be reduced to the enumeration
of a particular case of the minimal hitting set problem [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] (where the sets in
the family have cardinality 4). However, the existence of a polynomial delay
algorithm for this problem remains open. To the best of our knowledge, nothing
is known so far about the problem of enumerating maximal edge-induced chain
subgraphs in bipartite graphs.
      </p>
      <p>
        In this paper, we propose a polynomial delay algorithm to enumerate all
maximal chain subgraphs of a bipartite graph. We also provide an analysis of the
time complexity of this algorithm in terms of input size. In order to do this, we
prove some upper bounds on the maximum number of maximal chain subgraphs
of a bipartite graph G with n nodes and m edges. This is also of intrinsic interest
as combinatorial bounds on the maximum number of specific subgraphs in a
graph are difficult to obtain and have received a lot of attention (see for e.g.
[
        <xref ref-type="bibr" rid="ref12 ref8">8,12</xref>
        ]).
      </p>
      <p>
        We then address a second related problem called the minimum chain
subgraph cover problem. This asks to determine, for a given graph G, the minimum
number of chain subgraphs that cover all the edges of G. This has already been
investigated in the literature as it is related to other well-known problems such
as maximum induced matching (see e.g. [
        <xref ref-type="bibr" rid="ref3 ref4">3,4</xref>
        ]). For bipartite graphs, the problem
was shown to be NP-hard [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ].
      </p>
      <p>We provide an exact exponential algorithm which runs in time O∗((2 + ε)m),
for every ε &gt; 0 (by O∗ we denote standard big O notation but omitting
polynomial factors). Notice that, since a chain subgraph cover is a family of subsets
of edges, the existence of an algorithm whose complexity is close to 2m is not
obvious. Indeed, the basic search space would have size 22m , which corresponds
to all families of subsets of edges of a graph on m edges.</p>
      <p>Finally, we approach the problem of enumerating all minimal covers by chain
subgraphs. To this purpose, we provide a quasi-polynomial time algorithm to
enumerate all minimal covers by maximal chain subgraphs of a bipartite graph.
To do so, we prove that this can be polynomially reduced to the enumeration of
the minimal set covers of a hypergraph.</p>
      <p>
        Besides their theoretical interest, the problems of finding one minimum chain
subgraph cover and of enumerating all such covers have also a direct application
in biology. Nor et al. [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ] showed that a minimum chain subgraph cover of such
a bipartite graph provides a good model for identifying the minimum genetic
architecture enabling to explain one type of manipulation, called cytoplasmic
incompatibility, by bacteria of a genus called Wolbachia of their insect hosts.
Moreover, as different minimum covers may correspond to solutions that differ
in terms of their biological interpretation, the capacity to enumerate all such
minimum chain covers becomes crucial.
      </p>
    </sec>
    <sec id="sec-2">
      <title>Preliminaries</title>
      <p>
        Throughout the paper, we assume that the reader is familiar with the standard
graph terminology, as contained for instance in [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]. We consider finite undirected
graphs without loops or multiple edges.
      </p>
      <p>Given a bipartite graph G = (U ∪ W, E) and a node u ∈ U , we denote by
NG(u) the set of nodes adjacent to u in G and by EG(u) the set of edges incident
to u in G. Moreover, given U 0 ⊆ U and W 0 ⊆ W , we denote by G[U 0, W 0] the
subgraph of G induced by U 0 ∪ W 0. A node u ∈ U such that NG(u) = W is called
a universal node.</p>
      <p>For a chain graph, an equivalent condition of not containing a 2K2 as an
induced subgraph it is that for each two nodes v1 and v2 both in U (resp. in
W ), it holds that either NG(v1) ⊆ NG(v2) or NG(v2) ⊆ NG(v1). Given a chain
subgraph C = (X ∪ Y, F ) of G, with the largest neighbourhood of C, we mean
the neighbourhood of a node x in X for which the set NC (x) ⊆ Y has maximum
cardinality. A set Y 0 ⊆ Y is a maximal neighborhood of G, if there exists u ∈ U
such that NG(u) = V 0 and there does not exist a node u0 ∈ U such that NG(u) ⊂
NG(U 0).</p>
      <p>In this paper, we always consider edge-induced chain subgraphs of a graph
G. Hence, we identify a chain subgraph C of G by its set of edges E(C) ⊆ E(G)
and in that case its set of nodes will be constituted by all the nodes of G incident
to at least one edge in C (sometimes abusing notation, we more simply write
C ⊆ G or e ∈ C). A maximal chain subgraph C of a given bipartite graph G is
a connected chain subgraph such that no superset of E(C) is a chain subgraph.
We denote by C(G) the set of all maximal chain subgraphs in G.
G.</p>
      <p>A set of chain subgraphs C1, . . . , Ck is a cover for G if ∪1≤i≤kE(Ci) = E(G).
Observe that, given any cover of G by chain subgraphs C = {C1, . . . Ck}, there
exists another cover of same size C0 = {C10, . . . Ck0} whose chain subgraphs are all
maximal; more precisely, for each i = 1, . . . , k, Ci0 is a maximal chain subgraph of
G and Ci0 admits Ci as subgraph. In order to avoid redundancies, from now on,
although not explicitly highlighted, we will restrict our attention to the covers
by maximal chain subgraphs.</p>
      <p>
        We denote by S(G) the set of all minimal chain covers of a bipartite graph
An enumeration algorithm is said to be output polynomial or total polynomial
if the total running time is polynomial in the size of the input and the output. It
is said to be polynomial delay if the time between the output of any one solution
and the next one is bounded by a polynomial function of the input size [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ].
3
      </p>
    </sec>
    <sec id="sec-3">
      <title>Enumerating All Maximal Chain Subgraphs</title>
      <p>The following theorem characterizes the structure of a maximal chain subgraph
and it is fundamental for all the other results of the paper.
Theorem 1. Let C = (X ∪ Y, F ) be a chain subgraph of G = (U ∪ W, E), with
X ⊆ U , Y ⊆ W and F ⊆ E, and let x ∈ X be a node with largest neighbourhood
in C. Then C is a maximal chain subgraph of G if and only if:
(i) NC (x) = NG(x) is a maximal neighbourhood of G, i.e. there does not exist a
node u0 ∈ U such that NG(u) ⊂ NG(u0).
(ii) C \ EG(x) is a maximal chain subgraph of G U \ {x}, NG(x) .</p>
      <p>Theorem 1 is the basis of a new recursive algorithm which enumerates all
maximal chain subgraphs of G with polynomial delay:
Proposition 1 (Time Complexity and Polynomial Delay). Let G = (U ∪
W, E) be a bipartite graph. It is possible to enumerate all maximal chain subgraphs
of G with a total running time of O(|C(G)|n2m). Moreover, the solutions are
enumerated in polynomial time delay O(n2m).</p>
      <p>These two statements allow us to achieve some other results briefly described
in the following.
3.1</p>
      <sec id="sec-3-1">
        <title>Bounds on the number of maximal chains</title>
        <p>By Theorem 1(ii), a maximal chain subgraph can be found by recursively reducing
the graph to one whose partition has size |U | − 1, so we obtain that the maximum
number of chain subgraphs is bounded by min(|U |, |W |)! and that this bound is
tight as e.g. the antimatching graph reach this bound.</p>
        <p>We give also a bound on the number of maximal chain subgraphs for a
bipartite graph with m edges:
Theorem 2. Let G = (U ∪ W, E) be a bipartite graph with m edges; then
|C(G)| ≤ 2 √m log m.
3.2</p>
      </sec>
      <sec id="sec-3-2">
        <title>Minimum Chain Subgraph Cover</title>
        <p>
          Exploiting Proposition 1, the bound obtained in Theorem 2 and the
inclusion/exclusion method [
          <xref ref-type="bibr" rid="ref1 ref8">1,8</xref>
          ] that has already been successfully applied to exact
exponential algorithms for many partitioning and covering problems, we are able
to provide an O∗((2 + )m) algorithm to decide if there exists a chian subgraph
cover of size k for a given bipartite observing that the basic search space has size
22m .
        </p>
        <p>Theorem 3. Let ck(G) be the number of chain subgraph covers of size k of a
graph G. Given a bipartite graph G with m edges, for all k ∈ N∗ and for all ε &gt; 0,
ck(G) can be computed in time O∗((2 + )m).</p>
      </sec>
      <sec id="sec-3-3">
        <title>Enumeration of Minimal Chain Subgraph Covers</title>
        <p>
          The enumeration of all minimal chain subgraph covers can be polynomially
reduced to the enumeration of the minimal set covers of a hypergraph. This
reduction implies that there is a quasi-polynomial time algorithm to enumerate
all minimal chain subgraph covers. Indeed, the result in [
          <xref ref-type="bibr" rid="ref9">9</xref>
          ] implies that all the
minimal set covers of a hypergraph can be enumerated in time N log N where N
is the sum of the input size (i.e. n + m) and of the output size (i.e. the number
of minimal set covers).
        </p>
        <p>Let S = S(G) the set of its minimal chain subgraph covers. Notice that the
minimal chain subgraph covers of G are the minimal set covers of the hypergraph
H := (V, E ) where V = E and E = C. Unfortunately, the size of H might be
exponential in the size of G plus the size of S. Indeed not every maximal chain
subgraph in C will necessarily be part of some minimal chain subgraph cover. In
order to obtain a quasi-polynomial time algorithm to enumerate all minimal chain
subgraph covers, we need to enumerate only those maximal chain subgraphs that
belong to a minimal chain subgraph cover.</p>
        <p>Given an edge e ∈ E, let Ce be the set of all maximal chain subgraphs of G
containing e and Me the set of all edges e0 ∈ E inducing a 2K2 in G together
with e.</p>
        <p>We call an edge e ∈ E non-essential if there exists another edge e0 ∈ E such
that Ce0 ⊂ Ce. An edge which is not non-essential is said to be essential. Note
that for every non-essential edge e, there exists an essential edge e1 such that
Ce1 ⊂ Ce. Indeed, by applying iteratively the definition of a non-essential edge,
we obtain a list of inclusions Ce ⊃ Ce1 ⊃ Ce2 . . ., where no Cei is repeated as the
inclusions are strict. The last element of the list will correspond to an essential
edge.</p>
        <p>By the next Lemma we show that it is sufficient to consider the chain
subgraphs which contain at least an essential edge.</p>
        <p>Lemma 1. Let C be a maximal chain subgraph of a bipartite graph G = (U ∪
W, E). Then C belongs to a minimal chain subgraph cover of G if and only if C
contains an essential edge.</p>
        <p>In the following, we show how to detect essential edges.</p>
        <p>Theorem 4. Given a bipartite graph G = (U ∪W, E), for any two edges e, e0 ∈ E,
Ce ⊆ Ce0 if and only if Me ⊇ Me0 .</p>
        <p>Notice that, given an edge e = (u, w) ∈ E, u ∈ U and w ∈ W , it is easy to
determine the set Me, and checking whether Me ⊇ Me0 is also easy.</p>
        <p>These results allow us to achieve the following result:
Theorem 5. Given a bipartite graph G = (U ∪ W, E), one can enumerate all its
minimal chain subgraph covers, i.e. all the elements in S, in time O(|S|log(|S|)+2).</p>
      </sec>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <given-names>Andreas</given-names>
            <surname>Björklund</surname>
          </string-name>
          , Thore Husfeldt, and
          <string-name>
            <given-names>Mikko</given-names>
            <surname>Koivisto</surname>
          </string-name>
          .
          <article-title>Set partitioning via inclusion-exclusion</article-title>
          .
          <source>SIAM J. Comput.</source>
          ,
          <volume>39</volume>
          (
          <issue>2</issue>
          ):
          <fpage>546</fpage>
          -
          <lpage>563</lpage>
          ,
          <year>July 2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <given-names>Béla</given-names>
            <surname>Bollobás</surname>
          </string-name>
          .
          <article-title>Modern graph theory</article-title>
          , volume
          <volume>184</volume>
          of Graduate Texts in Mathematics. Springer-Verlag, Berlin,
          <year>1998</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <given-names>Andreas</given-names>
            <surname>Brandstädt</surname>
          </string-name>
          ,
          <string-name>
            <surname>Elaine M Eschen</surname>
            , and
            <given-names>R</given-names>
          </string-name>
          <string-name>
            <surname>Sritharan</surname>
          </string-name>
          .
          <article-title>The induced matching and chain subgraph cover problems for convex bipartite graphs</article-title>
          .
          <source>Theoretical computer science</source>
          ,
          <volume>381</volume>
          (
          <issue>1</issue>
          ):
          <fpage>260</fpage>
          -
          <lpage>265</lpage>
          ,
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <given-names>Yu</given-names>
            <surname>Chang-Wu</surname>
          </string-name>
          , Chen Gen-Huey, and
          <string-name>
            <surname>Ma</surname>
          </string-name>
          Tze-Heng.
          <article-title>On the complexity of the k-chain subgraph cover problem</article-title>
          .
          <source>Theoretical computer science</source>
          ,
          <volume>205</volume>
          (
          <issue>1</issue>
          ):
          <fpage>85</fpage>
          -
          <lpage>98</lpage>
          ,
          <year>1998</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Vânia</surname>
            <given-names>M.F.</given-names>
          </string-name>
          <string-name>
            <surname>Dias</surname>
          </string-name>
          ,
          <string-name>
            <surname>Celina M.H. de Figueiredo</surname>
          </string-name>
          , and
          <string-name>
            <surname>Jayme</surname>
            <given-names>L.</given-names>
          </string-name>
          <string-name>
            <surname>Szwarcfiter</surname>
          </string-name>
          .
          <article-title>Generating bicliques of a graph in lexicographic order</article-title>
          .
          <source>Theoretical Computer Science</source>
          ,
          <volume>337</volume>
          (
          <issue>1- 3</issue>
          ):
          <fpage>240</fpage>
          -
          <lpage>248</lpage>
          ,
          <year>2005</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Vânia</surname>
            <given-names>M.F.</given-names>
          </string-name>
          <string-name>
            <surname>Dias</surname>
          </string-name>
          ,
          <string-name>
            <surname>Celina M.H. de Figueiredo</surname>
          </string-name>
          , and
          <string-name>
            <surname>Jayme</surname>
            <given-names>L.</given-names>
          </string-name>
          <string-name>
            <surname>Szwarcfiter</surname>
          </string-name>
          .
          <article-title>On the generation of bicliques of a graph</article-title>
          .
          <source>Discrete Applied Mathematics</source>
          ,
          <volume>155</volume>
          (
          <issue>14</issue>
          ):
          <fpage>1826</fpage>
          -
          <lpage>1832</lpage>
          ,
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <given-names>Thomas</given-names>
            <surname>Eiter</surname>
          </string-name>
          and
          <string-name>
            <given-names>Georg</given-names>
            <surname>Gottlob</surname>
          </string-name>
          .
          <article-title>Identifying the minimal transversals of a hypergraph and related problems</article-title>
          .
          <source>SIAM Journal on Computing</source>
          ,
          <volume>24</volume>
          (
          <issue>6</issue>
          ):
          <fpage>1278</fpage>
          -
          <lpage>1304</lpage>
          ,
          <year>1995</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Fedor</surname>
            <given-names>V.</given-names>
          </string-name>
          <string-name>
            <surname>Fomin</surname>
            and
            <given-names>Dieter</given-names>
          </string-name>
          <string-name>
            <surname>Kratsch</surname>
          </string-name>
          .
          <source>Exact Exponential Algorithms</source>
          . Springer-Verlag New York, Inc., New York, NY, USA,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Michael L Fredman and Leonid Khachiyan</surname>
          </string-name>
          .
          <article-title>On the complexity of dualization of monotone disjunctive normal forms</article-title>
          .
          <source>Journal of Algorithms</source>
          ,
          <volume>21</volume>
          (
          <issue>3</issue>
          ):
          <fpage>618</fpage>
          -
          <lpage>628</lpage>
          ,
          <year>1996</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10. D. S. Johnson, M. Yannakakis, and
          <string-name>
            <given-names>C. H.</given-names>
            <surname>Papadimitriou</surname>
          </string-name>
          .
          <article-title>On generating all maximal independent sets</article-title>
          .
          <source>Information Processing Letters</source>
          ,
          <volume>27</volume>
          (
          <issue>3</issue>
          ):
          <fpage>119</fpage>
          -
          <lpage>123</lpage>
          ,
          <year>1988</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <given-names>Kazuhisa</given-names>
            <surname>Makino</surname>
          </string-name>
          and
          <string-name>
            <given-names>Takeaki</given-names>
            <surname>Uno</surname>
          </string-name>
          .
          <source>SWAT 2004, Lecture Notes in Computer Science, chapter New Algorithms for Enumerating All Maximal Cliques</source>
          , pages
          <fpage>260</fpage>
          -
          <lpage>272</lpage>
          . Springer Berlin Heidelberg, Berlin, Heidelberg,
          <year>2004</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <given-names>J. W.</given-names>
            <surname>Moon</surname>
          </string-name>
          and
          <string-name>
            <given-names>L.</given-names>
            <surname>Moser</surname>
          </string-name>
          .
          <article-title>On cliques in graphs</article-title>
          .
          <source>Israel Journal of Mathematics</source>
          ,
          <volume>3</volume>
          (
          <issue>1</issue>
          ):
          <fpage>23</fpage>
          -
          <lpage>28</lpage>
          ,
          <year>1965</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>Igor</surname>
            <given-names>Nor</given-names>
          </string-name>
          , Jan Engelstädter, Olivier Duron, Max Reuter,
          <string-name>
            <surname>Marie-France Sagot</surname>
            , and
            <given-names>Sylvain</given-names>
          </string-name>
          <string-name>
            <surname>Charlat</surname>
          </string-name>
          .
          <article-title>On the genetic architecture of cytoplasmic incompatibility: inference from phenotypic data</article-title>
          .
          <source>The American Naturalist</source>
          ,
          <volume>182</volume>
          (
          <issue>1</issue>
          ):
          <fpage>E15</fpage>
          -
          <lpage>E24</lpage>
          ,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <given-names>Mihalis</given-names>
            <surname>Yannakakis</surname>
          </string-name>
          .
          <article-title>The complexity of the partial order dimension problem</article-title>
          .
          <source>SIAM Journal on Algebraic Discrete Methods</source>
          ,
          <volume>3</volume>
          (
          <issue>3</issue>
          ):
          <fpage>351</fpage>
          -
          <lpage>358</lpage>
          ,
          <year>1982</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>