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

Theorem numclwlk2lem2f1o 27087
Description: R is a 1-1 onto function. (Contributed by Alexander van der Vekens, 6-Oct-2018.)
Hypotheses
Ref Expression
numclwwlk.v 𝑉 = (Vtx‘𝐺)
numclwwlk.q 𝑄 = (𝑣𝑉, 𝑛 ∈ ℕ ↦ {𝑤 ∈ (𝑛 WWalksN 𝐺) ∣ ((𝑤‘0) = 𝑣 ∧ ( lastS ‘𝑤) ≠ 𝑣)})
numclwwlk.f 𝐹 = (𝑣𝑉, 𝑛 ∈ ℕ ↦ {𝑤 ∈ (𝑛 ClWWalksN 𝐺) ∣ (𝑤‘0) = 𝑣})
numclwwlk.h 𝐻 = (𝑣𝑉, 𝑛 ∈ ℕ ↦ {𝑤 ∈ (𝑛 ClWWalksN 𝐺) ∣ ((𝑤‘0) = 𝑣 ∧ (𝑤‘(𝑛 − 2)) ≠ (𝑤‘0))})
numclwwlk.r 𝑅 = (𝑥 ∈ (𝑋𝐻(𝑁 + 2)) ↦ (𝑥 substr ⟨0, (𝑁 + 1)⟩))
Assertion
Ref Expression
numclwlk2lem2f1o ((𝐺 ∈ FriendGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) → 𝑅:(𝑋𝐻(𝑁 + 2))–1-1-onto→(𝑋𝑄𝑁))
Distinct variable groups:   𝑛,𝐺,𝑣,𝑤   𝑛,𝑁,𝑣,𝑤   𝑛,𝑉,𝑣   𝑛,𝑋,𝑣,𝑤   𝑤,𝑉   𝑥,𝐺,𝑤   𝑥,𝐻   𝑥,𝑁   𝑥,𝑄   𝑥,𝑉   𝑥,𝑋,𝑣   𝑣,𝐻
Allowed substitution hints:   𝑄(𝑤,𝑣,𝑛)   𝑅(𝑥,𝑤,𝑣,𝑛)   𝐹(𝑥,𝑤,𝑣,𝑛)   𝐻(𝑤,𝑛)

