1 Introduction

In the 1980s, Tuza [9, 10] posed the following conjecture about packing and covering triangles in undirected simple graphs (hereafter called graphs). Given a graph G, let \(\nu (G)\) be the maximum size of a family of pairwise edge-disjoint triangles in G, and let \(\tau (G)\) be the minimum size of an edge set X such that \(G-X\) is triangle-free. Evidently \(\tau (G) \ge \nu (G)\), since we are forced to delete at least one edge from each triangle in a family of edge-disjoint triangles (and these edges must be distinct), and on the other hand \(\tau (G) \le 3\nu (G)\), since it suffices to delete all edges from each triangle in a maximal family of edge-disjoint triangles. Tuza conjectured that in fact \(\tau (G) \le 2\nu (G)\) for every graph G. As Tuza observed, this upper bound is sharp if true, and in particular it is achieved by \(K_4\) and \(K_5\).

The best general result on Tuza’s conjecture is due to Haxell [3], who proved that \(\tau (G) \le 2.87\nu (G)\) for every graph G. Other authors have approached the conjecture by proving that \(\tau (G)\le 2 \nu (G)\) for all graphs in some given family. Tuza [10] showed that his conjecture holds for all planar graphs, and Lakshmanan et al. [7] showed that it holds for all four-colorable graphs. The planar result has been generalized to graphs without \(K_{3,3}\)-subdivisions (Krivelevich [6]), and then to graphs with maximum average degree less than 7 (Puleo [8]). In the case where G is a \(K_4\)-free planar graph, the stronger inequality \(\tau (G) \le \frac{3}{2}\nu (G)\) was proved by Haxell et al. [5].

Asymptotic, fractional, and multigraph versions of Tuza’s conjecture have also been considered. Yuster [12] proved that \(\tau (G)\le (2+o(1))\nu (G)\) when G is a dense graph, and this was shown to be asymptotically tight by Kahn and Baron [1]. Yuster [12] also noted that a combination of results by Krivelevich [6] and Haxell and Rödl [4] implies that for any graph G with n vertices, \(\tau (G)< 2 \nu (G)+o(n^2)\). Two fractional versions of Tuza’s Conjecture were proved by Krivelevich [6]. Chapuy et al. [2] tightened one of these fractional versions, and considered the natural extension of Tuza’s conjecture to multigraphs. Here by multigraph we mean that multiple edges are permitted, but not loops (they have no effect on our problem anyway); the definitions of \(\nu \) and \(\tau \) are identical to those given in the simple graph case. In [2], planar multigraphs were shown to satisfy Tuza’s conjecture, and \(\tau (G)\le 2.92\nu (G)\) was shown to hold for all multigraphs G.

When posing his conjecture in [10], Tuza also discussed the problem of packing and covering directed triangles. Here by directed multigraph we shall mean any oriented multigraph; by directed graph we shall mean any directed multigraph without parallel arcs in the same direction (but we allow digons, i.e., a pair of arcs \(u \rightarrow v\) and \(v \rightarrow u\)). Given a directed multigraph D, let \(\nu _c(D)\) denote the maximum size of a family of pairwise arc-disjoint directed triangles, and let \(\tau _c(D)\) denote the minimum size of an arc set Y such that \(D-Y\) has no directed triangles. Tuza asked: “Is\(\tau _c(D)< 2 \nu _c(D)\)for every digraphD?”. In this paper we answer this affirmatively with the following theorem.

Theorem 1.1

If D is a directed multigraph with at least one directed triangle, then \(\tau _c(D) < 2\nu _c(D)\).

Tuza [10] observed that the rotational 5-tournament \(T_5\), pictured in Fig. 1, satisfies \(\tau _c(T_5)/ \nu _c(T_5)= \tfrac{3}{2}\). Our computational efforts have not yielded any examples with a larger ratio for \(\tau _c/\nu _c\), and in fact we find the following conjecture plausible.

Conjecture 1.2

If D is a directed multigraph, then \(\tau _c(D) \le \frac{3}{2}\nu _c(D)\).

