Vertex cover #
A vertex cover of a simple graph is a set of vertices such that every edge is incident to at least one of the vertices in the set.
Main definitions #
SimpleGraph.IsVertexCover G c: Predicate thatcis a vertex cover ofG.SimpleGraph.vertexCoverNum G: The vertex cover number, e.g. the size of a minimal vertex cover.
c is a vertex cover of G if every edge in G is incident to at least one vertex in c.
Instances For
@[simp]
@[simp]
theorem SimpleGraph.IsVertexCover.subset {V : Type u_1} {G : SimpleGraph V} {c d : Set V} (hcd : c ⊆ d) (hc : G.IsVertexCover c) :
G.IsVertexCover d
theorem SimpleGraph.IsVertexCover.mono {V : Type u_1} {G G' : SimpleGraph V} {c : Set V} (hG : G ≤ G') (hc : G'.IsVertexCover c) :
G.IsVertexCover c
@[simp]
theorem SimpleGraph.isIndepSet_compl_iff_isVertexCover {V : Type u_1} {G : SimpleGraph V} {c : Set V} :
A set c is a vertex cover iff the complement of c is an independent set.
@[simp]
theorem SimpleGraph.IsVertexCover.preimage {V : Type u_1} {W : Type u_2} {G : SimpleGraph V} {H : SimpleGraph W} {F : Type u_3} [FunLike F V W] [HomClass F G H] (f : F) {c : Set W} (hc : H.IsVertexCover c) :
G.IsVertexCover (⇑f ⁻¹' c)
@[simp]
theorem SimpleGraph.isVertexCover_preimage_iso {V : Type u_1} {W : Type u_2} {G : SimpleGraph V} {H : SimpleGraph W} (f : G ≃g H) {c : Set W} :
@[simp]
theorem SimpleGraph.isVertexCover_image_iso {V : Type u_1} {W : Type u_2} {G : SimpleGraph V} {H : SimpleGraph W} (f : G ≃g H) {c : Set V} :
The vertex cover number of G is the minimal number of vertices in a vertex cover of G.
Equations
- G.vertexCoverNum = ⨅ (s : Set V), ⨅ (_ : G.IsVertexCover s), s.encard
Instances For
theorem SimpleGraph.IsVertexCover.vertexCoverNum_le {V : Type u_1} {G : SimpleGraph V} {c : Set V} (hc : G.IsVertexCover c) :
theorem SimpleGraph.vertexCoverNum_exists {V : Type u_1} (G : SimpleGraph V) :
∃ (s : Set V), s.encard = G.vertexCoverNum ∧ G.IsVertexCover s
theorem SimpleGraph.exists_of_le_vertexCoverNum {V : Type u_1} {G : SimpleGraph V} (n : ℕ) (h₁ : G.vertexCoverNum ≤ ↑n) (h₂ : ↑n ≤ ENat.card V) :
∃ (s : Set V), s.encard = ↑n ∧ G.IsVertexCover s
@[simp]
@[simp]
theorem SimpleGraph.vertexCoverNum_of_subsingleton {V : Type u_1} {G : SimpleGraph V} [Subsingleton V] :
@[simp]
@[simp]
theorem SimpleGraph.vertexCoverNum_lt_card {V : Type u_1} {G : SimpleGraph V} [Nonempty V] [Finite V] :
@[simp]
theorem SimpleGraph.vertexCoverNum_ne_top_of_finite_edgeSet {V : Type u_1} {G : SimpleGraph V} (h : G.edgeSet.Finite) :
@[simp]
theorem SimpleGraph.IsContained.vertexCoverNum_le_vertexCoverNum {V : Type u_1} {W : Type u_2} {G : SimpleGraph V} {H : SimpleGraph W} (h : G.IsContained H) :
theorem SimpleGraph.vertexCoverNum_congr {V : Type u_1} {W : Type u_2} {G : SimpleGraph V} {H : SimpleGraph W} (f : G ≃g H) :