Boundaries of hypergraphs #
A signal may have many consumers, but a separator pays for its value only once. Its native incidence object is therefore a hyperedge. Hypergraph cut cardinality is symmetric and submodular, so it is a connectivity function even when the hyperedges have unbounded size.
@[reducible, inline]
A hypergraph, with named hyperedges and no restriction on their size.
Equations
- Complexity.Frontier.Hypergraph V Λ = (Λ → Set V)
Instances For
@[simp]
theorem
Complexity.Frontier.Hypergraph.cut_compl
{V : Type u_1}
{Λ : Type u_3}
(H : Hypergraph V Λ)
(X : Set V)
:
@[simp]
theorem
Complexity.Frontier.Hypergraph.cut_empty
{V : Type u_1}
{Λ : Type u_3}
(H : Hypergraph V Λ)
:
@[simp]
theorem
Complexity.Frontier.Hypergraph.cut_univ
{V : Type u_1}
{Λ : Type u_3}
(H : Hypergraph V Λ)
:
def
Complexity.Frontier.Multigraph.signalHypergraph
{V : Type u_1}
{E : Type u_2}
{Λ : Type u_3}
(G : Multigraph V E)
(label : E → Λ)
:
Hypergraph V Λ
Contract the endpoints carrying the same signal into a native hyperedge.
Instances For
theorem
Complexity.Frontier.Multigraph.image_cut_subset_hypergraph_cut
{V : Type u_1}
{E : Type u_2}
{Λ : Type u_3}
(G : Multigraph V E)
(label : E → Λ)
(X : Set V)
:
label '' G.cut X ⊆ (G.signalHypergraph label).cut X
Every crossing labelled edge gives a crossing signal hyperedge. The converse requires the occurrences of a label to be connected; it is false for arbitrary labellings.
def
Complexity.Frontier.Multigraph.labelGraph
{V : Type u_1}
{E : Type u_2}
{Λ : Type u_3}
(G : Multigraph V E)
(label : E → Λ)
(s : Λ)
:
The graph consisting of the edges with one chosen label.
Equations
Instances For
theorem
Complexity.Frontier.Multigraph.image_cut_eq_hypergraph_cut
{V : Type u_1}
{E : Type u_2}
{Λ : Type u_3}
(G : Multigraph V E)
(label : E → Λ)
(hconn :
∀ (s : Λ),
∀ u ∈ G.signalHypergraph label s,
∀ v ∈ G.signalHypergraph label s, Relation.ReflTransGen (G.labelGraph label s).Adj u v)
(X : Set V)
:
A connected occurrence graph makes the native hypergraph boundary exact.