Fig. 1
figure 1

The rotational 5-tournament \(T_5\), with \(\tau _c(T_5) = 3\) and \(\nu _c(T_5) = 2\)

In [11], Tuza proved that if D is a planar oriented graph, then \(\tau _c(D)=\nu _c(D)\). This topic of packing and covering directed triangles appears not to have caught on in the literature however (in contrast to the undirected analogue), and we hope that Conjecture 1.2 and Theorem 1.1 may create interest.

2 Proof of Theorem 1.1

The main idea of our proof is based on the reducibility argument in Puleo [7]. We use induction on \(\left|{V(D)}\right|\), with trivial base case when \(\left|{V(D)}\right| = 1\). Note that in what follows “triangle” always means “directed triangle”.

Take any \(v \in V(D)\), and define an auxiliary directed multigraph N as follows: the vertex set of N is the disjoint union of a set \(\{s,t\}\) consisting of designated source and sink vertices, as well as two sets \(W^+\) and \(W^-\), where \(W^+\) contains a copy \(w^+\) of each vertex \(w \in N^+(v)\), and \(W^-\) contains a copy \(w^-\) of each vertex \(w \in N^-(v)\). (Note that if \(w \in N^+(v) \cap N^-(v)\), then there is a copy of w in each of \(W^+\) and \(W^-\)). Given vertices \(u^+ \in W^+\) and \(z^- \in W^-\), we include the arc \(u^+ \rightarrow z^-\) in E(N) with the same multiplicity as the arc \(u \rightarrow z\) in E(D). For each \(w^+ \in W^+\), we include the arc \(s \rightarrow w^+\) in E(D) with the same multiplicity as the arc \(v \rightarrow w\), and for each \(w^- \in W^-\), we include the arc \(w^- \rightarrow t\) in E(N) with the same multiplicity as the arc \(w \rightarrow v\) in E(D).

Observe that there is a bijection between directed triangles in D containing v, and directed (st)-paths in N; triangle \(z \rightarrow v \rightarrow u \rightarrow z\) in D corresponds to directed path \(su^+z^-t\) in N. Furthermore, two directed triangles in D are arc-disjoint if and only if the corresponding paths in N are arc-disjoint. (Whenever two triangles use different parallel arcs, the corresponding paths have parallel arcs as well).

Let \({\mathcal {P}}\) be a maximum-size set of arc-disjoint (st)-paths in N, say with \(|{\mathcal {P}}|=p\). Let \({\mathcal {R}}\) be the corresponding set of pairwise arc-disjoint triangles in D, all of which contain v. Each triangle in \({\mathcal {R}}\) has exactly one arc that is not incident to v; let \({\mathcal {R}}_v\) be the set consisting of these p arcs.

Let X be a minimum-size set of arcs in N so that \(N-X\) has no directed (st)-path. By Menger’s Theorem, \(|X|=|{\mathcal {P}}|=p\). Note that in D, the set X corresponds to a set \(X_D\) of p arcs, and every triangle incident to v has at least one arc in \(X_D\). Let \(C=X_D\cup {\mathcal {R}}_v\), and observe that C is a triangle arc cover of every triangle involving v as well as every triangle sharing an arc with \({\mathcal {R}}\). We have \(|C|\le 2p\), with equality if and only if \(X_D\) and \({\mathcal {R}}_v\) are disjoint.

Let \(D'=D-v-{\mathcal {R}}_v\), and suppose first that \(D'\) has at least one directed triangle. By induction, \(\tau _c(D')<2\nu _c(D')\). Let \({\mathcal {R}}'\) be a maximum-size set of arc-disjoint directed triangles in \(D'\) and let \(C'\) be a minimum-size triangle arc cover in \(D'\). By our observations above, note that \(C\cup C'\) is a triangle arc cover of D, and \({\mathcal {R}}' \cup {\mathcal {R}}\) is a set of arc-disjoint triangles in D. We get that

$$\begin{aligned} |C'\cup C| < 2|{\mathcal {R}}'|+2p =2|{\mathcal {R}}\cup {\mathcal {R}}'|, \end{aligned}$$

