OAI/Computability/WLIdentification/MateReconstruction.lean
31 declarations, 0 contain sorry, 0 declared as axioms
- theorem
OAI.WLIdentification.histogram_eq_of_equivline 7 - theorem
OAI.WLIdentification.filteredHistogram_eq_of_equivline 13 - theorem
OAI.WLIdentification.isomorphic_reflline 23 - theorem
OAI.WLIdentification.isomorphic_symmline 25 - theorem
OAI.WLIdentification.isomorphic_transline 31 - theorem
OAI.WLIdentification.neighborColor_isomorphicline 37 - theorem
OAI.WLIdentification.tupleColor_isomorphicline 48 - theorem
OAI.WLIdentification.isomorphic_equivalentline 66 - theorem
OAI.WLIdentification.equivalent_transline 76 - def
OAI.WLIdentification.simpleOfGraphline 81 - instance
OAI.WLIdentification.simpleOfGraph_decidableline 86 - theorem
OAI.WLIdentification.graph_simple_isomorphicline 89 - theorem
OAI.WLIdentification.simpleOfGraph_degreeline 97 - theorem
OAI.WLIdentification.degree_one_neighbors_eqline 106Source documentation
A degree-one vertex has the same unique neighbor in every incident edge.
theorem degree_one_neighbors_eq {V : Type} [Fintype V] (G : SimpleGraph V) [DecidableRel G.Adj] {v x y : V} (hd : G.degree v = 1) (hx : G.Adj v x) (hy : G.Adj v y) : x = y := by … - theorem
OAI.WLIdentification.private_leaf_reconstructionline 114Source documentation
Private-leaf reconstruction by exact finite counting. The prescribed leaf counts exhaust all leaf vertices; no separate leaf-only component can remain.
theorem private_leaf_reconstruction {V : Type} [Fintype V] (ell : V → ℕ) (H : SimpleGraph (LeafVertex ell)) [DecidableRel H.Adj] (hleaf : ∀ (v : V) (j : Fin (ell v)), H.degree (.inr ⟨v, j⟩) = 1) (hcount : ∀ v, Fintype.card {l : Σ v, Fin (ell v) // H.Adj (.inl v) (.inr l)} = ell v) : ∃ e : withLeaves (H.comap Sum.inl) ell ≃g H, ∀ v, e (.inl v) = .inl v := by …Mentions: OAI.WLIdentification.LeafVertex, OAI.WLIdentification.withLeaves
- def
OAI.WLIdentification.simpleDegreeNeighborsline 161 - theorem
OAI.WLIdentification.graphOfSimple_degree_atline 166 - theorem
OAI.WLIdentification.graphOfSimple_degreeNeighborsline 173 - theorem
OAI.WLIdentification.simple_equivalent_localline 187Source documentation
Transfer the literal WL local information to any finite graph vertex types.
theorem simple_equivalent_local {V W : Type} [Fintype V] [Fintype W] (G : SimpleGraph V) (H : SimpleGraph W) [DecidableRel G.Adj] [DecidableRel H.Adj] {k m : ℕ} (hk : 2 ≤ k) (h : Equivalent k (graphOfSimple G) (graphOfSimple H)) (hm : m ≤ k) (hm0 : 0 < m) (v : Fin m → V) : ∃ w : Fin m → W, (∀ i j, v i = v j ↔ w i = w j) ∧ (∀ i j, G.Adj (v i) (v j) ↔ H.Adj (w i) (w j)) ∧ (∀ i, G.degree (v i) = H.degree (w i)) ∧ (∀ i d, simpleDegreeNeighbors G (v i) d = simpleDegreeNeighbors H (w i) d) := by …Mentions: OAI.WLIdentification.Equivalent, OAI.WLIdentification.graphOfSimple, OAI.WLIdentification.simpleDegreeNeighbors
- theorem
OAI.WLIdentification.simple_equivalent_local_finiteline 221 - theorem
OAI.WLIdentification.simple_equivalent_degreeBijectionline 245Source documentation
The diagonal-tuple degree bijection is independent of the chosen finite encoding.
theorem simple_equivalent_degreeBijection {V W : Type} [Fintype V] [Fintype W] (G : SimpleGraph V) (H : SimpleGraph W) [DecidableRel G.Adj] [DecidableRel H.Adj] {k : ℕ} (hk : 2 ≤ k) (h : Equivalent k (graphOfSimple G) (graphOfSimple H)) : ∃ e : V ≃ W, ∀ v, G.degree v = H.degree (e v) := by …Mentions: OAI.WLIdentification.Equivalent, OAI.WLIdentification.graphOfSimple
- theorem
OAI.WLIdentification.leaf_count_eq_degreeNeighborsline 256 - theorem
OAI.WLIdentification.tagged_degreeNeighbors_oneline 280 - theorem
OAI.WLIdentification.tagged_arbitrary_mateline 301Source documentation
An arbitrary WL mate of a leaf-coded graph has exactly the same leaf-coded shape. This theorem quantifies over all finite mate graphs, with no gadget promise.
theorem tagged_arbitrary_mate {V W : Type} [Fintype V] [Fintype W] (G : SimpleGraph V) (H : SimpleGraph W) [DecidableRel G.Adj] [DecidableRel H.Adj] (color : V → ℕ) (hc : ∀ v, 0 < color v) {k : ℕ} (hk : 2 ≤ k) (h : Equivalent k (taggedGraph G color) (graphOfSimple H)) : ∃ G' : SimpleGraph V, Nonempty (withLeaves G' (tagSize color) ≃g H) := by …Mentions: OAI.WLIdentification.Equivalent, OAI.WLIdentification.taggedGraph, OAI.WLIdentification.graphOfSimple, OAI.WLIdentification.withLeaves, OAI.WLIdentification.tagSize
- theorem
OAI.WLIdentification.tagged_equivalent_localline 346Source documentation
A bounded set of base vertices of equivalent tagged graphs has a simultaneous color-preserving induced-graph match. Degree coding recovers the original colors.
theorem tagged_equivalent_local {A V W : Type} [Fintype A] [Nonempty A] [Fintype V] [Fintype W] (G : SimpleGraph V) (H : SimpleGraph W) [DecidableRel G.Adj] [DecidableRel H.Adj] (color : V → ℕ) (color' : W → ℕ) (hc : ∀ v, 0 < color v) (hN : Fintype.card V = Fintype.card W) {k : ℕ} (hk : 2 ≤ k) (h : Equivalent k (taggedGraph G color) (taggedGraph H color')) (hA : Fintype.card A ≤ k) (v : A → V) : ∃ w : A → W, (∀ i j, v i = v j ↔ w i = w j) ∧ (∀ i j, G.Adj (v i) (v j) ↔ H.Adj (w i) (w j)) ∧ (∀ i, color (v i) = color' (w i)) := by …Mentions: OAI.WLIdentification.Equivalent, OAI.WLIdentification.taggedGraph
- def
OAI.WLIdentification.AffineBlocks.AllowedNameline 384 - theorem
OAI.WLIdentification.AffineBlocks.allowed_nameline 390 - theorem
OAI.WLIdentification.AffineBlocks.piece_contains_colorline 394 - theorem
OAI.WLIdentification.AffineBlocks.tagged_equivalent_allowedline 409Source documentation
Bounded local WL information excludes every edge between forbidden colors.
theorem tagged_equivalent_allowed (D : AffineBlocks C B) (H : SimpleGraph (D.Vertex 0)) [DecidableRel H.Adj] {k : ℕ} (hk : 2 ≤ k) (h : Equivalent k (D.graph 0) (taggedGraph H D.colorNat)) : ∀ x y, H.Adj x y → D.Allowed x y := by …Mentions: OAI.WLIdentification.AffineBlocks, OAI.WLIdentification.Equivalent, OAI.WLIdentification.taggedGraph
- theorem
OAI.WLIdentification.AffineBlocks.tagged_equivalent_pieceline 430Source documentation
Match a complete incidence piece at once. Finite cardinality upgrades the injective local match into an isomorphism of the entire piece.
theorem tagged_equivalent_piece (D : AffineBlocks C B) (H : SimpleGraph (D.Vertex 0)) [DecidableRel H.Adj] {k : ℕ} (hk : 2 ≤ k) (h : Equivalent k (D.graph 0) (taggedGraph H D.colorNat)) (b : B) (hb : Fintype.card (D.Piece 0 b) ≤ k) : ∃ e : D.pieceGraph 0 b ≃g H.comap (D.pieceEmbed b), ∀ v, D.colorName (D.pieceEmbed b (e v)) = D.colorName (D.pieceEmbed b v) := by …Mentions: OAI.WLIdentification.AffineBlocks, OAI.WLIdentification.Equivalent, OAI.WLIdentification.taggedGraph
- theorem
OAI.WLIdentification.AffineBlocks.graph_arbitrary_mateline 462Source documentation
Full arbitrary-mate reconstruction, not pair-equivalence hardness: every finite uncolored WL mate is isomorphic to some affine shift of the same system.
theorem graph_arbitrary_mate (D : AffineBlocks C B) {k : ℕ} (hk : 2 ≤ k) (hbound : ∀ b, Fintype.card (D.Piece 0 b) ≤ k) (H : Graph) (h : Equivalent k (D.graph 0) H) : ∃ beta : B → Bit, Isomorphic H (D.graph beta) := by …Mentions: OAI.WLIdentification.AffineBlocks, OAI.WLIdentification.Graph, OAI.WLIdentification.Equivalent, OAI.WLIdentification.Bit, OAI.WLIdentification.Isomorphic