Documentation

Mathlib.Combinatorics.SimpleGraph.Connectivity.WalkCounting

Counting walks of a given length #

Main definitions #

TODO: should this be extended further?

Walks of a given length #

theorem SimpleGraph.set_walk_length_zero_eq_of_ne {V : Type u} (G : SimpleGraph V) {u v : V} (h : u v) :
{p : G.Walk u v | p.length = 0} =
theorem SimpleGraph.set_walk_length_succ_eq {V : Type u} (G : SimpleGraph V) (u v : V) (n : ) :
{p : G.Walk u v | p.length = n.succ} = ⋃ (w : V), ⋃ (h : G.Adj u w), Walk.cons h '' {p' : G.Walk w v | p'.length = n}
def SimpleGraph.walkLengthTwoEquivCommonNeighbors {V : Type u} (G : SimpleGraph V) (u v : V) :
{ p : G.Walk u v // p.length = 2 } (G.commonNeighbors u v)

Walks of length two from u to v correspond bijectively to common neighbours of u and v. Note that u and v may be the same.

Equations
  • One or more equations did not get rendered due to their size.
Instances For
    @[simp]
    theorem SimpleGraph.walkLengthTwoEquivCommonNeighbors_apply_coe {V : Type u} (G : SimpleGraph V) (u v : V) (p : { p : G.Walk u v // p.length = 2 }) :
    def SimpleGraph.finsetWalkLength {V : Type u} (G : SimpleGraph V) [DecidableEq V] [G.LocallyFinite] (n : ) (u v : V) :
    Finset (G.Walk u v)

    The Finset of length-n walks from u to v. This is used to give {p : G.walk u v | p.length = n} a Fintype instance, and it can also be useful as a recursive description of this set when V is finite.

    See SimpleGraph.coe_finsetWalkLength_eq for the relationship between this Finset and the set of length-n walks.

    Equations
    Instances For
      theorem SimpleGraph.coe_finsetWalkLength_eq {V : Type u} (G : SimpleGraph V) [DecidableEq V] [G.LocallyFinite] (n : ) (u v : V) :
      (G.finsetWalkLength n u v) = {p : G.Walk u v | p.length = n}
      theorem SimpleGraph.mem_finsetWalkLength_iff {V : Type u} {G : SimpleGraph V} [DecidableEq V] [G.LocallyFinite] {n : } {u v : V} {p : G.Walk u v} :
      def SimpleGraph.finsetWalkLengthLT {V : Type u} (G : SimpleGraph V) [DecidableEq V] [G.LocallyFinite] (n : ) (u v : V) :
      Finset (G.Walk u v)

      The Finset of walks from u to v with length less than n. See finsetWalkLength for context. In particular, we use this definition for SimpleGraph.Path.instFintype.

      Equations
      Instances For
        theorem SimpleGraph.coe_finsetWalkLengthLT_eq {V : Type u} (G : SimpleGraph V) [DecidableEq V] [G.LocallyFinite] (n : ) (u v : V) :
        (G.finsetWalkLengthLT n u v) = {p : G.Walk u v | p.length < n}
        theorem SimpleGraph.mem_finsetWalkLengthLT_iff {V : Type u} {G : SimpleGraph V} [DecidableEq V] [G.LocallyFinite] {n : } {u v : V} {p : G.Walk u v} :
        instance SimpleGraph.fintypeSetWalkLength {V : Type u} (G : SimpleGraph V) [DecidableEq V] [G.LocallyFinite] (u v : V) (n : ) :
        Fintype {p : G.Walk u v | p.length = n}
        Equations
        instance SimpleGraph.fintypeSubtypeWalkLength {V : Type u} (G : SimpleGraph V) [DecidableEq V] [G.LocallyFinite] (u v : V) (n : ) :
        Fintype { p : G.Walk u v // p.length = n }
        Equations
        theorem SimpleGraph.card_set_walk_length_eq {V : Type u} (G : SimpleGraph V) [DecidableEq V] [G.LocallyFinite] (u v : V) (n : ) :
        Fintype.card {p : G.Walk u v | p.length = n} = (G.finsetWalkLength n u v).card
        instance SimpleGraph.fintypeSetWalkLengthLT {V : Type u} (G : SimpleGraph V) [DecidableEq V] [G.LocallyFinite] (u v : V) (n : ) :
        Fintype {p : G.Walk u v | p.length < n}
        Equations
        instance SimpleGraph.fintypeSetPathLength {V : Type u} (G : SimpleGraph V) [DecidableEq V] [G.LocallyFinite] (u v : V) (n : ) :
        Fintype {p : G.Walk u v | p.IsPath p.length = n}
        Equations
        instance SimpleGraph.fintypeSetPathLengthLT {V : Type u} (G : SimpleGraph V) [DecidableEq V] [G.LocallyFinite] (u v : V) (n : ) :
        Fintype {p : G.Walk u v | p.IsPath p.length < n}
        Equations
        instance SimpleGraph.Path.instFintype {V : Type u} (G : SimpleGraph V) [DecidableEq V] [Fintype V] [DecidableRel G.Adj] {u v : V} :
        Fintype (G.Path u v)
        Equations
        • One or more equations did not get rendered due to their size.