MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  nbgraf1olem1 Structured version   Visualization version   GIF version

Theorem nbgraf1olem1 25970
Description: Lemma 1 for nbgraf1o 25976. For each neighbor of a vertex there is exactly one index for the edge between the vertex and its neighbor. (Contributed by Alexander van der Vekens, 17-Dec-2017.)
Hypotheses
Ref Expression
nbgraf1o.n 𝑁 = (⟨𝑉, 𝐸⟩ Neighbors 𝑈)
nbgraf1o.i 𝐼 = {𝑖 ∈ dom 𝐸𝑈 ∈ (𝐸𝑖)}
nbgraf1o.f 𝐹 = (𝑛𝑁 ↦ (𝑖𝐼 (𝐸𝑖) = {𝑈, 𝑛}))
Assertion
Ref Expression
nbgraf1olem1 (((𝑉 USGrph 𝐸𝑈𝑉) ∧ 𝑀𝑁) → ∃!𝑖𝐼 (𝐸𝑖) = {𝑈, 𝑀})
Distinct variable groups:   𝑖,𝐸,𝑛   𝑈,𝑖,𝑛   𝑖,𝑉,𝑛   𝑖,𝐼,𝑛   𝑛,𝑁   𝑖,𝑀
Allowed substitution hints:   𝐹(𝑖,𝑛)   𝑀(𝑛)   𝑁(𝑖)

