The cycle matroid of a graph G. Its circuits are the edge sets of cycles of G,
and its independent sets are the edge sets of forests.
Equations
- One or more equations did not get rendered due to their size.
Instances For
@[simp]
@[simp]
@[simp]
theorem Graph.exists_isMaximalAcyclicSet {α : Type u_1} {β : Type u_2} (G : Graph α β) :
∃ (F : Set β), G.IsMaximalAcyclicSet F
theorem Graph.cycleMatroid_coindep {α : Type u_1} {β : Type u_2} {G : Graph α β} {F : Set β} :
G.cycleMatroid.Coindep F ↔ F ⊆ G.edgeSet ∧ ∀ (x y : α), G.ConnBetween x y ↔ (G.deleteEdges F).ConnBetween x y
theorem Graph.cycleMatroid_spanning {α : Type u_1} {β : Type u_2} {G : Graph α β} {F : Set β} :
G.cycleMatroid.Spanning F ↔ F ⊆ G.edgeSet ∧ ∀ (x y : α), G.ConnBetween x y ↔ (G.restrict F).ConnBetween x y
@[simp]
@[simp]
theorem Graph.IsEdgeCut.cycleMatroid_dual_cyclic {α : Type u_1} {β : Type u_2} {G : Graph α β} {F : Set β} (hF : G.IsEdgeCut F) :
G.cycleMatroid✶.Cyclic F
theorem Graph.IsMaximalAcyclicSet.isTree {α : Type u_1} {β : Type u_2} {G : Graph α β} {F : Set β} (hG : G.Connected) (hF : G.IsMaximalAcyclicSet F) :
@[simp]
@[simp]
theorem Graph.cycleMatroid_contract {α : Type u_1} {β : Type u_2} {G H : Graph α β} {φ : α → α} (hφ : H.connPartition.IsRepFun φ) (hHG : H ≤ G) :
@[simp]
theorem Graph.cycleMatroid_isRestriction_of_le {α : Type u_1} {β : Type u_2} {G H : Graph α β} (h : G ≤ H) :
theorem Graph.Preconnected.cycleMatroid_dual_girth {α : Type u_1} {β : Type u_2} {G : Graph α β} (hG : G.Preconnected) (n : ℕ) :
instance Graph.instLooplessCycleMatroidOfLoopless {α : Type u_1} {β : Type u_2} {G : Graph α β} [G.Loopless] :
@[simp]
theorem Graph.IsClosedSubgraph.cycleMatroid_skew {α : Type u_1} {β : Type u_2} {G H : Graph α β} (h : H.IsClosedSubgraph G) :
theorem Graph.Compatible.cycleMatroid_union_skew {α : Type u_1} {β : Type u_2} {G H : Graph α β} (h : (G.vertexSet ∩ H.vertexSet).Subsingleton) (hcompat : G.Compatible H) :
(G ∪ H).cycleMatroid.Skew G.edgeSet H.edgeSet
theorem Graph.components_cycleMatroid_isSkewFamily {α : Type u_1} {β : Type u_2} (G : Graph α β) :
G.cycleMatroid.IsSkewFamily fun (H : ↑G.Components) => (↑H).edgeSet
def Graph.joinAt {α : Type u_1} {β : Type u_2} (G : Graph α β) (x : α) (f : α → α) [DecidablePred fun (x : α) => x ∈ f '' G.vertexSet] :
Graph α β
Join the connected components of G at x using the function f. Has sound output when
f is a rep-function of G.connPartition.
Instances For
theorem Graph.joinAt_finite {α : Type u_1} {β : Type u_2} {G : Graph α β} {x : α} {f : α → α} [DecidablePred fun (x : α) => x ∈ f '' G.vertexSet] (hf : G.connPartition.IsRepFun f) [G.EdgeFinite] :
theorem Graph.joinAt_preconnected {α : Type u_1} {β : Type u_2} {G : Graph α β} {x : α} {f : α → α} [DecidablePred fun (x : α) => x ∈ f '' G.vertexSet] (hf : G.connPartition.IsRepFun f) :
(G.joinAt x f).Preconnected
theorem Graph.IsCycleSet.joinAt_of {α : Type u_1} {β : Type u_2} {G : Graph α β} {x : α} {f : α → α} [DecidablePred fun (x : α) => x ∈ f '' G.vertexSet] {C : Set β} (hf : G.connPartition.IsRepFun f) (hx : x ∉ G.vertexSet \ f '' G.vertexSet) (hC : G.IsCycleSet C) :
(G.joinAt x f).IsCycleSet C
theorem Graph.IsCycleSet.of_joinAt {α : Type u_1} {β : Type u_2} {G : Graph α β} {x : α} {f : α → α} [DecidablePred fun (x : α) => x ∈ f '' G.vertexSet] {C : Set β} (hf : G.connPartition.IsRepFun f) (hx : x ∉ G.vertexSet \ f '' G.vertexSet) (hC : (G.joinAt x f).IsCycleSet C) :
G.IsCycleSet C
@[simp]
theorem Graph.cycleMatroid_joinAt {α : Type u_1} {β : Type u_2} {G : Graph α β} {x : α} {f : α → α} [DecidablePred fun (x : α) => x ∈ f '' G.vertexSet] (hf : G.connPartition.IsRepFun f) (hx : x ∉ G.vertexSet \ f '' G.vertexSet) :
@[simp]
theorem Graph.cycleMatroid_parallel {α : Type u_1} {β : Type u_2} {G : Graph α β} {e f : β} [G.Loopless] :
theorem Graph.cycleMatroid_parallelClasses {α : Type u_1} {β : Type u_2} {G : Graph α β} [G.Loopless] :
@[simp]
instance Graph.instSimpleCycleMatroidOfSimple {α : Type u_1} {β : Type u_2} {G : Graph α β} [G.Simple] :
@[simp]
instance Graph.instFiniteCycleMatroidOfEdgeFinite {α : Type u_1} {β : Type u_2} {G : Graph α β} [G.EdgeFinite] :
@[simp]
@[simp]
@[simp]
@[simp]
theorem Graph.cycleMatroid_isFlat {α : Type u_1} {β : Type u_2} {G : Graph α β} {F : Set β} (hFE : F ⊆ G.edgeSet) (hF : ∀ (H : Graph α β), H.IsCompOf (G.restrict F) → H.IsInducedSubgraph G) :
G.cycleMatroid.IsFlat F
theorem Graph.orientation.isAcyclicSet_linearIndepOn {α : Type u_1} {β : Type u_2} {G : Graph α β} {𝔽 : Type u_3} [Field 𝔽] [DecidableEq α] [DecidablePred fun (x : β) => x ∈ G.edgeSet] {I : Set β} (hI : G.IsAcyclicSet I) (D : G.orientation) :
LinearIndepOn 𝔽 (D.signedIncMatrix 𝔽) I
noncomputable def Graph.cycleMatroidRep {α : Type u_1} {β : Type u_2} {G : Graph α β} (𝔽 : Type u_3) [Field 𝔽] :
G.cycleMatroid.Rep 𝔽 (α → 𝔽)
Equations
- Graph.cycleMatroidRep 𝔽 = { to_fun := have hD := ⋯; hD.some.signedIncMatrix 𝔽, indep_iff' := ⋯ }