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

Theorem frgr2wwlk1 28114
Description: In a friendship graph, there is exactly one walk of length 2 between two different vertices. (Contributed by Alexander van der Vekens, 19-Feb-2018.) (Revised by AV, 13-May-2021.) (Proof shortened by AV, 16-Mar-2022.)
Hypothesis
Ref Expression
frgr2wwlkeu.v 𝑉 = (Vtx‘𝐺)
Assertion
Ref Expression
frgr2wwlk1 ((𝐺 ∈ FriendGraph ∧ (𝐴𝑉𝐵𝑉) ∧ 𝐴𝐵) → (♯‘(𝐴(2 WWalksNOn 𝐺)𝐵)) = 1)

Proof of Theorem frgr2wwlk1
Dummy variables 𝑐 𝑑 𝑡 𝑤 𝑥 𝑦 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 frgr2wwlkeu.v . . . 4 𝑉 = (Vtx‘𝐺)
21frgr2wwlkn0 28113 . . 3 ((𝐺 ∈ FriendGraph ∧ (𝐴𝑉𝐵𝑉) ∧ 𝐴𝐵) → (𝐴(2 WWalksNOn 𝐺)𝐵) ≠ ∅)
31elwwlks2ons3 27741 . . . . . 6 (𝑤 ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ↔ ∃𝑑𝑉 (𝑤 = ⟨“𝐴𝑑𝐵”⟩ ∧ ⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)))
41elwwlks2ons3 27741 . . . . . 6 (𝑡 ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ↔ ∃𝑐𝑉 (𝑡 = ⟨“𝐴𝑐𝐵”⟩ ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)))
53, 4anbi12i 629 . . . . 5 ((𝑤 ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ 𝑡 ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) ↔ (∃𝑑𝑉 (𝑤 = ⟨“𝐴𝑑𝐵”⟩ ∧ ⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) ∧ ∃𝑐𝑉 (𝑡 = ⟨“𝐴𝑐𝐵”⟩ ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵))))
61frgr2wwlkeu 28112 . . . . . 6 ((𝐺 ∈ FriendGraph ∧ (𝐴𝑉𝐵𝑉) ∧ 𝐴𝐵) → ∃!𝑥𝑉 ⟨“𝐴𝑥𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵))
7 s3eq2 14223 . . . . . . . . . . . . . 14 (𝑥 = 𝑦 → ⟨“𝐴𝑥𝐵”⟩ = ⟨“𝐴𝑦𝐵”⟩)
87eleq1d 2874 . . . . . . . . . . . . 13 (𝑥 = 𝑦 → (⟨“𝐴𝑥𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ↔ ⟨“𝐴𝑦𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)))
98reu4 3670 . . . . . . . . . . . 12 (∃!𝑥𝑉 ⟨“𝐴𝑥𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ↔ (∃𝑥𝑉 ⟨“𝐴𝑥𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ∀𝑥𝑉𝑦𝑉 ((⟨“𝐴𝑥𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑦𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑥 = 𝑦)))
10 s3eq2 14223 . . . . . . . . . . . . . . . . . 18 (𝑥 = 𝑑 → ⟨“𝐴𝑥𝐵”⟩ = ⟨“𝐴𝑑𝐵”⟩)
1110eleq1d 2874 . . . . . . . . . . . . . . . . 17 (𝑥 = 𝑑 → (⟨“𝐴𝑥𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ↔ ⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)))
1211anbi1d 632 . . . . . . . . . . . . . . . 16 (𝑥 = 𝑑 → ((⟨“𝐴𝑥𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑦𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) ↔ (⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑦𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵))))
13 equequ1 2032 . . . . . . . . . . . . . . . 16 (𝑥 = 𝑑 → (𝑥 = 𝑦𝑑 = 𝑦))
1412, 13imbi12d 348 . . . . . . . . . . . . . . 15 (𝑥 = 𝑑 → (((⟨“𝐴𝑥𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑦𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑥 = 𝑦) ↔ ((⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑦𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑑 = 𝑦)))
15 s3eq2 14223 . . . . . . . . . . . . . . . . . 18 (𝑦 = 𝑐 → ⟨“𝐴𝑦𝐵”⟩ = ⟨“𝐴𝑐𝐵”⟩)
1615eleq1d 2874 . . . . . . . . . . . . . . . . 17 (𝑦 = 𝑐 → (⟨“𝐴𝑦𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ↔ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)))
1716anbi2d 631 . . . . . . . . . . . . . . . 16 (𝑦 = 𝑐 → ((⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑦𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) ↔ (⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵))))
18 equequ2 2033 . . . . . . . . . . . . . . . 16 (𝑦 = 𝑐 → (𝑑 = 𝑦𝑑 = 𝑐))
1917, 18imbi12d 348 . . . . . . . . . . . . . . 15 (𝑦 = 𝑐 → (((⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑦𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑑 = 𝑦) ↔ ((⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑑 = 𝑐)))
2014, 19rspc2va 3582 . . . . . . . . . . . . . 14 (((𝑑𝑉𝑐𝑉) ∧ ∀𝑥𝑉𝑦𝑉 ((⟨“𝐴𝑥𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑦𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑥 = 𝑦)) → ((⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑑 = 𝑐))
21 pm3.35 802 . . . . . . . . . . . . . . . . . . . . . . 23 (((⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) ∧ ((⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑑 = 𝑐)) → 𝑑 = 𝑐)
22 s3eq2 14223 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 (𝑐 = 𝑑 → ⟨“𝐴𝑐𝐵”⟩ = ⟨“𝐴𝑑𝐵”⟩)
2322equcoms 2027 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 (𝑑 = 𝑐 → ⟨“𝐴𝑐𝐵”⟩ = ⟨“𝐴𝑑𝐵”⟩)
2423adantr 484 . . . . . . . . . . . . . . . . . . . . . . . . . 26 ((𝑑 = 𝑐 ∧ (𝑡 = ⟨“𝐴𝑐𝐵”⟩ ∧ 𝑤 = ⟨“𝐴𝑑𝐵”⟩)) → ⟨“𝐴𝑐𝐵”⟩ = ⟨“𝐴𝑑𝐵”⟩)
25 eqeq12 2812 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 ((𝑡 = ⟨“𝐴𝑐𝐵”⟩ ∧ 𝑤 = ⟨“𝐴𝑑𝐵”⟩) → (𝑡 = 𝑤 ↔ ⟨“𝐴𝑐𝐵”⟩ = ⟨“𝐴𝑑𝐵”⟩))
2625adantl 485 . . . . . . . . . . . . . . . . . . . . . . . . . 26 ((𝑑 = 𝑐 ∧ (𝑡 = ⟨“𝐴𝑐𝐵”⟩ ∧ 𝑤 = ⟨“𝐴𝑑𝐵”⟩)) → (𝑡 = 𝑤 ↔ ⟨“𝐴𝑐𝐵”⟩ = ⟨“𝐴𝑑𝐵”⟩))
2724, 26mpbird 260 . . . . . . . . . . . . . . . . . . . . . . . . 25 ((𝑑 = 𝑐 ∧ (𝑡 = ⟨“𝐴𝑐𝐵”⟩ ∧ 𝑤 = ⟨“𝐴𝑑𝐵”⟩)) → 𝑡 = 𝑤)
2827equcomd 2026 . . . . . . . . . . . . . . . . . . . . . . . 24 ((𝑑 = 𝑐 ∧ (𝑡 = ⟨“𝐴𝑐𝐵”⟩ ∧ 𝑤 = ⟨“𝐴𝑑𝐵”⟩)) → 𝑤 = 𝑡)
2928ex 416 . . . . . . . . . . . . . . . . . . . . . . 23 (𝑑 = 𝑐 → ((𝑡 = ⟨“𝐴𝑐𝐵”⟩ ∧ 𝑤 = ⟨“𝐴𝑑𝐵”⟩) → 𝑤 = 𝑡))
3021, 29syl 17 . . . . . . . . . . . . . . . . . . . . . 22 (((⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) ∧ ((⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑑 = 𝑐)) → ((𝑡 = ⟨“𝐴𝑐𝐵”⟩ ∧ 𝑤 = ⟨“𝐴𝑑𝐵”⟩) → 𝑤 = 𝑡))
3130ex 416 . . . . . . . . . . . . . . . . . . . . 21 ((⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → (((⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑑 = 𝑐) → ((𝑡 = ⟨“𝐴𝑐𝐵”⟩ ∧ 𝑤 = ⟨“𝐴𝑑𝐵”⟩) → 𝑤 = 𝑡)))
3231com23 86 . . . . . . . . . . . . . . . . . . . 20 ((⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → ((𝑡 = ⟨“𝐴𝑐𝐵”⟩ ∧ 𝑤 = ⟨“𝐴𝑑𝐵”⟩) → (((⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑑 = 𝑐) → 𝑤 = 𝑡)))
3332exp4b 434 . . . . . . . . . . . . . . . . . . 19 (⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) → (⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) → (𝑡 = ⟨“𝐴𝑐𝐵”⟩ → (𝑤 = ⟨“𝐴𝑑𝐵”⟩ → (((⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑑 = 𝑐) → 𝑤 = 𝑡)))))
3433com13 88 . . . . . . . . . . . . . . . . . 18 (𝑡 = ⟨“𝐴𝑐𝐵”⟩ → (⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) → (⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) → (𝑤 = ⟨“𝐴𝑑𝐵”⟩ → (((⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑑 = 𝑐) → 𝑤 = 𝑡)))))
3534imp 410 . . . . . . . . . . . . . . . . 17 ((𝑡 = ⟨“𝐴𝑐𝐵”⟩ ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → (⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) → (𝑤 = ⟨“𝐴𝑑𝐵”⟩ → (((⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑑 = 𝑐) → 𝑤 = 𝑡))))
3635com13 88 . . . . . . . . . . . . . . . 16 (𝑤 = ⟨“𝐴𝑑𝐵”⟩ → (⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) → ((𝑡 = ⟨“𝐴𝑐𝐵”⟩ ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → (((⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑑 = 𝑐) → 𝑤 = 𝑡))))
3736imp 410 . . . . . . . . . . . . . . 15 ((𝑤 = ⟨“𝐴𝑑𝐵”⟩ ∧ ⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → ((𝑡 = ⟨“𝐴𝑐𝐵”⟩ ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → (((⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑑 = 𝑐) → 𝑤 = 𝑡)))
3837com13 88 . . . . . . . . . . . . . 14 (((⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑑 = 𝑐) → ((𝑡 = ⟨“𝐴𝑐𝐵”⟩ ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → ((𝑤 = ⟨“𝐴𝑑𝐵”⟩ ∧ ⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑤 = 𝑡)))
3920, 38syl 17 . . . . . . . . . . . . 13 (((𝑑𝑉𝑐𝑉) ∧ ∀𝑥𝑉𝑦𝑉 ((⟨“𝐴𝑥𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑦𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑥 = 𝑦)) → ((𝑡 = ⟨“𝐴𝑐𝐵”⟩ ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → ((𝑤 = ⟨“𝐴𝑑𝐵”⟩ ∧ ⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑤 = 𝑡)))
4039expcom 417 . . . . . . . . . . . 12 (∀𝑥𝑉𝑦𝑉 ((⟨“𝐴𝑥𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑦𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑥 = 𝑦) → ((𝑑𝑉𝑐𝑉) → ((𝑡 = ⟨“𝐴𝑐𝐵”⟩ ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → ((𝑤 = ⟨“𝐴𝑑𝐵”⟩ ∧ ⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑤 = 𝑡))))
419, 40simplbiim 508 . . . . . . . . . . 11 (∃!𝑥𝑉 ⟨“𝐴𝑥𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) → ((𝑑𝑉𝑐𝑉) → ((𝑡 = ⟨“𝐴𝑐𝐵”⟩ ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → ((𝑤 = ⟨“𝐴𝑑𝐵”⟩ ∧ ⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑤 = 𝑡))))
4241impl 459 . . . . . . . . . 10 (((∃!𝑥𝑉 ⟨“𝐴𝑥𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ 𝑑𝑉) ∧ 𝑐𝑉) → ((𝑡 = ⟨“𝐴𝑐𝐵”⟩ ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → ((𝑤 = ⟨“𝐴𝑑𝐵”⟩ ∧ ⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑤 = 𝑡)))
4342rexlimdva 3243 . . . . . . . . 9 ((∃!𝑥𝑉 ⟨“𝐴𝑥𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ 𝑑𝑉) → (∃𝑐𝑉 (𝑡 = ⟨“𝐴𝑐𝐵”⟩ ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → ((𝑤 = ⟨“𝐴𝑑𝐵”⟩ ∧ ⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑤 = 𝑡)))
4443com23 86 . . . . . . . 8 ((∃!𝑥𝑉 ⟨“𝐴𝑥𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ 𝑑𝑉) → ((𝑤 = ⟨“𝐴𝑑𝐵”⟩ ∧ ⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → (∃𝑐𝑉 (𝑡 = ⟨“𝐴𝑐𝐵”⟩ ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑤 = 𝑡)))
4544rexlimdva 3243 . . . . . . 7 (∃!𝑥𝑉 ⟨“𝐴𝑥𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) → (∃𝑑𝑉 (𝑤 = ⟨“𝐴𝑑𝐵”⟩ ∧ ⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → (∃𝑐𝑉 (𝑡 = ⟨“𝐴𝑐𝐵”⟩ ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑤 = 𝑡)))
4645impd 414 . . . . . 6 (∃!𝑥𝑉 ⟨“𝐴𝑥𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) → ((∃𝑑𝑉 (𝑤 = ⟨“𝐴𝑑𝐵”⟩ ∧ ⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) ∧ ∃𝑐𝑉 (𝑡 = ⟨“𝐴𝑐𝐵”⟩ ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵))) → 𝑤 = 𝑡))
476, 46syl 17 . . . . 5 ((𝐺 ∈ FriendGraph ∧ (𝐴𝑉𝐵𝑉) ∧ 𝐴𝐵) → ((∃𝑑𝑉 (𝑤 = ⟨“𝐴𝑑𝐵”⟩ ∧ ⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) ∧ ∃𝑐𝑉 (𝑡 = ⟨“𝐴𝑐𝐵”⟩ ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵))) → 𝑤 = 𝑡))
485, 47syl5bi 245 . . . 4 ((𝐺 ∈ FriendGraph ∧ (𝐴𝑉𝐵𝑉) ∧ 𝐴𝐵) → ((𝑤 ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ 𝑡 ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑤 = 𝑡))
4948alrimivv 1929 . . 3 ((𝐺 ∈ FriendGraph ∧ (𝐴𝑉𝐵𝑉) ∧ 𝐴𝐵) → ∀𝑤𝑡((𝑤 ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ 𝑡 ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑤 = 𝑡))
50 eqeuel 4276 . . 3 (((𝐴(2 WWalksNOn 𝐺)𝐵) ≠ ∅ ∧ ∀𝑤𝑡((𝑤 ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ 𝑡 ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑤 = 𝑡)) → ∃!𝑤 𝑤 ∈ (𝐴(2 WWalksNOn 𝐺)𝐵))
512, 49, 50syl2anc 587 . 2 ((𝐺 ∈ FriendGraph ∧ (𝐴𝑉𝐵𝑉) ∧ 𝐴𝐵) → ∃!𝑤 𝑤 ∈ (𝐴(2 WWalksNOn 𝐺)𝐵))
52 ovex 7168 . . 3 (𝐴(2 WWalksNOn 𝐺)𝐵) ∈ V
53 euhash1 13777 . . 3 ((𝐴(2 WWalksNOn 𝐺)𝐵) ∈ V → ((♯‘(𝐴(2 WWalksNOn 𝐺)𝐵)) = 1 ↔ ∃!𝑤 𝑤 ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)))
5452, 53mp1i 13 . 2 ((𝐺 ∈ FriendGraph ∧ (𝐴𝑉𝐵𝑉) ∧ 𝐴𝐵) → ((♯‘(𝐴(2 WWalksNOn 𝐺)𝐵)) = 1 ↔ ∃!𝑤 𝑤 ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)))
5551, 54mpbird 260 1 ((𝐺 ∈ FriendGraph ∧ (𝐴𝑉𝐵𝑉) ∧ 𝐴𝐵) → (♯‘(𝐴(2 WWalksNOn 𝐺)𝐵)) = 1)
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 209  wa 399  w3a 1084  wal 1536   = wceq 1538  wcel 2111  ∃!weu 2628  wne 2987  wral 3106  wrex 3107  ∃!wreu 3108  Vcvv 3441  c0 4243  cfv 6324  (class class class)co 7135  1c1 10527  2c2 11680  chash 13686  ⟨“cs3 14195  Vtxcvtx 26789   WWalksNOn cwwlksnon 27613   FriendGraph cfrgr 28043
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1797  ax-4 1811  ax-5 1911  ax-6 1970  ax-7 2015  ax-8 2113  ax-9 2121  ax-10 2142  ax-11 2158  ax-12 2175  ax-ext 2770  ax-rep 5154  ax-sep 5167  ax-nul 5174  ax-pow 5231  ax-pr 5295  ax-un 7441  ax-ac2 9874  ax-cnex 10582  ax-resscn 10583  ax-1cn 10584  ax-icn 10585  ax-addcl 10586  ax-addrcl 10587  ax-mulcl 10588  ax-mulrcl 10589  ax-mulcom 10590  ax-addass 10591  ax-mulass 10592  ax-distr 10593  ax-i2m1 10594  ax-1ne0 10595  ax-1rid 10596  ax-rnegex 10597  ax-rrecex 10598  ax-cnre 10599  ax-pre-lttri 10600  ax-pre-lttrn 10601  ax-pre-ltadd 10602  ax-pre-mulgt0 10603
This theorem depends on definitions:  df-bi 210  df-an 400  df-or 845  df-ifp 1059  df-3or 1085  df-3an 1086  df-tru 1541  df-fal 1551  df-ex 1782  df-nf 1786  df-sb 2070  df-mo 2598  df-eu 2629  df-clab 2777  df-cleq 2791  df-clel 2870  df-nfc 2938  df-ne 2988  df-nel 3092  df-ral 3111  df-rex 3112  df-reu 3113  df-rmo 3114  df-rab 3115  df-v 3443  df-sbc 3721  df-csb 3829  df-dif 3884  df-un 3886  df-in 3888  df-ss 3898  df-pss 3900  df-nul 4244  df-if 4426  df-pw 4499  df-sn 4526  df-pr 4528  df-tp 4530  df-op 4532  df-uni 4801  df-int 4839  df-iun 4883  df-br 5031  df-opab 5093  df-mpt 5111  df-tr 5137  df-id 5425  df-eprel 5430  df-po 5438  df-so 5439  df-fr 5478  df-se 5479  df-we 5480  df-xp 5525  df-rel 5526  df-cnv 5527  df-co 5528  df-dm 5529  df-rn 5530  df-res 5531  df-ima 5532  df-pred 6116  df-ord 6162  df-on 6163  df-lim 6164  df-suc 6165  df-iota 6283  df-fun 6326  df-fn 6327  df-f 6328  df-f1 6329  df-fo 6330  df-f1o 6331  df-fv 6332  df-isom 6333  df-riota 7093  df-ov 7138  df-oprab 7139  df-mpo 7140  df-om 7561  df-1st 7671  df-2nd 7672  df-wrecs 7930  df-recs 7991  df-rdg 8029  df-1o 8085  df-2o 8086  df-oadd 8089  df-er 8272  df-map 8391  df-pm 8392  df-en 8493  df-dom 8494  df-sdom 8495  df-fin 8496  df-dju 9314  df-card 9352  df-ac 9527  df-pnf 10666  df-mnf 10667  df-xr 10668  df-ltxr 10669  df-le 10670  df-sub 10861  df-neg 10862  df-nn 11626  df-2 11688  df-3 11689  df-n0 11886  df-xnn0 11956  df-z 11970  df-uz 12232  df-fz 12886  df-fzo 13029  df-hash 13687  df-word 13858  df-concat 13914  df-s1 13941  df-s2 14201  df-s3 14202  df-edg 26841  df-uhgr 26851  df-upgr 26875  df-umgr 26876  df-usgr 26944  df-wlks 27389  df-wwlks 27616  df-wwlksn 27617  df-wwlksnon 27618  df-frgr 28044
This theorem is referenced by:  frgr2wsp1  28115
  Copyright terms: Public domain W3C validator