theorem List.eq_of_sum_eq_le {α : Type u_1} [AddCommMonoid α] [PartialOrder α] [AddLeftStrictMono α] [AddRightStrictMono α] [AddLeftMono α] {l : List (α × α)} (hle : ∀ x ∈ l, x.1 ≤ x.2) (hsum : l.unzip.1.sum = l.unzip.2.sum) :
The 'incidence function' of a graph G. If e : β and x : α,
then G.incFun e x is equal to 0 if e is not incident to x,
1 if e is a nonloop edge at x and 2 if e is a loop edge at x.
It is defined this way so that G.incFun e sums to two for each e ∈ E(G),
which is natural for the handshake theorem and linear algebra on graphs.
The definition is contrivedly written in terms of ncard so it
does not require any explicit decidability assumptions.
Equations
Instances For
theorem Graph.IsNonloopAt.eIncFun_eq_one {α : Type u_1} {β : Type u_2} {x : α} {e : β} {G : Graph α β} (h : G.IsNonloopAt e x) :
@[simp]
theorem Graph.IsNonloopAt.incFun_eq_one {α : Type u_1} {β : Type u_2} {x : α} {e : β} {G : Graph α β} (h : G.IsNonloopAt e x) :
theorem Graph.IsLoopAt.incFun_eq_two {α : Type u_1} {β : Type u_2} {x : α} {e : β} {G : Graph α β} :
Alias of the reverse direction of Graph.incFun_eq_two_iff.
Vertex Degrees #
@[simp]
theorem Graph.natCast_degree_eq {α : Type u_1} {β : Type u_2} (G : Graph α β) [G.LocallyFinite] (v : α) :
@[simp]
theorem Graph.eDegree_lt_top {α : Type u_1} {β : Type u_2} {x : α} {G : Graph α β} [G.LocallyFinite] :
@[simp]
theorem Graph.eDegree_ne_top {α : Type u_1} {β : Type u_2} {x : α} {G : Graph α β} [G.LocallyFinite] :
theorem Graph.degree_ne_zero_iff_inc {α : Type u_1} {β : Type u_2} {v : α} {G : Graph α β} [G.LocallyFinite] :
theorem Graph.degree_ne_zero_iff_adj {α : Type u_1} {β : Type u_2} {v : α} {G : Graph α β} [G.LocallyFinite] :
theorem Graph.IsNonloopAt.one_le_eDegree {α : Type u_1} {β : Type u_2} {x : α} {e : β} {G : Graph α β} (h : G.IsNonloopAt e x) :
theorem Graph.IsLoopAt.two_le_degree {α : Type u_1} {β : Type u_2} {x : α} {e : β} {G : Graph α β} [G.LocallyFinite] (h : G.IsLoopAt e x) :
theorem Graph.Inc.one_le_degree {α : Type u_1} {β : Type u_2} {x : α} {e : β} {G : Graph α β} [G.LocallyFinite] (h : G.Inc e x) :
theorem Graph.IsNonloopAt.one_le_degree {α : Type u_1} {β : Type u_2} {x : α} {e : β} {G : Graph α β} [G.LocallyFinite] (h : G.IsNonloopAt e x) :
@[simp]
theorem Graph.support_degree_subset {α : Type u_1} {β : Type u_2} (G : Graph α β) :
Function.support G.degree ⊆ G.vertexSet
@[simp]
theorem Graph.support_eDegree_subset {α : Type u_1} {β : Type u_2} (G : Graph α β) :
Function.support G.eDegree ⊆ G.vertexSet
Subgraphs #
theorem Graph.degree_mono {α : Type u_1} {β : Type u_2} {G H : Graph α β} [hG : G.LocallyFinite] (hle : H ≤ G) (x : α) :
Isolated vertices #
Leaves #
theorem Graph.Inc.isPendant_of_degree_le_one {α : Type u_1} {β : Type u_2} {x : α} {e : β} {G : Graph α β} [G.LocallyFinite] (h : G.Inc e x) (hdeg : G.degree x ≤ 1) :
G.IsPendant e x