Skip to content

Commit 7d71710

Browse files
committed
feat(Combinatorics/SimpleGraph/Subgraph): a couple of subgraphOfAdj lemmas (#36308)
Also golf a lemma (it's one line longer but it looks simpler to me).
1 parent f884e9d commit 7d71710

1 file changed

Lines changed: 10 additions & 4 deletions

File tree

Mathlib/Combinatorics/SimpleGraph/Subgraph.lean

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -938,6 +938,9 @@ instance nonempty_subgraphOfAdj_verts {v w : V} (hvw : G.Adj v w) :
938938
Nonempty (G.subgraphOfAdj hvw).verts :=
939939
⟨⟨v, by simp⟩⟩
940940

941+
theorem subgraphOfAdj_adj_self {u v : V} (h : G.Adj u v) : (G.subgraphOfAdj h).Adj u v :=
942+
rfl
943+
941944
@[simp]
942945
theorem edgeSet_subgraphOfAdj {v w : V} (hvw : G.Adj v w) :
943946
(G.subgraphOfAdj hvw).edgeSet = {s(v, w)} := by
@@ -949,10 +952,13 @@ theorem edgeSet_subgraphOfAdj {v w : V} (hvw : G.Adj v w) :
949952
lemma subgraphOfAdj_le_of_adj {v w : V} (H : G.Subgraph) (h : H.Adj v w) :
950953
G.subgraphOfAdj (H.adj_sub h) ≤ H := by
951954
constructor
952-
· intro x
953-
rintro (rfl | rfl) <;> simp [H.edge_vert h, H.edge_vert h.symm]
954-
· simp only [subgraphOfAdj_adj, Sym2.eq, Sym2.rel_iff]
955-
rintro _ _ (⟨rfl, rfl⟩ | ⟨rfl, rfl⟩) <;> simp [h, h.symm]
955+
· grind [subgraphOfAdj_verts, h.fst_mem, h.snd_mem]
956+
· grind [subgraphOfAdj_adj, h.symm]
957+
958+
@[simp]
959+
theorem subgraphOfAdj_le_iff {u v : V} (h : G.Adj u v) (H : G.Subgraph) :
960+
G.subgraphOfAdj h ≤ H ↔ H.Adj u v :=
961+
fun hle ↦ hle.right <| subgraphOfAdj_adj_self h, subgraphOfAdj_le_of_adj H⟩
956962

957963
theorem subgraphOfAdj_symm {v w : V} (hvw : G.Adj v w) :
958964
G.subgraphOfAdj hvw.symm = G.subgraphOfAdj hvw := by

0 commit comments

Comments
 (0)