Proof of Theorem nbgraf1olem1
Dummy variables 𝑗 𝑥 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 nbgraf1o.n . . . . . 6 𝑁 = (⟨𝑉, 𝐸⟩ Neighbors 𝑈)
21eleq2i 2680 . . . . 5 (𝑀𝑁𝑀 ∈ (⟨𝑉, 𝐸⟩ Neighbors 𝑈))
3 usgrav 25867 . . . . . . 7 (𝑉 USGrph 𝐸 → (𝑉 ∈ V ∧ 𝐸 ∈ V))
43adantr 480 . . . . . 6 ((𝑉 USGrph 𝐸𝑈𝑉) → (𝑉 ∈ V ∧ 𝐸 ∈ V))
5 nbgrael 25955 . . . . . 6 ((𝑉 ∈ V ∧ 𝐸 ∈ V) → (𝑀 ∈ (⟨𝑉, 𝐸⟩ Neighbors 𝑈) ↔ (𝑈𝑉𝑀𝑉 ∧ {𝑈, 𝑀} ∈ ran 𝐸)))
64, 5syl 17 . . . . 5 ((𝑉 USGrph 𝐸𝑈𝑉) → (𝑀 ∈ (⟨𝑉, 𝐸⟩ Neighbors 𝑈) ↔ (𝑈𝑉𝑀𝑉 ∧ {𝑈, 𝑀} ∈ ran 𝐸)))
72, 6syl5bb 271 . . . 4 ((𝑉 USGrph 𝐸𝑈𝑉) → (𝑀𝑁 ↔ (𝑈𝑉𝑀𝑉 ∧ {𝑈, 𝑀} ∈ ran 𝐸)))
8 usgrafun 25878 . . . . . . . . . . . . . . . 16 (𝑉 USGrph 𝐸 → Fun 𝐸)
9 elrnrexdm 6271 . . . . . . . . . . . . . . . 16 (Fun 𝐸 → ({𝑈, 𝑀} ∈ ran 𝐸 → ∃𝑖 ∈ dom 𝐸{𝑈, 𝑀} = (𝐸𝑖)))
108, 9syl 17 . . . . . . . . . . . . . . 15 (𝑉 USGrph 𝐸 → ({𝑈, 𝑀} ∈ ran 𝐸 → ∃𝑖 ∈ dom 𝐸{𝑈, 𝑀} = (𝐸𝑖)))
1110com12 32 . . . . . . . . . . . . . 14 ({𝑈, 𝑀} ∈ ran 𝐸 → (𝑉 USGrph 𝐸 → ∃𝑖 ∈ dom 𝐸{𝑈, 𝑀} = (𝐸𝑖)))
12113ad2ant3 1077 . . . . . . . . . . . . 13 ((𝑈𝑉𝑀𝑉 ∧ {𝑈, 𝑀} ∈ ran 𝐸) → (𝑉 USGrph 𝐸 → ∃𝑖 ∈ dom 𝐸{𝑈, 𝑀} = (𝐸𝑖)))
1312com12 32 . . . . . . . . . . . 12 (𝑉 USGrph 𝐸 → ((𝑈𝑉𝑀𝑉 ∧ {𝑈, 𝑀} ∈ ran 𝐸) → ∃𝑖 ∈ dom 𝐸{𝑈, 𝑀} = (𝐸𝑖)))
1413adantr 480 . . . . . . . . . . 11 ((𝑉 USGrph 𝐸𝑈𝑉) → ((𝑈𝑉𝑀𝑉 ∧ {𝑈, 𝑀} ∈ ran 𝐸) → ∃𝑖 ∈ dom 𝐸{𝑈, 𝑀} = (𝐸𝑖)))
1514imp 444 . . . . . . . . . 10 (((𝑉 USGrph 𝐸𝑈𝑉) ∧ (𝑈𝑉𝑀𝑉 ∧ {𝑈, 𝑀} ∈ ran 𝐸)) → ∃𝑖 ∈ dom 𝐸{𝑈, 𝑀} = (𝐸𝑖))
16 eqcom 2617 . . . . . . . . . . 11 ((𝐸𝑖) = {𝑈, 𝑀} ↔ {𝑈, 𝑀} = (𝐸𝑖))
1716rexbii 3023 . . . . . . . . . 10 (∃𝑖 ∈ dom 𝐸(𝐸𝑖) = {𝑈, 𝑀} ↔ ∃𝑖 ∈ dom 𝐸{𝑈, 𝑀} = (𝐸𝑖))
1815, 17sylibr 223 . . . . . . . . 9 (((𝑉 USGrph 𝐸𝑈𝑉) ∧ (𝑈𝑉𝑀𝑉 ∧ {𝑈, 𝑀} ∈ ran 𝐸)) → ∃𝑖 ∈ dom 𝐸(𝐸𝑖) = {𝑈, 𝑀})
19 prid1g 4239 . . . . . . . . . . . . . 14 (𝑈𝑉𝑈 ∈ {𝑈, 𝑀})
20 eleq2 2677 . . . . . . . . . . . . . 14 ((𝐸𝑖) = {𝑈, 𝑀} → (𝑈 ∈ (𝐸𝑖) ↔ 𝑈 ∈ {𝑈, 𝑀}))
2119, 20syl5ibrcom 236 . . . . . . . . . . . . 13 (𝑈𝑉 → ((𝐸𝑖) = {𝑈, 𝑀} → 𝑈 ∈ (𝐸𝑖)))
2221pm4.71rd 665 . . . . . . . . . . . 12 (𝑈𝑉 → ((𝐸𝑖) = {𝑈, 𝑀} ↔ (𝑈 ∈ (𝐸𝑖) ∧ (𝐸𝑖) = {𝑈, 𝑀})))
2322bicomd 212 . . . . . . . . . . 11 (𝑈𝑉 → ((𝑈 ∈ (𝐸𝑖) ∧ (𝐸𝑖) = {𝑈, 𝑀}) ↔ (𝐸𝑖) = {𝑈, 𝑀}))
2423rexbidv 3034 . . . . . . . . . 10 (𝑈𝑉 → (∃𝑖 ∈ dom 𝐸(𝑈 ∈ (𝐸𝑖) ∧ (𝐸𝑖) = {𝑈, 𝑀}) ↔ ∃𝑖 ∈ dom 𝐸(𝐸𝑖) = {𝑈, 𝑀}))
2524ad2antlr 759 . . . . . . . . 9 (((𝑉 USGrph 𝐸𝑈𝑉) ∧ (𝑈𝑉𝑀𝑉 ∧ {𝑈, 𝑀} ∈ ran 𝐸)) → (∃𝑖 ∈ dom 𝐸(𝑈 ∈ (𝐸𝑖) ∧ (𝐸𝑖) = {𝑈, 𝑀}) ↔ ∃𝑖 ∈ dom 𝐸(𝐸𝑖) = {𝑈, 𝑀}))
2618, 25mpbird 246 . . . . . . . 8 (((𝑉 USGrph 𝐸𝑈𝑉) ∧ (𝑈𝑉𝑀𝑉 ∧ {𝑈, 𝑀} ∈ ran 𝐸)) → ∃𝑖 ∈ dom 𝐸(𝑈 ∈ (𝐸𝑖) ∧ (𝐸𝑖) = {𝑈, 𝑀}))
27 fveq2 6103 . . . . . . . . . 10 (𝑥 = 𝑖 → (𝐸𝑥) = (𝐸𝑖))
2827eleq2d 2673 . . . . . . . . 9 (𝑥 = 𝑖 → (𝑈 ∈ (𝐸𝑥) ↔ 𝑈 ∈ (𝐸𝑖)))
2928rexrab 3337 . . . . . . . 8 (∃𝑖 ∈ {𝑥 ∈ dom 𝐸𝑈 ∈ (𝐸𝑥)} (𝐸𝑖) = {𝑈, 𝑀} ↔ ∃𝑖 ∈ dom 𝐸(𝑈 ∈ (𝐸𝑖) ∧ (𝐸𝑖) = {𝑈, 𝑀}))
3026, 29sylibr 223 . . . . . . 7 (((𝑉 USGrph 𝐸𝑈𝑉) ∧ (𝑈𝑉𝑀𝑉 ∧ {𝑈, 𝑀} ∈ ran 𝐸)) → ∃𝑖 ∈ {𝑥 ∈ dom 𝐸𝑈 ∈ (𝐸𝑥)} (𝐸𝑖) = {𝑈, 𝑀})
31 nbgraf1o.i . . . . . . . . 9 𝐼 = {𝑖 ∈ dom 𝐸𝑈 ∈ (𝐸𝑖)}
32 fveq2 6103 . . . . . . . . . . 11 (𝑖 = 𝑥 → (𝐸𝑖) = (𝐸𝑥))
3332eleq2d 2673 . . . . . . . . . 10 (𝑖 = 𝑥 → (𝑈 ∈ (𝐸𝑖) ↔ 𝑈 ∈ (𝐸𝑥)))
3433cbvrabv 3172 . . . . . . . . 9 {𝑖 ∈ dom 𝐸𝑈 ∈ (𝐸𝑖)} = {𝑥 ∈ dom 𝐸𝑈 ∈ (𝐸𝑥)}
3531, 34eqtri 2632 . . . . . . . 8 𝐼 = {𝑥 ∈ dom 𝐸𝑈 ∈ (𝐸𝑥)}
3635rexeqi 3120 . . . . . . 7 (∃𝑖𝐼 (𝐸𝑖) = {𝑈, 𝑀} ↔ ∃𝑖 ∈ {𝑥 ∈ dom 𝐸𝑈 ∈ (𝐸𝑥)} (𝐸𝑖) = {𝑈, 𝑀})
3730, 36sylibr 223 . . . . . 6 (((𝑉 USGrph 𝐸𝑈𝑉) ∧ (𝑈𝑉𝑀𝑉 ∧ {𝑈, 𝑀} ∈ ran 𝐸)) → ∃𝑖𝐼 (𝐸𝑖) = {𝑈, 𝑀})
38 usgraf1o 25887 . . . . . . . . 9 (𝑉 USGrph 𝐸𝐸:dom 𝐸1-1-onto→ran 𝐸)
39 dff1o6 6431 . . . . . . . . . 10 (𝐸:dom 𝐸1-1-onto→ran 𝐸 ↔ (𝐸 Fn dom 𝐸 ∧ ran 𝐸 = ran 𝐸 ∧ ∀𝑖 ∈ dom 𝐸𝑗 ∈ dom 𝐸((𝐸𝑖) = (𝐸𝑗) → 𝑖 = 𝑗)))
40 ssrab2 3650 . . . . . . . . . . . . . 14 {𝑖 ∈ dom 𝐸𝑈 ∈ (𝐸𝑖)} ⊆ dom 𝐸
4131, 40eqsstri 3598 . . . . . . . . . . . . 13 𝐼 ⊆ dom 𝐸
42 ssralv 3629 . . . . . . . . . . . . 13 (𝐼 ⊆ dom 𝐸 → (∀𝑖 ∈ dom 𝐸𝑗 ∈ dom 𝐸((𝐸𝑖) = (𝐸𝑗) → 𝑖 = 𝑗) → ∀𝑖𝐼𝑗 ∈ dom 𝐸((𝐸𝑖) = (𝐸𝑗) → 𝑖 = 𝑗)))
4341, 42ax-mp 5 . . . . . . . . . . . 12 (∀𝑖 ∈ dom 𝐸𝑗 ∈ dom 𝐸((𝐸𝑖) = (𝐸𝑗) → 𝑖 = 𝑗) → ∀𝑖𝐼𝑗 ∈ dom 𝐸((𝐸𝑖) = (𝐸𝑗) → 𝑖 = 𝑗))
44 ssralv 3629 . . . . . . . . . . . . . 14 (𝐼 ⊆ dom 𝐸 → (∀𝑗 ∈ dom 𝐸((𝐸𝑖) = (𝐸𝑗) → 𝑖 = 𝑗) → ∀𝑗𝐼 ((𝐸𝑖) = (𝐸𝑗) → 𝑖 = 𝑗)))
4541, 44ax-mp 5 . . . . . . . . . . . . 13 (∀𝑗 ∈ dom 𝐸((𝐸𝑖) = (𝐸𝑗) → 𝑖 = 𝑗) → ∀𝑗𝐼 ((𝐸𝑖) = (𝐸𝑗) → 𝑖 = 𝑗))
4645ralimi 2936 . . . . . . . . . . . 12 (∀𝑖𝐼𝑗 ∈ dom 𝐸((𝐸𝑖) = (𝐸𝑗) → 𝑖 = 𝑗) → ∀𝑖𝐼𝑗𝐼 ((𝐸𝑖) = (𝐸𝑗) → 𝑖 = 𝑗))
47 eqtr3 2631 . . . . . . . . . . . . . . 15 (((𝐸𝑖) = {𝑈, 𝑀} ∧ (𝐸𝑗) = {𝑈, 𝑀}) → (𝐸𝑖) = (𝐸𝑗))
4847imim1i 61 . . . . . . . . . . . . . 14 (((𝐸𝑖) = (𝐸𝑗) → 𝑖 = 𝑗) → (((𝐸𝑖) = {𝑈, 𝑀} ∧ (𝐸𝑗) = {𝑈, 𝑀}) → 𝑖 = 𝑗))
4948ralimi 2936 . . . . . . . . . . . . 13 (∀𝑗𝐼 ((𝐸𝑖) = (𝐸𝑗) → 𝑖 = 𝑗) → ∀𝑗𝐼 (((𝐸𝑖) = {𝑈, 𝑀} ∧ (𝐸𝑗) = {𝑈, 𝑀}) → 𝑖 = 𝑗))
5049ralimi 2936 . . . . . . . . . . . 12 (∀𝑖𝐼𝑗𝐼 ((𝐸𝑖) = (𝐸𝑗) → 𝑖 = 𝑗) → ∀𝑖𝐼𝑗𝐼 (((𝐸𝑖) = {𝑈, 𝑀} ∧ (𝐸𝑗) = {𝑈, 𝑀}) → 𝑖 = 𝑗))
5143, 46, 503syl 18 . . . . . . . . . . 11 (∀𝑖 ∈ dom 𝐸𝑗 ∈ dom 𝐸((𝐸𝑖) = (𝐸𝑗) → 𝑖 = 𝑗) → ∀𝑖𝐼𝑗𝐼 (((𝐸𝑖) = {𝑈, 𝑀} ∧ (𝐸𝑗) = {𝑈, 𝑀}) → 𝑖 = 𝑗))
52513ad2ant3 1077 . . . . . . . . . 10 ((𝐸 Fn dom 𝐸 ∧ ran 𝐸 = ran 𝐸 ∧ ∀𝑖 ∈ dom 𝐸𝑗 ∈ dom 𝐸((𝐸𝑖) = (𝐸𝑗) → 𝑖 = 𝑗)) → ∀𝑖𝐼𝑗𝐼 (((𝐸𝑖) = {𝑈, 𝑀} ∧ (𝐸𝑗) = {𝑈, 𝑀}) → 𝑖 = 𝑗))
5339, 52sylbi 206 . . . . . . . . 9 (𝐸:dom 𝐸1-1-onto→ran 𝐸 → ∀𝑖𝐼𝑗𝐼 (((𝐸𝑖) = {𝑈, 𝑀} ∧ (𝐸𝑗) = {𝑈, 𝑀}) → 𝑖 = 𝑗))
5438, 53syl 17 . . . . . . . 8 (𝑉 USGrph 𝐸 → ∀𝑖𝐼𝑗𝐼 (((𝐸𝑖) = {𝑈, 𝑀} ∧ (𝐸𝑗) = {𝑈, 𝑀}) → 𝑖 = 𝑗))
5554adantr 480 . . . . . . 7 ((𝑉 USGrph 𝐸𝑈𝑉) → ∀𝑖𝐼𝑗𝐼 (((𝐸𝑖) = {𝑈, 𝑀} ∧ (𝐸𝑗) = {𝑈, 𝑀}) → 𝑖 = 𝑗))
5655adantr 480 . . . . . 6 (((𝑉 USGrph 𝐸𝑈𝑉) ∧ (𝑈𝑉𝑀𝑉 ∧ {𝑈, 𝑀} ∈ ran 𝐸)) → ∀𝑖𝐼𝑗𝐼 (((𝐸𝑖) = {𝑈, 𝑀} ∧ (𝐸𝑗) = {𝑈, 𝑀}) → 𝑖 = 𝑗))
5737, 56jca 553 . . . . 5 (((𝑉 USGrph 𝐸𝑈𝑉) ∧ (𝑈𝑉𝑀𝑉 ∧ {𝑈, 𝑀} ∈ ran 𝐸)) → (∃𝑖𝐼 (𝐸𝑖) = {𝑈, 𝑀} ∧ ∀𝑖𝐼𝑗𝐼 (((𝐸𝑖) = {𝑈, 𝑀} ∧ (𝐸𝑗) = {𝑈, 𝑀}) → 𝑖 = 𝑗)))
5857ex 449 . . . 4 ((𝑉 USGrph 𝐸𝑈𝑉) → ((𝑈𝑉𝑀𝑉 ∧ {𝑈, 𝑀} ∈ ran 𝐸) → (∃𝑖𝐼 (𝐸𝑖) = {𝑈, 𝑀} ∧ ∀𝑖𝐼𝑗𝐼 (((𝐸𝑖) = {𝑈, 𝑀} ∧ (𝐸𝑗) = {𝑈, 𝑀}) → 𝑖 = 𝑗))))
597, 58sylbid 229 . . 3 ((𝑉 USGrph 𝐸𝑈𝑉) → (𝑀𝑁 → (∃𝑖𝐼 (𝐸𝑖) = {𝑈, 𝑀} ∧ ∀𝑖𝐼𝑗𝐼 (((𝐸𝑖) = {𝑈, 𝑀} ∧ (𝐸𝑗) = {𝑈, 𝑀}) → 𝑖 = 𝑗))))
6059imp 444 . 2 (((𝑉 USGrph 𝐸𝑈𝑉) ∧ 𝑀𝑁) → (∃𝑖𝐼 (𝐸𝑖) = {𝑈, 𝑀} ∧ ∀𝑖𝐼𝑗𝐼 (((𝐸𝑖) = {𝑈, 𝑀} ∧ (𝐸𝑗) = {𝑈, 𝑀}) → 𝑖 = 𝑗)))
61 fveq2 6103 . . . 4 (𝑖 = 𝑗 → (𝐸𝑖) = (𝐸𝑗))
6261eqeq1d 2612 . . 3 (𝑖 = 𝑗 → ((𝐸𝑖) = {𝑈, 𝑀} ↔ (𝐸𝑗) = {𝑈, 𝑀}))
6362reu4 3367 . 2 (∃!𝑖𝐼 (𝐸𝑖) = {𝑈, 𝑀} ↔ (∃𝑖𝐼 (𝐸𝑖) = {𝑈, 𝑀} ∧ ∀𝑖𝐼𝑗𝐼 (((𝐸𝑖) = {𝑈, 𝑀} ∧ (𝐸𝑗) = {𝑈, 𝑀}) → 𝑖 = 𝑗)))
6460, 63sylibr 223 1 (((𝑉 USGrph 𝐸𝑈𝑉) ∧ 𝑀𝑁) → ∃!𝑖𝐼 (𝐸𝑖) = {𝑈, 𝑀})
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 195  wa 383  w3a 1031   = wceq 1475  wcel 1977  wral 2896  wrex 2897  ∃!wreu 2898  {crab 2900  Vcvv 3173  wss 3540  {cpr 4127  cop 4131   class class class wbr 4583  cmpt 4643  dom cdm 5038  ran crn 5039  Fun wfun 5798   Fn wfn 5799  1-1-ontowf1o 5803  cfv 5804  crio 6510  (class class class)co 6549   USGrph cusg 25859   Neighbors cnbgra 25946
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1713  ax-4 1728  ax-5 1827  ax-6 1875  ax-7 1922  ax-8 1979  ax-9 1986  ax-10 2006  ax-11 2021  ax-12 2034  ax-13 2234  ax-ext 2590  ax-sep 4709  ax-nul 4717  ax-pow 4769  ax-pr 4833  ax-un 6847  ax-cnex 9871  ax-resscn 9872  ax-1cn 9873  ax-icn 9874  ax-addcl 9875  ax-addrcl 9876  ax-mulcl 9877  ax-mulrcl 9878  ax-mulcom 9879  ax-addass 9880  ax-mulass 9881  ax-distr 9882  ax-i2m1 9883  ax-1ne0 9884  ax-1rid 9885  ax-rnegex 9886  ax-rrecex 9887  ax-cnre 9888  ax-pre-lttri 9889  ax-pre-lttrn 9890  ax-pre-ltadd 9891  ax-pre-mulgt0 9892
This theorem depends on definitions:  df-bi 196  df-or 384  df-an 385  df-3or 1032  df-3an 1033  df-tru 1478  df-ex 1696  df-nf 1701  df-sb 1868  df-eu 2462  df-mo 2463  df-clab 2597  df-cleq 2603  df-clel 2606  df-nfc 2740  df-ne 2782  df-nel 2783  df-ral 2901  df-rex 2902  df-reu 2903  df-rmo 2904  df-rab 2905  df-v 3175  df-sbc 3403  df-csb 3500  df-dif 3543  df-un 3545  df-in 3547  df-ss 3554  df-pss 3556  df-nul 3875  df-if 4037  df-pw 4110  df-sn 4126  df-pr 4128  df-tp 4130  df-op 4132  df-uni 4373  df-int 4411  df-iun 4457  df-br 4584  df-opab 4644  df-mpt 4645  df-tr 4681  df-eprel 4949  df-id 4953  df-po 4959  df-so 4960  df-fr 4997  df-we 4999  df-xp 5044  df-rel 5045  df-cnv 5046  df-co 5047  df-dm 5048  df-rn 5049  df-res 5050  df-ima 5051  df-pred 5597  df-ord 5643  df-on 5644  df-lim 5645  df-suc 5646  df-iota 5768  df-fun 5806  df-fn 5807  df-f 5808  df-f1 5809  df-fo 5810  df-f1o 5811  df-fv 5812  df-riota 6511  df-ov 6552  df-oprab 6553  df-mpt2 6554  df-om 6958  df-1st 7059  df-2nd 7060  df-wrecs 7294  df-recs 7355  df-rdg 7393  df-1o 7447  df-er 7629  df-en 7842  df-dom 7843  df-sdom 7844  df-fin 7845  df-card 8648  df-pnf 9955  df-mnf 9956  df-xr 9957  df-ltxr 9958  df-le 9959  df-sub 10147  df-neg 10148  df-nn 10898  df-2 10956  df-n0 11170  df-z 11255  df-uz 11564  df-fz 12198  df-hash 12980  df-usgra 25862  df-nbgra 25949
This theorem is referenced by:  nbgraf1olem2  25971  nbgraf1olem3  25972
  Copyright terms: Public domain W3C validator