Proof of Theorem numclwlk2lem2f1o
Dummy variables 𝑦 𝑢 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 eleq1 2692 . . . . . . . . 9 (𝑦 = 𝑥 → (𝑦 ∈ (𝑋𝐻(𝑁 + 2)) ↔ 𝑥 ∈ (𝑋𝐻(𝑁 + 2))))
2 fveq2 6150 . . . . . . . . . 10 (𝑦 = 𝑥 → (𝑅𝑦) = (𝑅𝑥))
3 oveq1 6612 . . . . . . . . . 10 (𝑦 = 𝑥 → (𝑦 substr ⟨0, (𝑁 + 1)⟩) = (𝑥 substr ⟨0, (𝑁 + 1)⟩))
42, 3eqeq12d 2641 . . . . . . . . 9 (𝑦 = 𝑥 → ((𝑅𝑦) = (𝑦 substr ⟨0, (𝑁 + 1)⟩) ↔ (𝑅𝑥) = (𝑥 substr ⟨0, (𝑁 + 1)⟩)))
51, 4imbi12d 334 . . . . . . . 8 (𝑦 = 𝑥 → ((𝑦 ∈ (𝑋𝐻(𝑁 + 2)) → (𝑅𝑦) = (𝑦 substr ⟨0, (𝑁 + 1)⟩)) ↔ (𝑥 ∈ (𝑋𝐻(𝑁 + 2)) → (𝑅𝑥) = (𝑥 substr ⟨0, (𝑁 + 1)⟩))))
65imbi2d 330 . . . . . . 7 (𝑦 = 𝑥 → (((𝑋𝑉𝑁 ∈ ℕ) → (𝑦 ∈ (𝑋𝐻(𝑁 + 2)) → (𝑅𝑦) = (𝑦 substr ⟨0, (𝑁 + 1)⟩))) ↔ ((𝑋𝑉𝑁 ∈ ℕ) → (𝑥 ∈ (𝑋𝐻(𝑁 + 2)) → (𝑅𝑥) = (𝑥 substr ⟨0, (𝑁 + 1)⟩)))))
7 numclwwlk.v . . . . . . . 8 𝑉 = (Vtx‘𝐺)
8 numclwwlk.q . . . . . . . 8 𝑄 = (𝑣𝑉, 𝑛 ∈ ℕ ↦ {𝑤 ∈ (𝑛 WWalksN 𝐺) ∣ ((𝑤‘0) = 𝑣 ∧ ( lastS ‘𝑤) ≠ 𝑣)})
9 numclwwlk.f . . . . . . . 8 𝐹 = (𝑣𝑉, 𝑛 ∈ ℕ ↦ {𝑤 ∈ (𝑛 ClWWalksN 𝐺) ∣ (𝑤‘0) = 𝑣})
10 numclwwlk.h . . . . . . . 8 𝐻 = (𝑣𝑉, 𝑛 ∈ ℕ ↦ {𝑤 ∈ (𝑛 ClWWalksN 𝐺) ∣ ((𝑤‘0) = 𝑣 ∧ (𝑤‘(𝑛 − 2)) ≠ (𝑤‘0))})
11 numclwwlk.r . . . . . . . 8 𝑅 = (𝑥 ∈ (𝑋𝐻(𝑁 + 2)) ↦ (𝑥 substr ⟨0, (𝑁 + 1)⟩))
127, 8, 9, 10, 11numclwlk2lem2fv 27086 . . . . . . 7 ((𝑋𝑉𝑁 ∈ ℕ) → (𝑦 ∈ (𝑋𝐻(𝑁 + 2)) → (𝑅𝑦) = (𝑦 substr ⟨0, (𝑁 + 1)⟩)))
136, 12chvarv 2267 . . . . . 6 ((𝑋𝑉𝑁 ∈ ℕ) → (𝑥 ∈ (𝑋𝐻(𝑁 + 2)) → (𝑅𝑥) = (𝑥 substr ⟨0, (𝑁 + 1)⟩)))
14133adant1 1077 . . . . 5 ((𝐺 ∈ FriendGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) → (𝑥 ∈ (𝑋𝐻(𝑁 + 2)) → (𝑅𝑥) = (𝑥 substr ⟨0, (𝑁 + 1)⟩)))
1514imp 445 . . . 4 (((𝐺 ∈ FriendGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) ∧ 𝑥 ∈ (𝑋𝐻(𝑁 + 2))) → (𝑅𝑥) = (𝑥 substr ⟨0, (𝑁 + 1)⟩))
167, 8, 9, 10, 11numclwlk2lem2f 27085 . . . . 5 ((𝐺 ∈ FriendGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) → 𝑅:(𝑋𝐻(𝑁 + 2))⟶(𝑋𝑄𝑁))
1716ffvelrnda 6316 . . . 4 (((𝐺 ∈ FriendGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) ∧ 𝑥 ∈ (𝑋𝐻(𝑁 + 2))) → (𝑅𝑥) ∈ (𝑋𝑄𝑁))
1815, 17eqeltrrd 2705 . . 3 (((𝐺 ∈ FriendGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) ∧ 𝑥 ∈ (𝑋𝐻(𝑁 + 2))) → (𝑥 substr ⟨0, (𝑁 + 1)⟩) ∈ (𝑋𝑄𝑁))
1918ralrimiva 2965 . 2 ((𝐺 ∈ FriendGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) → ∀𝑥 ∈ (𝑋𝐻(𝑁 + 2))(𝑥 substr ⟨0, (𝑁 + 1)⟩) ∈ (𝑋𝑄𝑁))
207, 8, 9, 10numclwwlk2lem1 27084 . . . . 5 ((𝐺 ∈ FriendGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) → (𝑢 ∈ (𝑋𝑄𝑁) → ∃!𝑣𝑉 (𝑢 ++ ⟨“𝑣”⟩) ∈ (𝑋𝐻(𝑁 + 2))))
2120imp 445 . . . 4 (((𝐺 ∈ FriendGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) ∧ 𝑢 ∈ (𝑋𝑄𝑁)) → ∃!𝑣𝑉 (𝑢 ++ ⟨“𝑣”⟩) ∈ (𝑋𝐻(𝑁 + 2)))
227, 8numclwwlkovq 27081 . . . . . . . . 9 ((𝑋𝑉𝑁 ∈ ℕ) → (𝑋𝑄𝑁) = {𝑤 ∈ (𝑁 WWalksN 𝐺) ∣ ((𝑤‘0) = 𝑋 ∧ ( lastS ‘𝑤) ≠ 𝑋)})
2322eleq2d 2689 . . . . . . . 8 ((𝑋𝑉𝑁 ∈ ℕ) → (𝑢 ∈ (𝑋𝑄𝑁) ↔ 𝑢 ∈ {𝑤 ∈ (𝑁 WWalksN 𝐺) ∣ ((𝑤‘0) = 𝑋 ∧ ( lastS ‘𝑤) ≠ 𝑋)}))
24233adant1 1077 . . . . . . 7 ((𝐺 ∈ FriendGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) → (𝑢 ∈ (𝑋𝑄𝑁) ↔ 𝑢 ∈ {𝑤 ∈ (𝑁 WWalksN 𝐺) ∣ ((𝑤‘0) = 𝑋 ∧ ( lastS ‘𝑤) ≠ 𝑋)}))
25 fveq1 6149 . . . . . . . . . 10 (𝑤 = 𝑢 → (𝑤‘0) = (𝑢‘0))
2625eqeq1d 2628 . . . . . . . . 9 (𝑤 = 𝑢 → ((𝑤‘0) = 𝑋 ↔ (𝑢‘0) = 𝑋))
27 fveq2 6150 . . . . . . . . . 10 (𝑤 = 𝑢 → ( lastS ‘𝑤) = ( lastS ‘𝑢))
2827neeq1d 2855 . . . . . . . . 9 (𝑤 = 𝑢 → (( lastS ‘𝑤) ≠ 𝑋 ↔ ( lastS ‘𝑢) ≠ 𝑋))
2926, 28anbi12d 746 . . . . . . . 8 (𝑤 = 𝑢 → (((𝑤‘0) = 𝑋 ∧ ( lastS ‘𝑤) ≠ 𝑋) ↔ ((𝑢‘0) = 𝑋 ∧ ( lastS ‘𝑢) ≠ 𝑋)))
3029elrab 3351 . . . . . . 7 (𝑢 ∈ {𝑤 ∈ (𝑁 WWalksN 𝐺) ∣ ((𝑤‘0) = 𝑋 ∧ ( lastS ‘𝑤) ≠ 𝑋)} ↔ (𝑢 ∈ (𝑁 WWalksN 𝐺) ∧ ((𝑢‘0) = 𝑋 ∧ ( lastS ‘𝑢) ≠ 𝑋)))
3124, 30syl6bb 276 . . . . . 6 ((𝐺 ∈ FriendGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) → (𝑢 ∈ (𝑋𝑄𝑁) ↔ (𝑢 ∈ (𝑁 WWalksN 𝐺) ∧ ((𝑢‘0) = 𝑋 ∧ ( lastS ‘𝑢) ≠ 𝑋))))
32 wwlknbp2 26615 . . . . . . . . . . . . . . 15 (𝑢 ∈ (𝑁 WWalksN 𝐺) → (𝑢 ∈ Word (Vtx‘𝐺) ∧ (#‘𝑢) = (𝑁 + 1)))
337wrdeqi 13262 . . . . . . . . . . . . . . . . 17 Word 𝑉 = Word (Vtx‘𝐺)
3433eleq2i 2696 . . . . . . . . . . . . . . . 16 (𝑢 ∈ Word 𝑉𝑢 ∈ Word (Vtx‘𝐺))
3534anbi1i 730 . . . . . . . . . . . . . . 15 ((𝑢 ∈ Word 𝑉 ∧ (#‘𝑢) = (𝑁 + 1)) ↔ (𝑢 ∈ Word (Vtx‘𝐺) ∧ (#‘𝑢) = (𝑁 + 1)))
3632, 35sylibr 224 . . . . . . . . . . . . . 14 (𝑢 ∈ (𝑁 WWalksN 𝐺) → (𝑢 ∈ Word 𝑉 ∧ (#‘𝑢) = (𝑁 + 1)))
37 simpll 789 . . . . . . . . . . . . . . . 16 (((𝑢 ∈ Word 𝑉 ∧ (#‘𝑢) = (𝑁 + 1)) ∧ (𝐺 ∈ FriendGraph ∧ 𝑋𝑉𝑁 ∈ ℕ)) → 𝑢 ∈ Word 𝑉)
38 id 22 . . . . . . . . . . . . . . . . . . . . . . . 24 (𝑁 ∈ ℕ → 𝑁 ∈ ℕ)
39 2nn 11130 . . . . . . . . . . . . . . . . . . . . . . . . 25 2 ∈ ℕ
4039a1i 11 . . . . . . . . . . . . . . . . . . . . . . . 24 (𝑁 ∈ ℕ → 2 ∈ ℕ)
4138, 40nnaddcld 11012 . . . . . . . . . . . . . . . . . . . . . . 23 (𝑁 ∈ ℕ → (𝑁 + 2) ∈ ℕ)
427, 8, 9, 10numclwwlkovh 27083 . . . . . . . . . . . . . . . . . . . . . . 23 ((𝑋𝑉 ∧ (𝑁 + 2) ∈ ℕ) → (𝑋𝐻(𝑁 + 2)) = {𝑤 ∈ ((𝑁 + 2) ClWWalksN 𝐺) ∣ ((𝑤‘0) = 𝑋 ∧ (𝑤‘((𝑁 + 2) − 2)) ≠ (𝑤‘0))})
4341, 42sylan2 491 . . . . . . . . . . . . . . . . . . . . . 22 ((𝑋𝑉𝑁 ∈ ℕ) → (𝑋𝐻(𝑁 + 2)) = {𝑤 ∈ ((𝑁 + 2) ClWWalksN 𝐺) ∣ ((𝑤‘0) = 𝑋 ∧ (𝑤‘((𝑁 + 2) − 2)) ≠ (𝑤‘0))})
4443eleq2d 2689 . . . . . . . . . . . . . . . . . . . . 21 ((𝑋𝑉𝑁 ∈ ℕ) → (𝑥 ∈ (𝑋𝐻(𝑁 + 2)) ↔ 𝑥 ∈ {𝑤 ∈ ((𝑁 + 2) ClWWalksN 𝐺) ∣ ((𝑤‘0) = 𝑋 ∧ (𝑤‘((𝑁 + 2) − 2)) ≠ (𝑤‘0))}))
45 fveq1 6149 . . . . . . . . . . . . . . . . . . . . . . . 24 (𝑤 = 𝑥 → (𝑤‘0) = (𝑥‘0))
4645eqeq1d 2628 . . . . . . . . . . . . . . . . . . . . . . 23 (𝑤 = 𝑥 → ((𝑤‘0) = 𝑋 ↔ (𝑥‘0) = 𝑋))
47 fveq1 6149 . . . . . . . . . . . . . . . . . . . . . . . 24 (𝑤 = 𝑥 → (𝑤‘((𝑁 + 2) − 2)) = (𝑥‘((𝑁 + 2) − 2)))
4847, 45neeq12d 2857 . . . . . . . . . . . . . . . . . . . . . . 23 (𝑤 = 𝑥 → ((𝑤‘((𝑁 + 2) − 2)) ≠ (𝑤‘0) ↔ (𝑥‘((𝑁 + 2) − 2)) ≠ (𝑥‘0)))
4946, 48anbi12d 746 . . . . . . . . . . . . . . . . . . . . . 22 (𝑤 = 𝑥 → (((𝑤‘0) = 𝑋 ∧ (𝑤‘((𝑁 + 2) − 2)) ≠ (𝑤‘0)) ↔ ((𝑥‘0) = 𝑋 ∧ (𝑥‘((𝑁 + 2) − 2)) ≠ (𝑥‘0))))
5049elrab 3351 . . . . . . . . . . . . . . . . . . . . 21 (𝑥 ∈ {𝑤 ∈ ((𝑁 + 2) ClWWalksN 𝐺) ∣ ((𝑤‘0) = 𝑋 ∧ (𝑤‘((𝑁 + 2) − 2)) ≠ (𝑤‘0))} ↔ (𝑥 ∈ ((𝑁 + 2) ClWWalksN 𝐺) ∧ ((𝑥‘0) = 𝑋 ∧ (𝑥‘((𝑁 + 2) − 2)) ≠ (𝑥‘0))))
5144, 50syl6bb 276 . . . . . . . . . . . . . . . . . . . 20 ((𝑋𝑉𝑁 ∈ ℕ) → (𝑥 ∈ (𝑋𝐻(𝑁 + 2)) ↔ (𝑥 ∈ ((𝑁 + 2) ClWWalksN 𝐺) ∧ ((𝑥‘0) = 𝑋 ∧ (𝑥‘((𝑁 + 2) − 2)) ≠ (𝑥‘0)))))
52513adant1 1077 . . . . . . . . . . . . . . . . . . 19 ((𝐺 ∈ FriendGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) → (𝑥 ∈ (𝑋𝐻(𝑁 + 2)) ↔ (𝑥 ∈ ((𝑁 + 2) ClWWalksN 𝐺) ∧ ((𝑥‘0) = 𝑋 ∧ (𝑥‘((𝑁 + 2) − 2)) ≠ (𝑥‘0)))))
5352adantl 482 . . . . . . . . . . . . . . . . . 18 (((𝑢 ∈ Word 𝑉 ∧ (#‘𝑢) = (𝑁 + 1)) ∧ (𝐺 ∈ FriendGraph ∧ 𝑋𝑉𝑁 ∈ ℕ)) → (𝑥 ∈ (𝑋𝐻(𝑁 + 2)) ↔ (𝑥 ∈ ((𝑁 + 2) ClWWalksN 𝐺) ∧ ((𝑥‘0) = 𝑋 ∧ (𝑥‘((𝑁 + 2) − 2)) ≠ (𝑥‘0)))))
547clwwlknbp 26746 . . . . . . . . . . . . . . . . . . . . 21 (𝑥 ∈ ((𝑁 + 2) ClWWalksN 𝐺) → (𝑥 ∈ Word 𝑉 ∧ (#‘𝑥) = (𝑁 + 2)))
55 lencl 13258 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 (𝑢 ∈ Word 𝑉 → (#‘𝑢) ∈ ℕ0)
56 simprr 795 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 (((((#‘𝑢) ∈ ℕ0 ∧ (#‘𝑢) = (𝑁 + 1)) ∧ 𝑁 ∈ ℕ) ∧ ((#‘𝑥) = (𝑁 + 2) ∧ 𝑥 ∈ Word 𝑉)) → 𝑥 ∈ Word 𝑉)
57 df-2 11024 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 2 = (1 + 1)
5857a1i 11 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 (𝑁 ∈ ℕ → 2 = (1 + 1))
5958oveq2d 6621 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 (𝑁 ∈ ℕ → (𝑁 + 2) = (𝑁 + (1 + 1)))
60 nncn 10973 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 (𝑁 ∈ ℕ → 𝑁 ∈ ℂ)
61 1cnd 10001 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 (𝑁 ∈ ℕ → 1 ∈ ℂ)
6260, 61, 61addassd 10007 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 (𝑁 ∈ ℕ → ((𝑁 + 1) + 1) = (𝑁 + (1 + 1)))
6359, 62eqtr4d 2663 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 (𝑁 ∈ ℕ → (𝑁 + 2) = ((𝑁 + 1) + 1))
6463adantl 482 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 ((((#‘𝑢) ∈ ℕ0 ∧ (#‘𝑢) = (𝑁 + 1)) ∧ 𝑁 ∈ ℕ) → (𝑁 + 2) = ((𝑁 + 1) + 1))
6564eqeq2d 2636 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 ((((#‘𝑢) ∈ ℕ0 ∧ (#‘𝑢) = (𝑁 + 1)) ∧ 𝑁 ∈ ℕ) → ((#‘𝑥) = (𝑁 + 2) ↔ (#‘𝑥) = ((𝑁 + 1) + 1)))
6665biimpcd 239 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 ((#‘𝑥) = (𝑁 + 2) → ((((#‘𝑢) ∈ ℕ0 ∧ (#‘𝑢) = (𝑁 + 1)) ∧ 𝑁 ∈ ℕ) → (#‘𝑥) = ((𝑁 + 1) + 1)))
6766adantr 481 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 (((#‘𝑥) = (𝑁 + 2) ∧ 𝑥 ∈ Word 𝑉) → ((((#‘𝑢) ∈ ℕ0 ∧ (#‘𝑢) = (𝑁 + 1)) ∧ 𝑁 ∈ ℕ) → (#‘𝑥) = ((𝑁 + 1) + 1)))
6867impcom 446 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 (((((#‘𝑢) ∈ ℕ0 ∧ (#‘𝑢) = (𝑁 + 1)) ∧ 𝑁 ∈ ℕ) ∧ ((#‘𝑥) = (𝑁 + 2) ∧ 𝑥 ∈ Word 𝑉)) → (#‘𝑥) = ((𝑁 + 1) + 1))
69 oveq1 6612 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 ((#‘𝑢) = (𝑁 + 1) → ((#‘𝑢) + 1) = ((𝑁 + 1) + 1))
7069ad3antlr 766 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 (((((#‘𝑢) ∈ ℕ0 ∧ (#‘𝑢) = (𝑁 + 1)) ∧ 𝑁 ∈ ℕ) ∧ ((#‘𝑥) = (𝑁 + 2) ∧ 𝑥 ∈ Word 𝑉)) → ((#‘𝑢) + 1) = ((𝑁 + 1) + 1))
7168, 70eqtr4d 2663 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 (((((#‘𝑢) ∈ ℕ0 ∧ (#‘𝑢) = (𝑁 + 1)) ∧ 𝑁 ∈ ℕ) ∧ ((#‘𝑥) = (𝑁 + 2) ∧ 𝑥 ∈ Word 𝑉)) → (#‘𝑥) = ((#‘𝑢) + 1))
7256, 71jca 554 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 (((((#‘𝑢) ∈ ℕ0 ∧ (#‘𝑢) = (𝑁 + 1)) ∧ 𝑁 ∈ ℕ) ∧ ((#‘𝑥) = (𝑁 + 2) ∧ 𝑥 ∈ Word 𝑉)) → (𝑥 ∈ Word 𝑉 ∧ (#‘𝑥) = ((#‘𝑢) + 1)))
7372exp31 629 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 (((#‘𝑢) ∈ ℕ0 ∧ (#‘𝑢) = (𝑁 + 1)) → (𝑁 ∈ ℕ → (((#‘𝑥) = (𝑁 + 2) ∧ 𝑥 ∈ Word 𝑉) → (𝑥 ∈ Word 𝑉 ∧ (#‘𝑥) = ((#‘𝑢) + 1)))))
7455, 73sylan 488 . . . . . . . . . . . . . . . . . . . . . . . . . 26 ((𝑢 ∈ Word 𝑉 ∧ (#‘𝑢) = (𝑁 + 1)) → (𝑁 ∈ ℕ → (((#‘𝑥) = (𝑁 + 2) ∧ 𝑥 ∈ Word 𝑉) → (𝑥 ∈ Word 𝑉 ∧ (#‘𝑥) = ((#‘𝑢) + 1)))))
7574com12 32 . . . . . . . . . . . . . . . . . . . . . . . . 25 (𝑁 ∈ ℕ → ((𝑢 ∈ Word 𝑉 ∧ (#‘𝑢) = (𝑁 + 1)) → (((#‘𝑥) = (𝑁 + 2) ∧ 𝑥 ∈ Word 𝑉) → (𝑥 ∈ Word 𝑉 ∧ (#‘𝑥) = ((#‘𝑢) + 1)))))
76753ad2ant3 1082 . . . . . . . . . . . . . . . . . . . . . . . 24 ((𝐺 ∈ FriendGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) → ((𝑢 ∈ Word 𝑉 ∧ (#‘𝑢) = (𝑁 + 1)) → (((#‘𝑥) = (𝑁 + 2) ∧ 𝑥 ∈ Word 𝑉) → (𝑥 ∈ Word 𝑉 ∧ (#‘𝑥) = ((#‘𝑢) + 1)))))
7776impcom 446 . . . . . . . . . . . . . . . . . . . . . . 23 (((𝑢 ∈ Word 𝑉 ∧ (#‘𝑢) = (𝑁 + 1)) ∧ (𝐺 ∈ FriendGraph ∧ 𝑋𝑉𝑁 ∈ ℕ)) → (((#‘𝑥) = (𝑁 + 2) ∧ 𝑥 ∈ Word 𝑉) → (𝑥 ∈ Word 𝑉 ∧ (#‘𝑥) = ((#‘𝑢) + 1))))
7877com12 32 . . . . . . . . . . . . . . . . . . . . . 22 (((#‘𝑥) = (𝑁 + 2) ∧ 𝑥 ∈ Word 𝑉) → (((𝑢 ∈ Word 𝑉 ∧ (#‘𝑢) = (𝑁 + 1)) ∧ (𝐺 ∈ FriendGraph ∧ 𝑋𝑉𝑁 ∈ ℕ)) → (𝑥 ∈ Word 𝑉 ∧ (#‘𝑥) = ((#‘𝑢) + 1))))
7978ancoms 469 . . . . . . . . . . . . . . . . . . . . 21 ((𝑥 ∈ Word 𝑉 ∧ (#‘𝑥) = (𝑁 + 2)) → (((𝑢 ∈ Word 𝑉 ∧ (#‘𝑢) = (𝑁 + 1)) ∧ (𝐺 ∈ FriendGraph ∧ 𝑋𝑉𝑁 ∈ ℕ)) → (𝑥 ∈ Word 𝑉 ∧ (#‘𝑥) = ((#‘𝑢) + 1))))
8054, 79syl 17 . . . . . . . . . . . . . . . . . . . 20 (𝑥 ∈ ((𝑁 + 2) ClWWalksN 𝐺) → (((𝑢 ∈ Word 𝑉 ∧ (#‘𝑢) = (𝑁 + 1)) ∧ (𝐺 ∈ FriendGraph ∧ 𝑋𝑉𝑁 ∈ ℕ)) → (𝑥 ∈ Word 𝑉 ∧ (#‘𝑥) = ((#‘𝑢) + 1))))
8180adantr 481 . . . . . . . . . . . . . . . . . . 19 ((𝑥 ∈ ((𝑁 + 2) ClWWalksN 𝐺) ∧ ((𝑥‘0) = 𝑋 ∧ (𝑥‘((𝑁 + 2) − 2)) ≠ (𝑥‘0))) → (((𝑢 ∈ Word 𝑉 ∧ (#‘𝑢) = (𝑁 + 1)) ∧ (𝐺 ∈ FriendGraph ∧ 𝑋𝑉𝑁 ∈ ℕ)) → (𝑥 ∈ Word 𝑉 ∧ (#‘𝑥) = ((#‘𝑢) + 1))))
8281com12 32 . . . . . . . . . . . . . . . . . 18 (((𝑢 ∈ Word 𝑉 ∧ (#‘𝑢) = (𝑁 + 1)) ∧ (𝐺 ∈ FriendGraph ∧ 𝑋𝑉𝑁 ∈ ℕ)) → ((𝑥 ∈ ((𝑁 + 2) ClWWalksN 𝐺) ∧ ((𝑥‘0) = 𝑋 ∧ (𝑥‘((𝑁 + 2) − 2)) ≠ (𝑥‘0))) → (𝑥 ∈ Word 𝑉 ∧ (#‘𝑥) = ((#‘𝑢) + 1))))
8353, 82sylbid 230 . . . . . . . . . . . . . . . . 17 (((𝑢 ∈ Word 𝑉 ∧ (#‘𝑢) = (𝑁 + 1)) ∧ (𝐺 ∈ FriendGraph ∧ 𝑋𝑉𝑁 ∈ ℕ)) → (𝑥 ∈ (𝑋𝐻(𝑁 + 2)) → (𝑥 ∈ Word 𝑉 ∧ (#‘𝑥) = ((#‘𝑢) + 1))))
8483ralrimiv 2964 . . . . . . . . . . . . . . . 16 (((𝑢 ∈ Word 𝑉 ∧ (#‘𝑢) = (𝑁 + 1)) ∧ (𝐺 ∈ FriendGraph ∧ 𝑋𝑉𝑁 ∈ ℕ)) → ∀𝑥 ∈ (𝑋𝐻(𝑁 + 2))(𝑥 ∈ Word 𝑉 ∧ (#‘𝑥) = ((#‘𝑢) + 1)))
8537, 84jca 554 . . . . . . . . . . . . . . 15 (((𝑢 ∈ Word 𝑉 ∧ (#‘𝑢) = (𝑁 + 1)) ∧ (𝐺 ∈ FriendGraph ∧ 𝑋𝑉𝑁 ∈ ℕ)) → (𝑢 ∈ Word 𝑉 ∧ ∀𝑥 ∈ (𝑋𝐻(𝑁 + 2))(𝑥 ∈ Word 𝑉 ∧ (#‘𝑥) = ((#‘𝑢) + 1))))
8685ex 450 . . . . . . . . . . . . . 14 ((𝑢 ∈ Word 𝑉 ∧ (#‘𝑢) = (𝑁 + 1)) → ((𝐺 ∈ FriendGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) → (𝑢 ∈ Word 𝑉 ∧ ∀𝑥 ∈ (𝑋𝐻(𝑁 + 2))(𝑥 ∈ Word 𝑉 ∧ (#‘𝑥) = ((#‘𝑢) + 1)))))
8736, 86syl 17 . . . . . . . . . . . . 13 (𝑢 ∈ (𝑁 WWalksN 𝐺) → ((𝐺 ∈ FriendGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) → (𝑢 ∈ Word 𝑉 ∧ ∀𝑥 ∈ (𝑋𝐻(𝑁 + 2))(𝑥 ∈ Word 𝑉 ∧ (#‘𝑥) = ((#‘𝑢) + 1)))))
8887adantr 481 . . . . . . . . . . . 12 ((𝑢 ∈ (𝑁 WWalksN 𝐺) ∧ ((𝑢‘0) = 𝑋 ∧ ( lastS ‘𝑢) ≠ 𝑋)) → ((𝐺 ∈ FriendGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) → (𝑢 ∈ Word 𝑉 ∧ ∀𝑥 ∈ (𝑋𝐻(𝑁 + 2))(𝑥 ∈ Word 𝑉 ∧ (#‘𝑥) = ((#‘𝑢) + 1)))))
8988imp 445 . . . . . . . . . . 11 (((𝑢 ∈ (𝑁 WWalksN 𝐺) ∧ ((𝑢‘0) = 𝑋 ∧ ( lastS ‘𝑢) ≠ 𝑋)) ∧ (𝐺 ∈ FriendGraph ∧ 𝑋𝑉𝑁 ∈ ℕ)) → (𝑢 ∈ Word 𝑉 ∧ ∀𝑥 ∈ (𝑋𝐻(𝑁 + 2))(𝑥 ∈ Word 𝑉 ∧ (#‘𝑥) = ((#‘𝑢) + 1))))
90 reuccats1 13413 . . . . . . . . . . 11 ((𝑢 ∈ Word 𝑉 ∧ ∀𝑥 ∈ (𝑋𝐻(𝑁 + 2))(𝑥 ∈ Word 𝑉 ∧ (#‘𝑥) = ((#‘𝑢) + 1))) → (∃!𝑣𝑉 (𝑢 ++ ⟨“𝑣”⟩) ∈ (𝑋𝐻(𝑁 + 2)) → ∃!𝑥 ∈ (𝑋𝐻(𝑁 + 2))𝑢 = (𝑥 substr ⟨0, (#‘𝑢)⟩)))
9189, 90syl 17 . . . . . . . . . 10 (((𝑢 ∈ (𝑁 WWalksN 𝐺) ∧ ((𝑢‘0) = 𝑋 ∧ ( lastS ‘𝑢) ≠ 𝑋)) ∧ (𝐺 ∈ FriendGraph ∧ 𝑋𝑉𝑁 ∈ ℕ)) → (∃!𝑣𝑉 (𝑢 ++ ⟨“𝑣”⟩) ∈ (𝑋𝐻(𝑁 + 2)) → ∃!𝑥 ∈ (𝑋𝐻(𝑁 + 2))𝑢 = (𝑥 substr ⟨0, (#‘𝑢)⟩)))
9291imp 445 . . . . . . . . 9 ((((𝑢 ∈ (𝑁 WWalksN 𝐺) ∧ ((𝑢‘0) = 𝑋 ∧ ( lastS ‘𝑢) ≠ 𝑋)) ∧ (𝐺 ∈ FriendGraph ∧ 𝑋𝑉𝑁 ∈ ℕ)) ∧ ∃!𝑣𝑉 (𝑢 ++ ⟨“𝑣”⟩) ∈ (𝑋𝐻(𝑁 + 2))) → ∃!𝑥 ∈ (𝑋𝐻(𝑁 + 2))𝑢 = (𝑥 substr ⟨0, (#‘𝑢)⟩))
93 simpr 477 . . . . . . . . . . . . . . . 16 ((𝑢 ∈ Word 𝑉 ∧ (#‘𝑢) = (𝑁 + 1)) → (#‘𝑢) = (𝑁 + 1))
9493eqcomd 2632 . . . . . . . . . . . . . . 15 ((𝑢 ∈ Word 𝑉 ∧ (#‘𝑢) = (𝑁 + 1)) → (𝑁 + 1) = (#‘𝑢))
9536, 94syl 17 . . . . . . . . . . . . . 14 (𝑢 ∈ (𝑁 WWalksN 𝐺) → (𝑁 + 1) = (#‘𝑢))
9695ad4antr 767 . . . . . . . . . . . . 13 (((((𝑢 ∈ (𝑁 WWalksN 𝐺) ∧ ((𝑢‘0) = 𝑋 ∧ ( lastS ‘𝑢) ≠ 𝑋)) ∧ (𝐺 ∈ FriendGraph ∧ 𝑋𝑉𝑁 ∈ ℕ)) ∧ ∃!𝑣𝑉 (𝑢 ++ ⟨“𝑣”⟩) ∈ (𝑋𝐻(𝑁 + 2))) ∧ 𝑥 ∈ (𝑋𝐻(𝑁 + 2))) → (𝑁 + 1) = (#‘𝑢))
9796opeq2d 4382 . . . . . . . . . . . 12 (((((𝑢 ∈ (𝑁 WWalksN 𝐺) ∧ ((𝑢‘0) = 𝑋 ∧ ( lastS ‘𝑢) ≠ 𝑋)) ∧ (𝐺 ∈ FriendGraph ∧ 𝑋𝑉𝑁 ∈ ℕ)) ∧ ∃!𝑣𝑉 (𝑢 ++ ⟨“𝑣”⟩) ∈ (𝑋𝐻(𝑁 + 2))) ∧ 𝑥 ∈ (𝑋𝐻(𝑁 + 2))) → ⟨0, (𝑁 + 1)⟩ = ⟨0, (#‘𝑢)⟩)
9897oveq2d 6621 . . . . . . . . . . 11 (((((𝑢 ∈ (𝑁 WWalksN 𝐺) ∧ ((𝑢‘0) = 𝑋 ∧ ( lastS ‘𝑢) ≠ 𝑋)) ∧ (𝐺 ∈ FriendGraph ∧ 𝑋𝑉𝑁 ∈ ℕ)) ∧ ∃!𝑣𝑉 (𝑢 ++ ⟨“𝑣”⟩) ∈ (𝑋𝐻(𝑁 + 2))) ∧ 𝑥 ∈ (𝑋𝐻(𝑁 + 2))) → (𝑥 substr ⟨0, (𝑁 + 1)⟩) = (𝑥 substr ⟨0, (#‘𝑢)⟩))
9998eqeq2d 2636 . . . . . . . . . 10 (((((𝑢 ∈ (𝑁 WWalksN 𝐺) ∧ ((𝑢‘0) = 𝑋 ∧ ( lastS ‘𝑢) ≠ 𝑋)) ∧ (𝐺 ∈ FriendGraph ∧ 𝑋𝑉𝑁 ∈ ℕ)) ∧ ∃!𝑣𝑉 (𝑢 ++ ⟨“𝑣”⟩) ∈ (𝑋𝐻(𝑁 + 2))) ∧ 𝑥 ∈ (𝑋𝐻(𝑁 + 2))) → (𝑢 = (𝑥 substr ⟨0, (𝑁 + 1)⟩) ↔ 𝑢 = (𝑥 substr ⟨0, (#‘𝑢)⟩)))
10099reubidva 3119 . . . . . . . . 9 ((((𝑢 ∈ (𝑁 WWalksN 𝐺) ∧ ((𝑢‘0) = 𝑋 ∧ ( lastS ‘𝑢) ≠ 𝑋)) ∧ (𝐺 ∈ FriendGraph ∧ 𝑋𝑉𝑁 ∈ ℕ)) ∧ ∃!𝑣𝑉 (𝑢 ++ ⟨“𝑣”⟩) ∈ (𝑋𝐻(𝑁 + 2))) → (∃!𝑥 ∈ (𝑋𝐻(𝑁 + 2))𝑢 = (𝑥 substr ⟨0, (𝑁 + 1)⟩) ↔ ∃!𝑥 ∈ (𝑋𝐻(𝑁 + 2))𝑢 = (𝑥 substr ⟨0, (#‘𝑢)⟩)))
10192, 100mpbird 247 . . . . . . . 8 ((((𝑢 ∈ (𝑁 WWalksN 𝐺) ∧ ((𝑢‘0) = 𝑋 ∧ ( lastS ‘𝑢) ≠ 𝑋)) ∧ (𝐺 ∈ FriendGraph ∧ 𝑋𝑉𝑁 ∈ ℕ)) ∧ ∃!𝑣𝑉 (𝑢 ++ ⟨“𝑣”⟩) ∈ (𝑋𝐻(𝑁 + 2))) → ∃!𝑥 ∈ (𝑋𝐻(𝑁 + 2))𝑢 = (𝑥 substr ⟨0, (𝑁 + 1)⟩))
102101exp31 629 . . . . . . 7 ((𝑢 ∈ (𝑁 WWalksN 𝐺) ∧ ((𝑢‘0) = 𝑋 ∧ ( lastS ‘𝑢) ≠ 𝑋)) → ((𝐺 ∈ FriendGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) → (∃!𝑣𝑉 (𝑢 ++ ⟨“𝑣”⟩) ∈ (𝑋𝐻(𝑁 + 2)) → ∃!𝑥 ∈ (𝑋𝐻(𝑁 + 2))𝑢 = (𝑥 substr ⟨0, (𝑁 + 1)⟩))))
103102com12 32 . . . . . 6 ((𝐺 ∈ FriendGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) → ((𝑢 ∈ (𝑁 WWalksN 𝐺) ∧ ((𝑢‘0) = 𝑋 ∧ ( lastS ‘𝑢) ≠ 𝑋)) → (∃!𝑣𝑉 (𝑢 ++ ⟨“𝑣”⟩) ∈ (𝑋𝐻(𝑁 + 2)) → ∃!𝑥 ∈ (𝑋𝐻(𝑁 + 2))𝑢 = (𝑥 substr ⟨0, (𝑁 + 1)⟩))))
10431, 103sylbid 230 . . . . 5 ((𝐺 ∈ FriendGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) → (𝑢 ∈ (𝑋𝑄𝑁) → (∃!𝑣𝑉 (𝑢 ++ ⟨“𝑣”⟩) ∈ (𝑋𝐻(𝑁 + 2)) → ∃!𝑥 ∈ (𝑋𝐻(𝑁 + 2))𝑢 = (𝑥 substr ⟨0, (𝑁 + 1)⟩))))
105104imp 445 . . . 4 (((𝐺 ∈ FriendGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) ∧ 𝑢 ∈ (𝑋𝑄𝑁)) → (∃!𝑣𝑉 (𝑢 ++ ⟨“𝑣”⟩) ∈ (𝑋𝐻(𝑁 + 2)) → ∃!𝑥 ∈ (𝑋𝐻(𝑁 + 2))𝑢 = (𝑥 substr ⟨0, (𝑁 + 1)⟩)))
10621, 105mpd 15 . . 3 (((𝐺 ∈ FriendGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) ∧ 𝑢 ∈ (𝑋𝑄𝑁)) → ∃!𝑥 ∈ (𝑋𝐻(𝑁 + 2))𝑢 = (𝑥 substr ⟨0, (𝑁 + 1)⟩))
107106ralrimiva 2965 . 2 ((𝐺 ∈ FriendGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) → ∀𝑢 ∈ (𝑋𝑄𝑁)∃!𝑥 ∈ (𝑋𝐻(𝑁 + 2))𝑢 = (𝑥 substr ⟨0, (𝑁 + 1)⟩))
10811f1ompt 6339 . 2 (𝑅:(𝑋𝐻(𝑁 + 2))–1-1-onto→(𝑋𝑄𝑁) ↔ (∀𝑥 ∈ (𝑋𝐻(𝑁 + 2))(𝑥 substr ⟨0, (𝑁 + 1)⟩) ∈ (𝑋𝑄𝑁) ∧ ∀𝑢 ∈ (𝑋𝑄𝑁)∃!𝑥 ∈ (𝑋𝐻(𝑁 + 2))𝑢 = (𝑥 substr ⟨0, (𝑁 + 1)⟩)))
10919, 107, 108sylanbrc 697 1 ((𝐺 ∈ FriendGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) → 𝑅:(𝑋𝐻(𝑁 + 2))–1-1-onto→(𝑋𝑄𝑁))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 196  wa 384  w3a 1036   = wceq 1480  wcel 1992  wne 2796  wral 2912  ∃!wreu 2914  {crab 2916  cop 4159  cmpt 4678  1-1-ontowf1o 5849  cfv 5850  (class class class)co 6605  cmpt2 6607  0cc0 9881  1c1 9882   + caddc 9884  cmin 10211  cn 10965  2c2 11015  0cn0 11237  #chash 13054  Word cword 13225   lastS clsw 13226   ++ cconcat 13227  ⟨“cs1 13228   substr csubstr 13229  Vtxcvtx 25769   WWalksN cwwlksn 26581   ClWWalksN cclwwlksn 26737   FriendGraph cfrgr 26980
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1719  ax-4 1734  ax-5 1841  ax-6 1890  ax-7 1937  ax-8 1994  ax-9 2001  ax-10 2021  ax-11 2036  ax-12 2049  ax-13 2250  ax-ext 2606  ax-rep 4736  ax-sep 4746  ax-nul 4754  ax-pow 4808  ax-pr 4872  ax-un 6903  ax-cnex 9937  ax-resscn 9938  ax-1cn 9939  ax-icn 9940  ax-addcl 9941  ax-addrcl 9942  ax-mulcl 9943  ax-mulrcl 9944  ax-mulcom 9945  ax-addass 9946  ax-mulass 9947  ax-distr 9948  ax-i2m1 9949  ax-1ne0 9950  ax-1rid 9951  ax-rnegex 9952  ax-rrecex 9953  ax-cnre 9954  ax-pre-lttri 9955  ax-pre-lttrn 9956  ax-pre-ltadd 9957  ax-pre-mulgt0 9958
This theorem depends on definitions:  df-bi 197  df-or 385  df-an 386  df-3or 1037  df-3an 1038  df-tru 1483  df-ex 1702  df-nf 1707  df-sb 1883  df-eu 2478  df-mo 2479  df-clab 2613  df-cleq 2619  df-clel 2622  df-nfc 2756  df-ne 2797  df-nel 2900  df-ral 2917  df-rex 2918  df-reu 2919  df-rab 2921  df-v 3193  df-sbc 3423  df-csb 3520  df-dif 3563  df-un 3565  df-in 3567  df-ss 3574  df-pss 3576  df-nul 3897  df-if 4064  df-pw 4137  df-sn 4154  df-pr 4156  df-tp 4158  df-op 4160  df-uni 4408  df-int 4446  df-iun 4492  df-br 4619  df-opab 4679  df-mpt 4680  df-tr 4718  df-eprel 4990  df-id 4994  df-po 5000  df-so 5001  df-fr 5038  df-we 5040  df-xp 5085  df-rel 5086  df-cnv 5087  df-co 5088  df-dm 5089  df-rn 5090  df-res 5091  df-ima 5092  df-pred 5642  df-ord 5688  df-on 5689  df-lim 5690  df-suc 5691  df-iota 5813  df-fun 5852  df-fn 5853  df-f 5854  df-f1 5855  df-fo 5856  df-f1o 5857  df-fv 5858  df-riota 6566  df-ov 6608  df-oprab 6609  df-mpt2 6610  df-om 7014  df-1st 7116  df-2nd 7117  df-wrecs 7353  df-recs 7414  df-rdg 7452  df-1o 7506  df-oadd 7510  df-er 7688  df-map 7805  df-pm 7806  df-en 7901  df-dom 7902  df-sdom 7903  df-fin 7904  df-card 8710  df-pnf 10021  df-mnf 10022  df-xr 10023  df-ltxr 10024  df-le 10025  df-sub 10213  df-neg 10214  df-nn 10966  df-2 11024  df-n0 11238  df-xnn0 11309  df-z 11323  df-uz 11632  df-rp 11777  df-fz 12266  df-fzo 12404  df-hash 13055  df-word 13233  df-lsw 13234  df-concat 13235  df-s1 13236  df-substr 13237  df-wwlks 26585  df-wwlksn 26586  df-clwwlks 26738  df-clwwlksn 26739  df-frgr 26981
This theorem is referenced by:  numclwwlk2lem3  27088
  Copyright terms: Public domain W3C validator