Documentation

Matroid.Graph.Connected.Component

Components #

theorem Graph.IsCompOf.ne_bot {α : Type u_1} {β : Type u_2} {G H : Graph α β} (hHco : H.IsCompOf G) :
@[simp]
theorem Graph.bot_not_isCompOf {α : Type u_1} {β : Type u_2} {G : Graph α β} :
@[simp]
theorem Graph.not_isCompOf_bot {α : Type u_1} {β : Type u_2} {G : Graph α β} :
theorem Graph.IsClosedSubgraph.le_isCompOf_iff {α : Type u_1} {β : Type u_2} {G H₁ H₂ : Graph α β} (hH₁cl : H₁.IsClosedSubgraph G) (hH₂co : H₂.IsCompOf G) :
H₁ ≤ H₂ ↔ H₁ = ⊥ ∨ H₁ = H₂
theorem Graph.IsClosedSubgraph.lt_isCompOf_iff {α : Type u_1} {β : Type u_2} {G H₁ H₂ : Graph α β} (hH₁cl : H₁.IsClosedSubgraph G) (hH₂co : H₂.IsCompOf G) :
H₁ < H₂ ↔ H₁ = ⊥
theorem Graph.IsClosedSubgraph.eq_of_le_isCompOf_of_vertexSet_not_disjoint {α : Type u_1} {β : Type u_2} {G H₁ H₂ : Graph α β} (hH₁cl : H₁.IsClosedSubgraph G) (hH₂co : H₂.IsCompOf G) (hle : H₁ ≤ H₂) (hV : ¬Disjoint H₁.vertexSet H₂.vertexSet) :
H₁ = H₂
theorem Graph.IsCompOf.of_isClosedSubgraph {α : Type u_1} {β : Type u_2} {G H H' : Graph α β} (hHcl : H.IsClosedSubgraph G) (hH'co : H'.IsCompOf H) :
def Graph.walkable {α : Type u_1} {β : Type u_2} (G : Graph α β) (u : α) :
Graph α β
Equations
Instances For
    theorem Graph.mem_walkable {α : Type u_1} {β : Type u_2} {x : α} {G : Graph α β} (hx : x ∈ G.vertexSet) :
    @[simp]
    theorem Graph.mem_walkable_iff {α : Type u_1} {β : Type u_2} {u x : α} {G : Graph α β} :
    theorem Graph.walkable_isClosedSubgraph {α : Type u_1} {β : Type u_2} {u : α} {G : Graph α β} :
    theorem Graph.Adj.mem_walkable {α : Type u_1} {β : Type u_2} {x y : α} {G : Graph α β} (h : G.Adj x y) :
    @[simp]
    theorem Graph.mem_walkable_self_iff {α : Type u_1} {β : Type u_2} {x : α} {G : Graph α β} :
    @[simp]
    theorem Graph.walkable_eq_bot {α : Type u_1} {β : Type u_2} {x : α} {G : Graph α β} (hx : x ∉ G.vertexSet) :
    theorem Graph.exists_isWalk_of_mem_mem {α : Type u_1} {β : Type u_2} {u x y : α} {G : Graph α β} (hx : x ∈ (G.walkable u).vertexSet) (hy : y ∈ (G.walkable u).vertexSet) :
    ∃ (W : WList α β), G.IsWalk W ∧ W.first = x ∧ W.last = y
    theorem Graph.mem_walkable_symm {α : Type u_1} {β : Type u_2} {u x : α} {G : Graph α β} (hx : x ∈ (G.walkable u).vertexSet) :
    theorem Graph.mem_walkable_comm {α : Type u_1} {β : Type u_2} {u x : α} {G : Graph α β} :
    theorem Graph.mem_walkable_trans {α : Type u_1} {β : Type u_2} {u v x : α} {G : Graph α β} (huv : u ∈ (G.walkable v).vertexSet) (hvx : v ∈ (G.walkable x).vertexSet) :
    theorem Graph.walkable_eq_walkable_of_mem {α : Type u_1} {β : Type u_2} {u x : α} {G : Graph α β} (hx : x ∈ (G.walkable u).vertexSet) :
    @[simp]
    theorem Graph.walkable_eq_walkable_iff_mem {α : Type u_1} {β : Type u_2} {u x : α} {G : Graph α β} (hx : x ∈ G.vertexSet) :
    theorem Graph.IsClosedSubgraph.walkable_le_of_mem {α : Type u_1} {β : Type u_2} {x : α} {G H : Graph α β} (hcl : H.IsClosedSubgraph G) (hx : x ∈ H.vertexSet) :
    theorem Graph.walkable_isCompOf {α : Type u_1} {β : Type u_2} {x : α} {G : Graph α β} (hx : x ∈ G.vertexSet) :
    theorem Graph.exists_IsCompOf {α : Type u_1} {β : Type u_2} {G : Graph α β} (hG : G.vertexSet.Nonempty) :
    ∃ (H : Graph α β), H.IsCompOf G
    theorem Graph.IsCompOf.eq_walkable_of_mem_walkable {α : Type u_1} {β : Type u_2} {x : α} {G H : Graph α β} (hHco : H.IsCompOf G) (hx : x ∈ H.vertexSet) :
    H = G.walkable x
    theorem Graph.isCompOf_iff_exists_walkable {α : Type u_1} {β : Type u_2} {G H : Graph α β} :
    H.IsCompOf G ↔ ∃ x ∈ H.vertexSet, G.walkable x = H
    theorem Graph.IsCompOf.exists_walkable {α : Type u_1} {β : Type u_2} {G H : Graph α β} :
    H.IsCompOf G → ∃ x ∈ H.vertexSet, G.walkable x = H

    Alias of the forward direction of Graph.isCompOf_iff_exists_walkable.

    theorem Graph.exists_IsCompOf_vertex_mem {α : Type u_1} {β : Type u_2} {x : α} {G : Graph α β} (hx : x ∈ G.vertexSet) :
    ∃ (H : Graph α β), H.IsCompOf G ∧ x ∈ H.vertexSet
    theorem Graph.IsCompOf.le_of_mem_mem {α : Type u_1} {β : Type u_2} {x : α} {G H₁ H₂ : Graph α β} (hH₁ : H₁.IsCompOf G) (hH₂cl : H₂.IsClosedSubgraph G) (hx₁ : x ∈ H₁.vertexSet) (hx₂ : x ∈ H₂.vertexSet) :
    H₁ ≤ H₂
    theorem Graph.IsCompOf.eq_of_not_disjoint {α : Type u_1} {β : Type u_2} {G H₁ H₂ : Graph α β} (hH₁co : H₁.IsCompOf G) (hH₂co : H₂.IsCompOf G) (hV : ¬Disjoint H₁.vertexSet H₂.vertexSet) :
    H₁ = H₂
    theorem Graph.IsCompOf.not_disjoint_iff {α : Type u_1} {β : Type u_2} {G H₁ H₂ : Graph α β} (hH₁co : H₁.IsCompOf G) (hH₂co : H₂.IsCompOf G) :
    ¬Disjoint H₁.vertexSet H₂.vertexSet ↔ H₁ = H₂
    def Graph.Components {α : Type u_1} {β : Type u_2} (G : Graph α β) :
    Set (Graph α β)
    Equations
    Instances For
      noncomputable def Graph.NumberOfComponents {α : Type u_1} {β : Type u_2} (G : Graph α β) :
      Equations
      Instances For
        Equations
        • One or more equations did not get rendered due to their size.
        Instances For
          def Graph.compPartition {α : Type u_1} {β : Type u_2} (G : Graph α β) :
          Equations
          Instances For
            @[simp]
            theorem Graph.compPartition_parts {α : Type u_1} {β : Type u_2} (G : Graph α β) :
            @[simp]
            theorem Graph.mem_components_iff_isCompOf {α : Type u_1} {β : Type u_2} {G H : Graph α β} :
            @[simp]
            theorem Graph.mem_compPartition_iff_isCompOf {α : Type u_1} {β : Type u_2} {G : Graph α β} {H : G.Subgraph} :
            @[simp]
            theorem Graph.bot_notMem_components {α : Type u_1} {β : Type u_2} (G : Graph α β) :
            def Graph.connPartition {α : Type u_1} {β : Type u_2} (G : Graph α β) :
            Equations
            Instances For
              @[simp]
              theorem Graph.connPartition_parts {α : Type u_1} {β : Type u_2} (G : Graph α β) :
              G.connPartition.parts = (fun (x : Graph α β) => x.vertexSet) '' G.Components
              theorem Graph.mem_connPartition_iff_isCompOf {α : Type u_1} {β : Type u_2} {S : Set α} {G : Graph α β} :
              S ∈ G.connPartition ↔ ∃ (H : Graph α β), H.IsCompOf G ∧ H.vertexSet = S
              @[simp]
              theorem Graph.IsCompOf.mem_connPartition {α : Type u_1} {β : Type u_2} {G H : Graph α β} (hHco : H.IsCompOf G) :
              @[simp]
              theorem Graph.induce_connPartition_parts_eq_components {α : Type u_1} {β : Type u_2} (G : Graph α β) :
              (fun (x : Set α) => G[x]) '' G.connPartition.parts = G.Components
              @[simp]
              theorem Graph.connPartition_supp {α : Type u_1} {β : Type u_2} (G : Graph α β) :
              theorem Graph.eq_sUnion_components {α : Type u_1} {β : Type u_2} (G : Graph α β) :
              @[simp]
              theorem Graph.components_eq_empty_iff {α : Type u_1} {β : Type u_2} {G : Graph α β} :
              theorem Graph.components_nonempty {α : Type u_1} {β : Type u_2} {G : Graph α β} :

              Alias of the reverse direction of Graph.components_nonempty_iff.

              theorem Graph.exists_isCompOf_iff {α : Type u_1} {β : Type u_2} {G : Graph α β} :
              (∃ (H : Graph α β), H.IsCompOf G) ↔ G.vertexSet.Nonempty
              theorem Graph.exists_isCompOf {α : Type u_1} {β : Type u_2} {G : Graph α β} :
              G.vertexSet.Nonempty → ∃ (H : Graph α β), H.IsCompOf G

              Alias of the reverse direction of Graph.exists_isCompOf_iff.

              theorem Graph.components_eq_walkable_image {α : Type u_1} {β : Type u_2} (G : Graph α β) :
              theorem Graph.components_encard_le {α : Type u_1} {β : Type u_2} (G : Graph α β) :
              @[simp]
              theorem Graph.biUnion_components_vertexSet {α : Type u_1} {β : Type u_2} (G : Graph α β) :
              ⋃ H ∈ G.Components, H.vertexSet = G.vertexSet
              @[simp]
              theorem Graph.biUnion_components_edgeSet {α : Type u_1} {β : Type u_2} (G : Graph α β) :
              ⋃ H ∈ G.Components, H.edgeSet = G.edgeSet
              theorem Graph.IsClosedSubgraph.components_subset_components {α : Type u_1} {β : Type u_2} {G H : Graph α β} (hcl : H.IsClosedSubgraph G) :