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

Theorem frgr2wwlk1 29571
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 29570 . . 3 ((𝐺 ∈ FriendGraph ∧ (𝐴𝑉𝐵𝑉) ∧ 𝐴𝐵) → (𝐴(2 WWalksNOn 𝐺)𝐵) ≠ ∅)
31elwwlks2ons3 29198 . . . . . 6 (𝑤 ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ↔ ∃𝑑𝑉 (𝑤 = ⟨“𝐴𝑑𝐵”⟩ ∧ ⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)))
41elwwlks2ons3 29198 . . . . . 6 (𝑡 ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ↔ ∃𝑐𝑉 (𝑡 = ⟨“𝐴𝑐𝐵”⟩ ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)))
53, 4anbi12i 627 . . . . 5 ((𝑤 ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ 𝑡 ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) ↔ (∃𝑑𝑉 (𝑤 = ⟨“𝐴𝑑𝐵”⟩ ∧ ⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) ∧ ∃𝑐𝑉 (𝑡 = ⟨“𝐴𝑐𝐵”⟩ ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵))))
61frgr2wwlkeu 29569 . . . . . 6 ((𝐺 ∈ FriendGraph ∧ (𝐴𝑉𝐵𝑉) ∧ 𝐴𝐵) → ∃!𝑥𝑉 ⟨“𝐴𝑥𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵))
7 s3eq2 14817 . . . . . . . . . . . . . 14 (𝑥 = 𝑦 → ⟨“𝐴𝑥𝐵”⟩ = ⟨“𝐴𝑦𝐵”⟩)
87eleq1d 2818 . . . . . . . . . . . . 13 (𝑥 = 𝑦 → (⟨“𝐴𝑥𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ↔ ⟨“𝐴𝑦𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)))
98reu4 3726 . . . . . . . . . . . 12 (∃!𝑥𝑉 ⟨“𝐴𝑥𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ↔ (∃𝑥𝑉 ⟨“𝐴𝑥𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ∀𝑥𝑉𝑦𝑉 ((⟨“𝐴𝑥𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑦𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑥 = 𝑦)))
10 s3eq2 14817 . . . . . . . . . . . . . . . . . 18 (𝑥 = 𝑑 → ⟨“𝐴𝑥𝐵”⟩ = ⟨“𝐴𝑑𝐵”⟩)
1110eleq1d 2818 . . . . . . . . . . . . . . . . 17 (𝑥 = 𝑑 → (⟨“𝐴𝑥𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ↔ ⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)))
1211anbi1d 630 . . . . . . . . . . . . . . . 16 (𝑥 = 𝑑 → ((⟨“𝐴𝑥𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑦𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) ↔ (⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑦𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵))))
13 equequ1 2028 . . . . . . . . . . . . . . . 16 (𝑥 = 𝑑 → (𝑥 = 𝑦𝑑 = 𝑦))
1412, 13imbi12d 344 . . . . . . . . . . . . . . 15 (𝑥 = 𝑑 → (((⟨“𝐴𝑥𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑦𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑥 = 𝑦) ↔ ((⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑦𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑑 = 𝑦)))
15 s3eq2 14817 . . . . . . . . . . . . . . . . . 18 (𝑦 = 𝑐 → ⟨“𝐴𝑦𝐵”⟩ = ⟨“𝐴𝑐𝐵”⟩)
1615eleq1d 2818 . . . . . . . . . . . . . . . . 17 (𝑦 = 𝑐 → (⟨“𝐴𝑦𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ↔ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)))
1716anbi2d 629 . . . . . . . . . . . . . . . 16 (𝑦 = 𝑐 → ((⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑦𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) ↔ (⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵))))
18 equequ2 2029 . . . . . . . . . . . . . . . 16 (𝑦 = 𝑐 → (𝑑 = 𝑦𝑑 = 𝑐))
1917, 18imbi12d 344 . . . . . . . . . . . . . . 15 (𝑦 = 𝑐 → (((⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑦𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑑 = 𝑦) ↔ ((⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑑 = 𝑐)))
2014, 19rspc2va 3622 . . . . . . . . . . . . . 14 (((𝑑𝑉𝑐𝑉) ∧ ∀𝑥𝑉𝑦𝑉 ((⟨“𝐴𝑥𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑦𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑥 = 𝑦)) → ((⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑑 = 𝑐))
21 pm3.35 801 . . . . . . . . . . . . . . . . . . . . . . 23 (((⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) ∧ ((⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑑 = 𝑐)) → 𝑑 = 𝑐)
22 s3eq2 14817 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 (𝑐 = 𝑑 → ⟨“𝐴𝑐𝐵”⟩ = ⟨“𝐴𝑑𝐵”⟩)
2322equcoms 2023 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 (𝑑 = 𝑐 → ⟨“𝐴𝑐𝐵”⟩ = ⟨“𝐴𝑑𝐵”⟩)
2423adantr 481 . . . . . . . . . . . . . . . . . . . . . . . . . 26 ((𝑑 = 𝑐 ∧ (𝑡 = ⟨“𝐴𝑐𝐵”⟩ ∧ 𝑤 = ⟨“𝐴𝑑𝐵”⟩)) → ⟨“𝐴𝑐𝐵”⟩ = ⟨“𝐴𝑑𝐵”⟩)
25 eqeq12 2749 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 ((𝑡 = ⟨“𝐴𝑐𝐵”⟩ ∧ 𝑤 = ⟨“𝐴𝑑𝐵”⟩) → (𝑡 = 𝑤 ↔ ⟨“𝐴𝑐𝐵”⟩ = ⟨“𝐴𝑑𝐵”⟩))
2625adantl 482 . . . . . . . . . . . . . . . . . . . . . . . . . 26 ((𝑑 = 𝑐 ∧ (𝑡 = ⟨“𝐴𝑐𝐵”⟩ ∧ 𝑤 = ⟨“𝐴𝑑𝐵”⟩)) → (𝑡 = 𝑤 ↔ ⟨“𝐴𝑐𝐵”⟩ = ⟨“𝐴𝑑𝐵”⟩))
2724, 26mpbird 256 . . . . . . . . . . . . . . . . . . . . . . . . 25 ((𝑑 = 𝑐 ∧ (𝑡 = ⟨“𝐴𝑐𝐵”⟩ ∧ 𝑤 = ⟨“𝐴𝑑𝐵”⟩)) → 𝑡 = 𝑤)
2827equcomd 2022 . . . . . . . . . . . . . . . . . . . . . . . 24 ((𝑑 = 𝑐 ∧ (𝑡 = ⟨“𝐴𝑐𝐵”⟩ ∧ 𝑤 = ⟨“𝐴𝑑𝐵”⟩)) → 𝑤 = 𝑡)
2928ex 413 . . . . . . . . . . . . . . . . . . . . . . 23 (𝑑 = 𝑐 → ((𝑡 = ⟨“𝐴𝑐𝐵”⟩ ∧ 𝑤 = ⟨“𝐴𝑑𝐵”⟩) → 𝑤 = 𝑡))
3021, 29syl 17 . . . . . . . . . . . . . . . . . . . . . 22 (((⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) ∧ ((⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑑 = 𝑐)) → ((𝑡 = ⟨“𝐴𝑐𝐵”⟩ ∧ 𝑤 = ⟨“𝐴𝑑𝐵”⟩) → 𝑤 = 𝑡))
3130ex 413 . . . . . . . . . . . . . . . . . . . . 21 ((⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → (((⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑑 = 𝑐) → ((𝑡 = ⟨“𝐴𝑐𝐵”⟩ ∧ 𝑤 = ⟨“𝐴𝑑𝐵”⟩) → 𝑤 = 𝑡)))
3231com23 86 . . . . . . . . . . . . . . . . . . . 20 ((⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → ((𝑡 = ⟨“𝐴𝑐𝐵”⟩ ∧ 𝑤 = ⟨“𝐴𝑑𝐵”⟩) → (((⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑑 = 𝑐) → 𝑤 = 𝑡)))
3332exp4b 431 . . . . . . . . . . . . . . . . . . 19 (⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) → (⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) → (𝑡 = ⟨“𝐴𝑐𝐵”⟩ → (𝑤 = ⟨“𝐴𝑑𝐵”⟩ → (((⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑑 = 𝑐) → 𝑤 = 𝑡)))))
3433com13 88 . . . . . . . . . . . . . . . . . 18 (𝑡 = ⟨“𝐴𝑐𝐵”⟩ → (⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) → (⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) → (𝑤 = ⟨“𝐴𝑑𝐵”⟩ → (((⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑑 = 𝑐) → 𝑤 = 𝑡)))))
3534imp 407 . . . . . . . . . . . . . . . . 17 ((𝑡 = ⟨“𝐴𝑐𝐵”⟩ ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → (⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) → (𝑤 = ⟨“𝐴𝑑𝐵”⟩ → (((⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑑 = 𝑐) → 𝑤 = 𝑡))))
3635com13 88 . . . . . . . . . . . . . . . 16 (𝑤 = ⟨“𝐴𝑑𝐵”⟩ → (⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) → ((𝑡 = ⟨“𝐴𝑐𝐵”⟩ ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → (((⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑑 = 𝑐) → 𝑤 = 𝑡))))
3736imp 407 . . . . . . . . . . . . . . 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 414 . . . . . . . . . . . 12 (∀𝑥𝑉𝑦𝑉 ((⟨“𝐴𝑥𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ ⟨“𝐴𝑦𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑥 = 𝑦) → ((𝑑𝑉𝑐𝑉) → ((𝑡 = ⟨“𝐴𝑐𝐵”⟩ ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → ((𝑤 = ⟨“𝐴𝑑𝐵”⟩ ∧ ⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑤 = 𝑡))))
419, 40simplbiim 505 . . . . . . . . . . 11 (∃!𝑥𝑉 ⟨“𝐴𝑥𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) → ((𝑑𝑉𝑐𝑉) → ((𝑡 = ⟨“𝐴𝑐𝐵”⟩ ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → ((𝑤 = ⟨“𝐴𝑑𝐵”⟩ ∧ ⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑤 = 𝑡))))
4241impl 456 . . . . . . . . . 10 (((∃!𝑥𝑉 ⟨“𝐴𝑥𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ 𝑑𝑉) ∧ 𝑐𝑉) → ((𝑡 = ⟨“𝐴𝑐𝐵”⟩ ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → ((𝑤 = ⟨“𝐴𝑑𝐵”⟩ ∧ ⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑤 = 𝑡)))
4342rexlimdva 3155 . . . . . . . . 9 ((∃!𝑥𝑉 ⟨“𝐴𝑥𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ 𝑑𝑉) → (∃𝑐𝑉 (𝑡 = ⟨“𝐴𝑐𝐵”⟩ ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → ((𝑤 = ⟨“𝐴𝑑𝐵”⟩ ∧ ⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑤 = 𝑡)))
4443com23 86 . . . . . . . 8 ((∃!𝑥𝑉 ⟨“𝐴𝑥𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ 𝑑𝑉) → ((𝑤 = ⟨“𝐴𝑑𝐵”⟩ ∧ ⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → (∃𝑐𝑉 (𝑡 = ⟨“𝐴𝑐𝐵”⟩ ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑤 = 𝑡)))
4544rexlimdva 3155 . . . . . . 7 (∃!𝑥𝑉 ⟨“𝐴𝑥𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) → (∃𝑑𝑉 (𝑤 = ⟨“𝐴𝑑𝐵”⟩ ∧ ⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → (∃𝑐𝑉 (𝑡 = ⟨“𝐴𝑐𝐵”⟩ ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑤 = 𝑡)))
4645impd 411 . . . . . 6 (∃!𝑥𝑉 ⟨“𝐴𝑥𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) → ((∃𝑑𝑉 (𝑤 = ⟨“𝐴𝑑𝐵”⟩ ∧ ⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) ∧ ∃𝑐𝑉 (𝑡 = ⟨“𝐴𝑐𝐵”⟩ ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵))) → 𝑤 = 𝑡))
476, 46syl 17 . . . . 5 ((𝐺 ∈ FriendGraph ∧ (𝐴𝑉𝐵𝑉) ∧ 𝐴𝐵) → ((∃𝑑𝑉 (𝑤 = ⟨“𝐴𝑑𝐵”⟩ ∧ ⟨“𝐴𝑑𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) ∧ ∃𝑐𝑉 (𝑡 = ⟨“𝐴𝑐𝐵”⟩ ∧ ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵))) → 𝑤 = 𝑡))
485, 47biimtrid 241 . . . 4 ((𝐺 ∈ FriendGraph ∧ (𝐴𝑉𝐵𝑉) ∧ 𝐴𝐵) → ((𝑤 ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ 𝑡 ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑤 = 𝑡))
4948alrimivv 1931 . . 3 ((𝐺 ∈ FriendGraph ∧ (𝐴𝑉𝐵𝑉) ∧ 𝐴𝐵) → ∀𝑤𝑡((𝑤 ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ 𝑡 ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑤 = 𝑡))
50 eqeuel 4361 . . 3 (((𝐴(2 WWalksNOn 𝐺)𝐵) ≠ ∅ ∧ ∀𝑤𝑡((𝑤 ∈ (𝐴(2 WWalksNOn 𝐺)𝐵) ∧ 𝑡 ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) → 𝑤 = 𝑡)) → ∃!𝑤 𝑤 ∈ (𝐴(2 WWalksNOn 𝐺)𝐵))
512, 49, 50syl2anc 584 . 2 ((𝐺 ∈ FriendGraph ∧ (𝐴𝑉𝐵𝑉) ∧ 𝐴𝐵) → ∃!𝑤 𝑤 ∈ (𝐴(2 WWalksNOn 𝐺)𝐵))
52 ovex 7438 . . 3 (𝐴(2 WWalksNOn 𝐺)𝐵) ∈ V
53 euhash1 14376 . . 3 ((𝐴(2 WWalksNOn 𝐺)𝐵) ∈ V → ((♯‘(𝐴(2 WWalksNOn 𝐺)𝐵)) = 1 ↔ ∃!𝑤 𝑤 ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)))
5452, 53mp1i 13 . 2 ((𝐺 ∈ FriendGraph ∧ (𝐴𝑉𝐵𝑉) ∧ 𝐴𝐵) → ((♯‘(𝐴(2 WWalksNOn 𝐺)𝐵)) = 1 ↔ ∃!𝑤 𝑤 ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)))
5551, 54mpbird 256 1 ((𝐺 ∈ FriendGraph ∧ (𝐴𝑉𝐵𝑉) ∧ 𝐴𝐵) → (♯‘(𝐴(2 WWalksNOn 𝐺)𝐵)) = 1)
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 205  wa 396  w3a 1087  wal 1539   = wceq 1541  wcel 2106  ∃!weu 2562  wne 2940  wral 3061  wrex 3070  ∃!wreu 3374  Vcvv 3474  c0 4321  cfv 6540  (class class class)co 7405  1c1 11107  2c2 12263  chash 14286  ⟨“cs3 14789  Vtxcvtx 28245   WWalksNOn cwwlksnon 29070   FriendGraph cfrgr 29500
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 1913  ax-6 1971  ax-7 2011  ax-8 2108  ax-9 2116  ax-10 2137  ax-11 2154  ax-12 2171  ax-ext 2703  ax-rep 5284  ax-sep 5298  ax-nul 5305  ax-pow 5362  ax-pr 5426  ax-un 7721  ax-ac2 10454  ax-cnex 11162  ax-resscn 11163  ax-1cn 11164  ax-icn 11165  ax-addcl 11166  ax-addrcl 11167  ax-mulcl 11168  ax-mulrcl 11169  ax-mulcom 11170  ax-addass 11171  ax-mulass 11172  ax-distr 11173  ax-i2m1 11174  ax-1ne0 11175  ax-1rid 11176  ax-rnegex 11177  ax-rrecex 11178  ax-cnre 11179  ax-pre-lttri 11180  ax-pre-lttrn 11181  ax-pre-ltadd 11182  ax-pre-mulgt0 11183
This theorem depends on definitions:  df-bi 206  df-an 397  df-or 846  df-ifp 1062  df-3or 1088  df-3an 1089  df-tru 1544  df-fal 1554  df-ex 1782  df-nf 1786  df-sb 2068  df-mo 2534  df-eu 2563  df-clab 2710  df-cleq 2724  df-clel 2810  df-nfc 2885  df-ne 2941  df-nel 3047  df-ral 3062  df-rex 3071  df-rmo 3376  df-reu 3377  df-rab 3433  df-v 3476  df-sbc 3777  df-csb 3893  df-dif 3950  df-un 3952  df-in 3954  df-ss 3964  df-pss 3966  df-nul 4322  df-if 4528  df-pw 4603  df-sn 4628  df-pr 4630  df-tp 4632  df-op 4634  df-uni 4908  df-int 4950  df-iun 4998  df-br 5148  df-opab 5210  df-mpt 5231  df-tr 5265  df-id 5573  df-eprel 5579  df-po 5587  df-so 5588  df-fr 5630  df-se 5631  df-we 5632  df-xp 5681  df-rel 5682  df-cnv 5683  df-co 5684  df-dm 5685  df-rn 5686  df-res 5687  df-ima 5688  df-pred 6297  df-ord 6364  df-on 6365  df-lim 6366  df-suc 6367  df-iota 6492  df-fun 6542  df-fn 6543  df-f 6544  df-f1 6545  df-fo 6546  df-f1o 6547  df-fv 6548  df-isom 6549  df-riota 7361  df-ov 7408  df-oprab 7409  df-mpo 7410  df-om 7852  df-1st 7971  df-2nd 7972  df-frecs 8262  df-wrecs 8293  df-recs 8367  df-rdg 8406  df-1o 8462  df-2o 8463  df-oadd 8466  df-er 8699  df-map 8818  df-pm 8819  df-en 8936  df-dom 8937  df-sdom 8938  df-fin 8939  df-dju 9892  df-card 9930  df-ac 10107  df-pnf 11246  df-mnf 11247  df-xr 11248  df-ltxr 11249  df-le 11250  df-sub 11442  df-neg 11443  df-nn 12209  df-2 12271  df-3 12272  df-n0 12469  df-xnn0 12541  df-z 12555  df-uz 12819  df-fz 13481  df-fzo 13624  df-hash 14287  df-word 14461  df-concat 14517  df-s1 14542  df-s2 14795  df-s3 14796  df-edg 28297  df-uhgr 28307  df-upgr 28331  df-umgr 28332  df-usgr 28400  df-wlks 28845  df-wwlks 29073  df-wwlksn 29074  df-wwlksnon 29075  df-frgr 29501
This theorem is referenced by:  frgr2wsp1  29572
  Copyright terms: Public domain W3C validator