Documentation

ExpanderGraphs.WeightedGraph

WeightedGraph #

This file develops the basic theory of weighted multigraphs WeightedGraph α β.

Main definitions #

References #

structure WeightedGraph (α : Type u_4) (β : Type u_5) (K : Type u_6) extends Graph α β :
Type (max (max u_4 u_5) u_6)

A weighted multigraph on types α β K is a Graph α β associated with a function w: β → K.

Instances For

    Finiteness at a vertex #

    This section deals with vertices that have finitely many adjacent vertices. We denote this condition by Fintype (G.incidenceSet v). We define G.neighborFinset v to be the Finset version of G.neighborSet v.

    def WeightedGraph.incidenceFinset {α : Type u_1} {β : Type u_2} {K : Type u_3} (G : WeightedGraph α β K) (v : α) [Fintype (Graph.incidenceSet v)] :

    G.incidenceFinset v is the Finset version of G.incidenceSet v in case G is locally finite at v.

    Equations
    Instances For
      def WeightedGraph.degree {α : Type u_1} {β : Type u_2} {K : Type u_3} (G : WeightedGraph α β K) [AddCommMonoid K] (v : α) [Fintype (Graph.incidenceSet v)] :
      K

      The degree of v in G is the sum of G.w e for every edge e linked to v.

      Equations
      Instances For
        def WeightedGraph.linkWeight {α : Type u_1} {β : Type u_2} {K : Type u_3} (G : WeightedGraph α β K) [AddCommMonoid K] (u v : α) [Fintype (Graph.incidenceSet u)] [(e : β) → (u v : α) → Decidable (G.IsLink e u v)] :
        K

        The total weight of edges linking u and v.

        Equations
        Instances For
          theorem WeightedGraph.weight_comm {α : Type u_1} {β : Type u_2} {K : Type u_3} (G : WeightedGraph α β K) [AddCommMonoid K] (u v : α) [Fintype (Graph.incidenceSet v)] [Fintype (Graph.incidenceSet u)] [(e : β) → (u v : α) → Decidable (G.IsLink e u v)] :
          G.linkWeight u v = G.linkWeight v u

          Symmetry of edge weight between two vertices.

          Finite Graph #

          This section states results about graphs with a finite number of vertices and edges.

          def WeightedGraph.vol {α : Type u_1} {β : Type u_2} {K : Type u_3} (G : WeightedGraph α β K) [AddCommMonoid K] [(u : α) → Fintype (Graph.incidenceSet u)] [Fintype G.vertexSet] :
          K

          The volume of a graph G is the sum of the degrees of its vertices.

          Equations
          Instances For

            Finite Graph #

            This section states results about graphs associated with a real weight function.

            def WeightedGraph.degreeMatrix {α : Type u_1} {β : Type u_2} (G : WeightedGraph α β ) [(u : α) → Fintype (Graph.incidenceSet u)] [DecidableEq G.vertexSet] :

            The diagonal matrix consisting of the degrees of the vertices in the graph.

            Equations
            Instances For
              noncomputable def WeightedGraph.lapMatrix {α : Type u_1} {β : Type u_2} (G : WeightedGraph α β ) [(u : α) → Fintype (Graph.incidenceSet u)] [DecidableEq G.vertexSet] [(e : β) → (u v : α) → Decidable (G.IsLink e u v)] [DecidableRel G.Adj] :

              The Laplacian matrix lapMatrix of a weighted graph G.

              Equations
              Instances For
                theorem WeightedGraph.isHermitian_lapMatrix {α : Type u_1} {β : Type u_2} (G : WeightedGraph α β ) [(u : α) → Fintype (Graph.incidenceSet u)] [DecidableEq G.vertexSet] [(e : β) → (u v : α) → Decidable (G.IsLink e u v)] [DecidableRel G.Adj] :
                noncomputable def WeightedGraph.lapEigvals {α : Type u_1} {β : Type u_2} (G : WeightedGraph α β ) [(u : α) → Fintype (Graph.incidenceSet u)] [DecidableEq G.vertexSet] [(e : β) → (u v : α) → Decidable (G.IsLink e u v)] [DecidableRel G.Adj] [Fintype G.vertexSet] :

                Eigenvalues of lapMatrix in non-increasing order.

                Equations
                Instances For