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

Theorem frgr2wwlk1 30308
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 30307 . . 3 ((𝐺 ∈ FriendGraph ∧ (𝐴𝑉𝐵𝑉) ∧ 𝐴𝐵) → (𝐴(2 WWalksNOn 𝐺)𝐵) ≠ ∅)
31elwwlks2ons3 29935 . . . . . 6 (𝑤 ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ↔ ∃𝑑𝑉 (𝑤 = ⟨“𝐴𝑑𝐵”⟩ ∧ ⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)))
41elwwlks2ons3 29935 . . . . . 6 (𝑡 ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ↔ ∃𝑐𝑉 (𝑡 = ⟨“𝐴𝑐𝐵”⟩ ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)))
53, 4anbi12i 628 . . . . 5 ((𝑤 ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ 𝑡 ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) ↔ (∃𝑑𝑉 (𝑤 = ⟨“𝐴𝑑𝐵”⟩ ∧ ⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) ∧ ∃𝑐𝑉 (𝑡 = ⟨“𝐴𝑐𝐵”⟩ ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵))))
61frgr2wwlkeu 30306 . . . . . 6 ((𝐺 ∈ FriendGraph ∧ (𝐴𝑉𝐵𝑉) ∧ 𝐴𝐵) → ∃!𝑥𝑉 ⟨“𝐴𝑥𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵))
7 s3eq2 14812 . . . . . . . . . . . . . 14 (𝑥 = 𝑦 → ⟨“𝐴𝑥𝐵”⟩ = ⟨“𝐴𝑦𝐵”⟩)
87eleq1d 2813 . . . . . . . . . . . . 13 (𝑥 = 𝑦 → (⟨“𝐴𝑥𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ↔ ⟨“𝐴𝑦𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)))
98reu4 3699 . . . . . . . . . . . 12 (∃!𝑥𝑉 ⟨“𝐴𝑥𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ↔ (∃𝑥𝑉 ⟨“𝐴𝑥𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ∀𝑥𝑉𝑦𝑉 ((⟨“𝐴𝑥𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑦𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑥 = 𝑦)))
10 s3eq2 14812 . . . . . . . . . . . . . . . . . 18 (𝑥 = 𝑑 → ⟨“𝐴𝑥𝐵”⟩ = ⟨“𝐴𝑑𝐵”⟩)
1110eleq1d 2813 . . . . . . . . . . . . . . . . 17 (𝑥 = 𝑑 → (⟨“𝐴𝑥𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ↔ ⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)))
1211anbi1d 631 . . . . . . . . . . . . . . . 16 (𝑥 = 𝑑 → ((⟨“𝐴𝑥𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑦𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) ↔ (⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑦𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵))))
13 equequ1 2025 . . . . . . . . . . . . . . . 16 (𝑥 = 𝑑 → (𝑥 = 𝑦𝑑 = 𝑦))
1412, 13imbi12d 344 . . . . . . . . . . . . . . 15 (𝑥 = 𝑑 → (((⟨“𝐴𝑥𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑦𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑥 = 𝑦) ↔ ((⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑦𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑑 = 𝑦)))
15 s3eq2 14812 . . . . . . . . . . . . . . . . . 18 (𝑦 = 𝑐 → ⟨“𝐴𝑦𝐵”⟩ = ⟨“𝐴𝑐𝐵”⟩)
1615eleq1d 2813 . . . . . . . . . . . . . . . . 17 (𝑦 = 𝑐 → (⟨“𝐴𝑦𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ↔ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)))
1716anbi2d 630 . . . . . . . . . . . . . . . 16 (𝑦 = 𝑐 → ((⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑦𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) ↔ (⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵))))
18 equequ2 2026 . . . . . . . . . . . . . . . 16 (𝑦 = 𝑐 → (𝑑 = 𝑦𝑑 = 𝑐))
1917, 18imbi12d 344 . . . . . . . . . . . . . . 15 (𝑦 = 𝑐 → (((⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑦𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑑 = 𝑦) ↔ ((⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑑 = 𝑐)))
2014, 19rspc2va 3597 . . . . . . . . . . . . . 14 (((𝑑𝑉𝑐𝑉) ∧ ∀𝑥𝑉𝑦𝑉 ((⟨“𝐴𝑥𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑦𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑥 = 𝑦)) → ((⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑑 = 𝑐))
21 pm3.35 802 . . . . . . . . . . . . . . . . . . . . . . 23 (((⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) ∧ ((⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑑 = 𝑐)) → 𝑑 = 𝑐)
22 s3eq2 14812 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 (𝑐 = 𝑑 → ⟨“𝐴𝑐𝐵”⟩ = ⟨“𝐴𝑑𝐵”⟩)
2322equcoms 2020 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 (𝑑 = 𝑐 → ⟨“𝐴𝑐𝐵”⟩ = ⟨“𝐴𝑑𝐵”⟩)
2423adantr 480 . . . . . . . . . . . . . . . . . . . . . . . . . 26 ((𝑑 = 𝑐 ∧ (𝑡 = ⟨“𝐴𝑐𝐵”⟩ ∧ 𝑤 = ⟨“𝐴𝑑𝐵”⟩)) → ⟨“𝐴𝑐𝐵”⟩ = ⟨“𝐴𝑑𝐵”⟩)
25 eqeq12 2746 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 ((𝑡 = ⟨“𝐴𝑐𝐵”⟩ ∧ 𝑤 = ⟨“𝐴𝑑𝐵”⟩) → (𝑡 = 𝑤 ↔ ⟨“𝐴𝑐𝐵”⟩ = ⟨“𝐴𝑑𝐵”⟩))
2625adantl 481 . . . . . . . . . . . . . . . . . . . . . . . . . 26 ((𝑑 = 𝑐 ∧ (𝑡 = ⟨“𝐴𝑐𝐵”⟩ ∧ 𝑤 = ⟨“𝐴𝑑𝐵”⟩)) → (𝑡 = 𝑤 ↔ ⟨“𝐴𝑐𝐵”⟩ = ⟨“𝐴𝑑𝐵”⟩))
2724, 26mpbird 257 . . . . . . . . . . . . . . . . . . . . . . . . 25 ((𝑑 = 𝑐 ∧ (𝑡 = ⟨“𝐴𝑐𝐵”⟩ ∧ 𝑤 = ⟨“𝐴𝑑𝐵”⟩)) → 𝑡 = 𝑤)
2827equcomd 2019 . . . . . . . . . . . . . . . . . . . . . . . 24 ((𝑑 = 𝑐 ∧ (𝑡 = ⟨“𝐴𝑐𝐵”⟩ ∧ 𝑤 = ⟨“𝐴𝑑𝐵”⟩)) → 𝑤 = 𝑡)
2928ex 412 . . . . . . . . . . . . . . . . . . . . . . 23 (𝑑 = 𝑐 → ((𝑡 = ⟨“𝐴𝑐𝐵”⟩ ∧ 𝑤 = ⟨“𝐴𝑑𝐵”⟩) → 𝑤 = 𝑡))
3021, 29syl 17 . . . . . . . . . . . . . . . . . . . . . 22 (((⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) ∧ ((⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑑 = 𝑐)) → ((𝑡 = ⟨“𝐴𝑐𝐵”⟩ ∧ 𝑤 = ⟨“𝐴𝑑𝐵”⟩) → 𝑤 = 𝑡))
3130ex 412 . . . . . . . . . . . . . . . . . . . . 21 ((⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → (((⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑑 = 𝑐) → ((𝑡 = ⟨“𝐴𝑐𝐵”⟩ ∧ 𝑤 = ⟨“𝐴𝑑𝐵”⟩) → 𝑤 = 𝑡)))
3231com23 86 . . . . . . . . . . . . . . . . . . . 20 ((⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → ((𝑡 = ⟨“𝐴𝑐𝐵”⟩ ∧ 𝑤 = ⟨“𝐴𝑑𝐵”⟩) → (((⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑑 = 𝑐) → 𝑤 = 𝑡)))
3332exp4b 430 . . . . . . . . . . . . . . . . . . 19 (⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) → (⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) → (𝑡 = ⟨“𝐴𝑐𝐵”⟩ → (𝑤 = ⟨“𝐴𝑑𝐵”⟩ → (((⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑑 = 𝑐) → 𝑤 = 𝑡)))))
3433com13 88 . . . . . . . . . . . . . . . . . 18 (𝑡 = ⟨“𝐴𝑐𝐵”⟩ → (⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) → (⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) → (𝑤 = ⟨“𝐴𝑑𝐵”⟩ → (((⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑑 = 𝑐) → 𝑤 = 𝑡)))))
3534imp 406 . . . . . . . . . . . . . . . . 17 ((𝑡 = ⟨“𝐴𝑐𝐵”⟩ ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → (⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) → (𝑤 = ⟨“𝐴𝑑𝐵”⟩ → (((⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑑 = 𝑐) → 𝑤 = 𝑡))))
3635com13 88 . . . . . . . . . . . . . . . 16 (𝑤 = ⟨“𝐴𝑑𝐵”⟩ → (⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) → ((𝑡 = ⟨“𝐴𝑐𝐵”⟩ ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → (((⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑑 = 𝑐) → 𝑤 = 𝑡))))
3736imp 406 . . . . . . . . . . . . . . 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 413 . . . . . . . . . . . 12 (∀𝑥𝑉𝑦𝑉 ((⟨“𝐴𝑥𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑦𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑥 = 𝑦) → ((𝑑𝑉𝑐𝑉) → ((𝑡 = ⟨“𝐴𝑐𝐵”⟩ ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → ((𝑤 = ⟨“𝐴𝑑𝐵”⟩ ∧ ⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑤 = 𝑡))))
419, 40simplbiim 504 . . . . . . . . . . 11 (∃!𝑥𝑉 ⟨“𝐴𝑥𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) → ((𝑑𝑉𝑐𝑉) → ((𝑡 = ⟨“𝐴𝑐𝐵”⟩ ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → ((𝑤 = ⟨“𝐴𝑑𝐵”⟩ ∧ ⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑤 = 𝑡))))
4241impl 455 . . . . . . . . . 10 (((∃!𝑥𝑉 ⟨“𝐴𝑥𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ 𝑑𝑉) ∧ 𝑐𝑉) → ((𝑡 = ⟨“𝐴𝑐𝐵”⟩ ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → ((𝑤 = ⟨“𝐴𝑑𝐵”⟩ ∧ ⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑤 = 𝑡)))
4342rexlimdva 3134 . . . . . . . . 9 ((∃!𝑥𝑉 ⟨“𝐴𝑥𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ 𝑑𝑉) → (∃𝑐𝑉 (𝑡 = ⟨“𝐴𝑐𝐵”⟩ ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → ((𝑤 = ⟨“𝐴𝑑𝐵”⟩ ∧ ⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑤 = 𝑡)))
4443com23 86 . . . . . . . 8 ((∃!𝑥𝑉 ⟨“𝐴𝑥𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ 𝑑𝑉) → ((𝑤 = ⟨“𝐴𝑑𝐵”⟩ ∧ ⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → (∃𝑐𝑉 (𝑡 = ⟨“𝐴𝑐𝐵”⟩ ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑤 = 𝑡)))
4544rexlimdva 3134 . . . . . . 7 (∃!𝑥𝑉 ⟨“𝐴𝑥𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) → (∃𝑑𝑉 (𝑤 = ⟨“𝐴𝑑𝐵”⟩ ∧ ⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → (∃𝑐𝑉 (𝑡 = ⟨“𝐴𝑐𝐵”⟩ ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑤 = 𝑡)))
4645impd 410 . . . . . 6 (∃!𝑥𝑉 ⟨“𝐴𝑥𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) → ((∃𝑑𝑉 (𝑤 = ⟨“𝐴𝑑𝐵”⟩ ∧ ⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) ∧ ∃𝑐𝑉 (𝑡 = ⟨“𝐴𝑐𝐵”⟩ ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵))) → 𝑤 = 𝑡))
476, 46syl 17 . . . . 5 ((𝐺 ∈ FriendGraph ∧ (𝐴𝑉𝐵𝑉) ∧ 𝐴𝐵) → ((∃𝑑𝑉 (𝑤 = ⟨“𝐴𝑑𝐵”⟩ ∧ ⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) ∧ ∃𝑐𝑉 (𝑡 = ⟨“𝐴𝑐𝐵”⟩ ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵))) → 𝑤 = 𝑡))
485, 47biimtrid 242 . . . 4 ((𝐺 ∈ FriendGraph ∧ (𝐴𝑉𝐵𝑉) ∧ 𝐴𝐵) → ((𝑤 ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ 𝑡 ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑤 = 𝑡))
4948alrimivv 1928 . . 3 ((𝐺 ∈ FriendGraph ∧ (𝐴𝑉𝐵𝑉) ∧ 𝐴𝐵) → ∀𝑤𝑡((𝑤 ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ 𝑡 ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑤 = 𝑡))
50 eqeuel 4324 . . 3 (((𝐴(2 WWalksNOn 𝐺)𝐵) ≠ ∅ ∧ ∀𝑤𝑡((𝑤 ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ 𝑡 ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑤 = 𝑡)) → ∃!𝑤 𝑤 ∈ (𝐴(2 WWalksNOn 𝐺)𝐵))
512, 49, 50syl2anc 584 . 2 ((𝐺 ∈ FriendGraph ∧ (𝐴𝑉𝐵𝑉) ∧ 𝐴𝐵) → ∃!𝑤 𝑤 ∈ (𝐴(2 WWalksNOn 𝐺)𝐵))
52 ovex 7402 . . 3 (𝐴(2 WWalksNOn 𝐺)𝐵) ∈ V
53 euhash1 14361 . . 3 ((𝐴(2 WWalksNOn 𝐺)𝐵) ∈ V → ((♯‘(𝐴(2 WWalksNOn 𝐺)𝐵)) = 1 ↔ ∃!𝑤 𝑤 ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)))
5452, 53mp1i 13 . 2 ((𝐺 ∈ FriendGraph ∧ (𝐴𝑉𝐵𝑉) ∧ 𝐴𝐵) → ((♯‘(𝐴(2 WWalksNOn 𝐺)𝐵)) = 1 ↔ ∃!𝑤 𝑤 ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)))
5551, 54mpbird 257 1 ((𝐺 ∈ FriendGraph ∧ (𝐴𝑉𝐵𝑉) ∧ 𝐴𝐵) → (♯‘(𝐴(2 WWalksNOn 𝐺)𝐵)) = 1)
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 206  wa 395  w3a 1086  wal 1538   = wceq 1540  wcel 2109  ∃!weu 2561  wne 2925  wral 3044  wrex 3053  ∃!wreu 3349  Vcvv 3444  c0 4292  cfv 6499  (class class class)co 7369  1c1 11045  2c2 12217  chash 14271  ⟨“cs3 14784  Vtxcvtx 28976   WWalksNOn cwwlksnon 29807   FriendGraph cfrgr 30237
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1795  ax-4 1809  ax-5 1910  ax-6 1967  ax-7 2008  ax-8 2111  ax-9 2119  ax-10 2142  ax-11 2158  ax-12 2178  ax-ext 2701  ax-rep 5229  ax-sep 5246  ax-nul 5256  ax-pow 5315  ax-pr 5382  ax-un 7691  ax-ac2 10392  ax-cnex 11100  ax-resscn 11101  ax-1cn 11102  ax-icn 11103  ax-addcl 11104  ax-addrcl 11105  ax-mulcl 11106  ax-mulrcl 11107  ax-mulcom 11108  ax-addass 11109  ax-mulass 11110  ax-distr 11111  ax-i2m1 11112  ax-1ne0 11113  ax-1rid 11114  ax-rnegex 11115  ax-rrecex 11116  ax-cnre 11117  ax-pre-lttri 11118  ax-pre-lttrn 11119  ax-pre-ltadd 11120  ax-pre-mulgt0 11121
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 848  df-ifp 1063  df-3or 1087  df-3an 1088  df-tru 1543  df-fal 1553  df-ex 1780  df-nf 1784  df-sb 2066  df-mo 2533  df-eu 2562  df-clab 2708  df-cleq 2721  df-clel 2803  df-nfc 2878  df-ne 2926  df-nel 3030  df-ral 3045  df-rex 3054  df-rmo 3351  df-reu 3352  df-rab 3403  df-v 3446  df-sbc 3751  df-csb 3860  df-dif 3914  df-un 3916  df-in 3918  df-ss 3928  df-pss 3931  df-nul 4293  df-if 4485  df-pw 4561  df-sn 4586  df-pr 4588  df-tp 4590  df-op 4592  df-uni 4868  df-int 4907  df-iun 4953  df-br 5103  df-opab 5165  df-mpt 5184  df-tr 5210  df-id 5526  df-eprel 5531  df-po 5539  df-so 5540  df-fr 5584  df-se 5585  df-we 5586  df-xp 5637  df-rel 5638  df-cnv 5639  df-co 5640  df-dm 5641  df-rn 5642  df-res 5643  df-ima 5644  df-pred 6262  df-ord 6323  df-on 6324  df-lim 6325  df-suc 6326  df-iota 6452  df-fun 6501  df-fn 6502  df-f 6503  df-f1 6504  df-fo 6505  df-f1o 6506  df-fv 6507  df-isom 6508  df-riota 7326  df-ov 7372  df-oprab 7373  df-mpo 7374  df-om 7823  df-1st 7947  df-2nd 7948  df-frecs 8237  df-wrecs 8268  df-recs 8317  df-rdg 8355  df-1o 8411  df-2o 8412  df-oadd 8415  df-er 8648  df-map 8778  df-pm 8779  df-en 8896  df-dom 8897  df-sdom 8898  df-fin 8899  df-dju 9830  df-card 9868  df-ac 10045  df-pnf 11186  df-mnf 11187  df-xr 11188  df-ltxr 11189  df-le 11190  df-sub 11383  df-neg 11384  df-nn 12163  df-2 12225  df-3 12226  df-n0 12419  df-xnn0 12492  df-z 12506  df-uz 12770  df-fz 13445  df-fzo 13592  df-hash 14272  df-word 14455  df-concat 14512  df-s1 14537  df-s2 14790  df-s3 14791  df-edg 29028  df-uhgr 29038  df-upgr 29062  df-umgr 29063  df-usgr 29131  df-wlks 29580  df-wwlks 29810  df-wwlksn 29811  df-wwlksnon 29812  df-frgr 30238
This theorem is referenced by:  frgr2wsp1  30309
  Copyright terms: Public domain W3C validator