as desired.

We may now assume that \(D'\) has no directed triangles. In this case, C is a triangle arc cover for D with size at most 2p. Since \({\mathcal {R}}\) is a set of p arc-disjoint triangles in D, we may assume that \(\tau _c(D) = 2p\). We will show that \(\nu _c(D) \ge p+1\).

There exists a directed triangle \(T_0\) in D that is disjoint from \({\mathcal {R}}_v\), since \(|{\mathcal {R}}_v|=p<\tau _c(D)\). Since \(D'\) has no directed triangles, \(T_0\) must be incident to v; let \(e_0\) be the arc of \(T_0\) that is not incident to v. If \(T_0\) has no arcs in common with \({\mathcal {R}}\), then \({\mathcal {R}}\cup \{T_0\}\) is our desired triangle packing of size \(p+1\). Let \({\mathcal {R}}^0\) be the set of triangles in \({\mathcal {R}}\) with at least one arc in common with \(T_0\). Since \(e_0\not \in {\mathcal {R}}_v\), we know that \(|{\mathcal {R}}^0|\in \{1, 2\}\). We will show that we can find a set \({\mathcal {T}}\) of \(|{\mathcal {R}}^0|\) directed triangles so that \(({\mathcal {R}}- {\mathcal {R}}^0)\cup \{T_0\}\cup {\mathcal {T}}\) is a set of \(p+1\) arc-disjoint triangles in D.

Let \({\mathcal {R}}^0_v\) be the subset of \({\mathcal {R}}_v\) that corresponds to \({\mathcal {R}}^0\). Consider \(D^* = D-v - ({\mathcal {R}}_v - {\mathcal {R}}^0_v)\). Note that \(D^*\) contains at least one triangle, because if not, the arc set \(X_D \cup ({\mathcal {R}}_v -{\mathcal {R}}^0_v)\) is a triangle arc cover for D. Since \(D'\) is triangle-free, every triangle in \(D^*\) must contain at least one arc from \({\mathcal {R}}^0_v\). Hence \(|{\mathcal {R}}^0_v|\in \{1, 2\}\) implies that \(\nu _c(D^*)\in \{1, 2\}\). Let \({\mathcal {T}}\) be a maximum packing of directed triangles in \(D^*\).

We first claim that \(|{\mathcal {T}}|=|{\mathcal {R}}^0|\). If not, then \(\nu _c(D^*)=1\) and \(|{\mathcal {R}}^0|=2\), since every triangle in \({\mathcal {T}}\) must contain at least one arc from \({\mathcal {R}}^0_v\). However \(\nu _c(D^*) = 1\) implies (by applying the induction hypothesis to \(D^*\)) that \(\tau _c(D^*) = 1\), so there is an arc \(f^*\) that covers all directed triangles in \(D^*\), and hence \(X_D \cup ({\mathcal {R}}_v - {\mathcal {R}}^0_v) \cup \{f^*\}\) is a triangle arc cover in D that is smaller than C.

We now complete our proof by showing that \({\mathcal{T}}\)is arc-disjoint from \( \left({\mathcal{R}} - {\mathcal{R}}^{0}\right) \cup \left\{ {T_{0} } \right\}. \) Each arc used in this second set of triangles, aside from \(e_0\), is either incident to v or from the set \( {\mathcal{R}_v} - {\mathcal{R}}^{0}_v. \) Given that \({\mathcal{T}}\) is chosen from D*, we need only worry about \(e_0\) appearing in some triangle \( T \in {\mathcal{T}}. \) As observed above, such a T must contain at least one arc from \({\mathcal {R}}^0_v, \) say the arc \(e_1\) from the triangle \(R_1 \in {\mathcal {R}}^0\). As \(R_1\) and \(T_0\) share an arc incident to v, their arcs \(e_1\) and \(e_0\) either have a common head or a common tail (or both, if they are parallel). Either way, no directed triangle can contain both of the arcs \(e_1\) and \(e_0\), and in particular T cannot contain the arc \(e_0\).