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

Theorem efgsres 19856
Description: An initial segment of an extension sequence is an extension sequence. (Contributed by Mario Carneiro, 1-Oct-2015.) (Proof shortened by AV, 3-Nov-2022.)
Hypotheses
Ref Expression
efgval.w 𝑊 = ( I ‘Word (𝐼 × 2o))
efgval.r = ( ~FG𝐼)
efgval2.m 𝑀 = (𝑦𝐼, 𝑧 ∈ 2o ↦ ⟨𝑦, (1o𝑧)⟩)
efgval2.t 𝑇 = (𝑣𝑊 ↦ (𝑛 ∈ (0...(♯‘𝑣)), 𝑤 ∈ (𝐼 × 2o) ↦ (𝑣 splice ⟨𝑛, 𝑛, ⟨“𝑤(𝑀𝑤)”⟩⟩)))
efgred.d 𝐷 = (𝑊 𝑥𝑊 ran (𝑇𝑥))
efgred.s 𝑆 = (𝑚 ∈ {𝑡 ∈ (Word 𝑊 ∖ {∅}) ∣ ((𝑡‘0) ∈ 𝐷 ∧ ∀𝑘 ∈ (1..^(♯‘𝑡))(𝑡𝑘) ∈ ran (𝑇‘(𝑡‘(𝑘 − 1))))} ↦ (𝑚‘((♯‘𝑚) − 1)))
Assertion
Ref Expression
efgsres ((𝐹 ∈ dom 𝑆𝑁 ∈ (1...(♯‘𝐹))) → (𝐹 ↾ (0..^𝑁)) ∈ dom 𝑆)
Distinct variable groups:   𝑦,𝑧   𝑡,𝑛,𝑣,𝑤,𝑦,𝑧,𝑚,𝑥   𝑚,𝑀   𝑥,𝑛,𝑀,𝑡,𝑣,𝑤   𝑘,𝑚,𝑡,𝑥,𝑇   𝑘,𝑛,𝑣,𝑤,𝑦,𝑧,𝑊,𝑚,𝑡,𝑥   ,𝑚,𝑡,𝑥,𝑦,𝑧   𝑚,𝐼,𝑛,𝑡,𝑣,𝑤,𝑥,𝑦,𝑧   𝐷,𝑚,𝑡
Allowed substitution hints:   𝐷(𝑥, 𝑦, 𝑧, 𝑤, 𝑣, 𝑘, 𝑛)   (𝑤, 𝑣, 𝑘, 𝑛)   𝑆(𝑥, 𝑦, 𝑧, 𝑤, 𝑣, 𝑡, 𝑘, 𝑚, 𝑛)   𝑇(𝑦, 𝑧, 𝑤, 𝑣, 𝑛)   𝐹(𝑥, 𝑦, 𝑧, 𝑤, 𝑣, 𝑡, 𝑘, 𝑚, 𝑛)   𝐼(𝑘)   𝑀(𝑦, 𝑧, 𝑘)   𝑁(𝑥, 𝑦, 𝑧, 𝑤, 𝑣, 𝑡, 𝑘, 𝑚, 𝑛)

Proof of Theorem efgsres
Dummy variable 𝑖 is distinct from all other variables.
StepHypRef Expression
1 efgval.w . . . . . . . . 9 𝑊 = ( I ‘Word (𝐼 × 2o))
2 efgval.r . . . . . . . . 9 = ( ~FG𝐼)
3 efgval2.m . . . . . . . . 9 𝑀 = (𝑦𝐼, 𝑧 ∈ 2o ↦ ⟨𝑦, (1o𝑧)⟩)
4 efgval2.t . . . . . . . . 9 𝑇 = (𝑣𝑊 ↦ (𝑛 ∈ (0...(♯‘𝑣)), 𝑤 ∈ (𝐼 × 2o) ↦ (𝑣 splice ⟨𝑛, 𝑛, ⟨“𝑤(𝑀𝑤)”⟩⟩)))
5 efgred.d . . . . . . . . 9 𝐷 = (𝑊 𝑥𝑊 ran (𝑇𝑥))
6 efgred.s . . . . . . . . 9 𝑆 = (𝑚 ∈ {𝑡 ∈ (Word 𝑊 ∖ {∅}) ∣ ((𝑡‘0) ∈ 𝐷 ∧ ∀𝑘 ∈ (1..^(♯‘𝑡))(𝑡𝑘) ∈ ran (𝑇‘(𝑡‘(𝑘 − 1))))} ↦ (𝑚‘((♯‘𝑚) − 1)))
71, 2, 3, 4, 5, 6efgsdm 19848 . . . . . . . 8 (𝐹 ∈ dom 𝑆 ↔ (𝐹 ∈ (Word 𝑊 ∖ {∅}) ∧ (𝐹‘0) ∈ 𝐷 ∧ ∀𝑖 ∈ (1..^(♯‘𝐹))(𝐹𝑖) ∈ ran (𝑇‘(𝐹‘(𝑖 − 1)))))
87simp1bi 1163 . . . . . . 7 (𝐹 ∈ dom 𝑆𝐹 ∈ (Word 𝑊 ∖ {∅}))
98adantr 486 . . . . . 6 ((𝐹 ∈ dom 𝑆𝑁 ∈ (1...(♯‘𝐹))) → 𝐹 ∈ (Word 𝑊 ∖ {∅}))
109eldifad 3918 . . . . 5 ((𝐹 ∈ dom 𝑆𝑁 ∈ (1...(♯‘𝐹))) → 𝐹 ∈ Word 𝑊)
11 fz1ssfz0 13672 . . . . . 6 (1...(♯‘𝐹)) ⊆ (0...(♯‘𝐹))
12 simpr 490 . . . . . 6 ((𝐹 ∈ dom 𝑆𝑁 ∈ (1...(♯‘𝐹))) → 𝑁 ∈ (1...(♯‘𝐹)))
1311, 12sselid 3936 . . . . 5 ((𝐹 ∈ dom 𝑆𝑁 ∈ (1...(♯‘𝐹))) → 𝑁 ∈ (0...(♯‘𝐹)))
14 pfxres 14743 . . . . 5 ((𝐹 ∈ Word 𝑊𝑁 ∈ (0...(♯‘𝐹))) → (𝐹 prefix 𝑁) = (𝐹 ↾ (0..^𝑁)))
1510, 13, 14syl2anc 596 . . . 4 ((𝐹 ∈ dom 𝑆𝑁 ∈ (1...(♯‘𝐹))) → (𝐹 prefix 𝑁) = (𝐹 ↾ (0..^𝑁)))
16 pfxcl 14741 . . . . 5 (𝐹 ∈ Word 𝑊 → (𝐹 prefix 𝑁) ∈ Word 𝑊)
1710, 16syl 18 . . . 4 ((𝐹 ∈ dom 𝑆𝑁 ∈ (1...(♯‘𝐹))) → (𝐹 prefix 𝑁) ∈ Word 𝑊)
1815, 17eqeltrrd 2866 . . 3 ((𝐹 ∈ dom 𝑆𝑁 ∈ (1...(♯‘𝐹))) → (𝐹 ↾ (0..^𝑁)) ∈ Word 𝑊)
19 pfxlen 14747 . . . . . . 7 ((𝐹 ∈ Word 𝑊𝑁 ∈ (0...(♯‘𝐹))) → (♯‘(𝐹 prefix 𝑁)) = 𝑁)
2010, 13, 19syl2anc 596 . . . . . 6 ((𝐹 ∈ dom 𝑆𝑁 ∈ (1...(♯‘𝐹))) → (♯‘(𝐹 prefix 𝑁)) = 𝑁)
21 elfznn 13602 . . . . . . 7 (𝑁 ∈ (1...(♯‘𝐹)) → 𝑁 ∈ ℕ)
2221adantl 487 . . . . . 6 ((𝐹 ∈ dom 𝑆𝑁 ∈ (1...(♯‘𝐹))) → 𝑁 ∈ ℕ)
2320, 22eqeltrd 2865 . . . . 5 ((𝐹 ∈ dom 𝑆𝑁 ∈ (1...(♯‘𝐹))) → (♯‘(𝐹 prefix 𝑁)) ∈ ℕ)
24 wrdfin 14591 . . . . . 6 ((𝐹 prefix 𝑁) ∈ Word 𝑊 → (𝐹 prefix 𝑁) ∈ Fin)
25 hashnncl 14424 . . . . . 6 ((𝐹 prefix 𝑁) ∈ Fin → ((♯‘(𝐹 prefix 𝑁)) ∈ ℕ ↔ (𝐹 prefix 𝑁) ≠ ∅))
2617, 24, 253syl 19 . . . . 5 ((𝐹 ∈ dom 𝑆𝑁 ∈ (1...(♯‘𝐹))) → ((♯‘(𝐹 prefix 𝑁)) ∈ ℕ ↔ (𝐹 prefix 𝑁) ≠ ∅))
2723, 26mpbid 235 . . . 4 ((𝐹 ∈ dom 𝑆𝑁 ∈ (1...(♯‘𝐹))) → (𝐹 prefix 𝑁) ≠ ∅)
2815, 27eqnetrrd 3028 . . 3 ((𝐹 ∈ dom 𝑆𝑁 ∈ (1...(♯‘𝐹))) → (𝐹 ↾ (0..^𝑁)) ≠ ∅)
29 eldifsn 4755 . . 3 ((𝐹 ↾ (0..^𝑁)) ∈ (Word 𝑊 ∖ {∅}) ↔ ((𝐹 ↾ (0..^𝑁)) ∈ Word 𝑊 ∧ (𝐹 ↾ (0..^𝑁)) ≠ ∅))
3018, 28, 29sylanbrc 595 . 2 ((𝐹 ∈ dom 𝑆𝑁 ∈ (1...(♯‘𝐹))) → (𝐹 ↾ (0..^𝑁)) ∈ (Word 𝑊 ∖ {∅}))
31 lbfzo0 13749 . . . . 5 (0 ∈ (0..^𝑁) ↔ 𝑁 ∈ ℕ)
3222, 31sylibr 237 . . . 4 ((𝐹 ∈ dom 𝑆𝑁 ∈ (1...(♯‘𝐹))) → 0 ∈ (0..^𝑁))
3332fvresd 6905 . . 3 ((𝐹 ∈ dom 𝑆𝑁 ∈ (1...(♯‘𝐹))) → ((𝐹 ↾ (0..^𝑁))‘0) = (𝐹‘0))
347simp2bi 1164 . . . 4 (𝐹 ∈ dom 𝑆 → (𝐹‘0) ∈ 𝐷)
3534adantr 486 . . 3 ((𝐹 ∈ dom 𝑆𝑁 ∈ (1...(♯‘𝐹))) → (𝐹‘0) ∈ 𝐷)
3633, 35eqeltrd 2865 . 2 ((𝐹 ∈ dom 𝑆𝑁 ∈ (1...(♯‘𝐹))) → ((𝐹 ↾ (0..^𝑁))‘0) ∈ 𝐷)
37 elfzuz3 13569 . . . . . . 7 (𝑁 ∈ (1...(♯‘𝐹)) → (♯‘𝐹) ∈ (ℤ𝑁))
3837adantl 487 . . . . . 6 ((𝐹 ∈ dom 𝑆𝑁 ∈ (1...(♯‘𝐹))) → (♯‘𝐹) ∈ (ℤ𝑁))
39 fzoss2 13737 . . . . . 6 ((♯‘𝐹) ∈ (ℤ𝑁) → (1..^𝑁) ⊆ (1..^(♯‘𝐹)))
4038, 39syl 18 . . . . 5 ((𝐹 ∈ dom 𝑆𝑁 ∈ (1...(♯‘𝐹))) → (1..^𝑁) ⊆ (1..^(♯‘𝐹)))
417simp3bi 1165 . . . . . 6 (𝐹 ∈ dom 𝑆 → ∀𝑖 ∈ (1..^(♯‘𝐹))(𝐹𝑖) ∈ ran (𝑇‘(𝐹‘(𝑖 − 1))))
4241adantr 486 . . . . 5 ((𝐹 ∈ dom 𝑆𝑁 ∈ (1...(♯‘𝐹))) → ∀𝑖 ∈ (1..^(♯‘𝐹))(𝐹𝑖) ∈ ran (𝑇‘(𝐹‘(𝑖 − 1))))
43 ssralv 4007 . . . . 5 ((1..^𝑁) ⊆ (1..^(♯‘𝐹)) → (∀𝑖 ∈ (1..^(♯‘𝐹))(𝐹𝑖) ∈ ran (𝑇‘(𝐹‘(𝑖 − 1))) → ∀𝑖 ∈ (1..^𝑁)(𝐹𝑖) ∈ ran (𝑇‘(𝐹‘(𝑖 − 1)))))
4440, 42, 43sylc 66 . . . 4 ((𝐹 ∈ dom 𝑆𝑁 ∈ (1...(♯‘𝐹))) → ∀𝑖 ∈ (1..^𝑁)(𝐹𝑖) ∈ ran (𝑇‘(𝐹‘(𝑖 − 1))))
45 fzo0ss1 13739 . . . . . . . 8 (1..^𝑁) ⊆ (0..^𝑁)
4645sseli 3934 . . . . . . 7 (𝑖 ∈ (1..^𝑁) → 𝑖 ∈ (0..^𝑁))
4746fvresd 6905 . . . . . 6 (𝑖 ∈ (1..^𝑁) → ((𝐹 ↾ (0..^𝑁))‘𝑖) = (𝐹𝑖))
48 elfzoel2 13707 . . . . . . . . . . . . 13 (𝑖 ∈ (1..^𝑁) → 𝑁 ∈ ℤ)
49 peano2zm 12656 . . . . . . . . . . . . 13 (𝑁 ∈ ℤ → (𝑁 − 1) ∈ ℤ)
5048, 49syl 18 . . . . . . . . . . . 12 (𝑖 ∈ (1..^𝑁) → (𝑁 − 1) ∈ ℤ)
51 uzid 12897 . . . . . . . . . . . . . 14 (𝑁 ∈ ℤ → 𝑁 ∈ (ℤ𝑁))
5248, 51syl 18 . . . . . . . . . . . . 13 (𝑖 ∈ (1..^𝑁) → 𝑁 ∈ (ℤ𝑁))
5348zcnd 12721 . . . . . . . . . . . . . . 15 (𝑖 ∈ (1..^𝑁) → 𝑁 ∈ ℂ)
54 ax-1cn 11177 . . . . . . . . . . . . . . 15 1 ∈ ℂ
55 npcan 11485 . . . . . . . . . . . . . . 15 ((𝑁 ∈ ℂ ∧ 1 ∈ ℂ) → ((𝑁 − 1) + 1) = 𝑁)
5653, 54, 55sylancl 598 . . . . . . . . . . . . . 14 (𝑖 ∈ (1..^𝑁) → ((𝑁 − 1) + 1) = 𝑁)
5756fveq2d 6889 . . . . . . . . . . . . 13 (𝑖 ∈ (1..^𝑁) → (ℤ‘((𝑁 − 1) + 1)) = (ℤ𝑁))
5852, 57eleqtrrd 2868 . . . . . . . . . . . 12 (𝑖 ∈ (1..^𝑁) → 𝑁 ∈ (ℤ‘((𝑁 − 1) + 1)))
59 peano2uzr 12947 . . . . . . . . . . . 12 (((𝑁 − 1) ∈ ℤ ∧ 𝑁 ∈ (ℤ‘((𝑁 − 1) + 1))) → 𝑁 ∈ (ℤ‘(𝑁 − 1)))
6050, 58, 59syl2anc 596 . . . . . . . . . . 11 (𝑖 ∈ (1..^𝑁) → 𝑁 ∈ (ℤ‘(𝑁 − 1)))
61 fzoss2 13737 . . . . . . . . . . 11 (𝑁 ∈ (ℤ‘(𝑁 − 1)) → (0..^(𝑁 − 1)) ⊆ (0..^𝑁))
6260, 61syl 18 . . . . . . . . . 10 (𝑖 ∈ (1..^𝑁) → (0..^(𝑁 − 1)) ⊆ (0..^𝑁))
63 elfzo1elm1fzo0 13818 . . . . . . . . . 10 (𝑖 ∈ (1..^𝑁) → (𝑖 − 1) ∈ (0..^(𝑁 − 1)))
6462, 63sseldd 3939 . . . . . . . . 9 (𝑖 ∈ (1..^𝑁) → (𝑖 − 1) ∈ (0..^𝑁))
6564fvresd 6905 . . . . . . . 8 (𝑖 ∈ (1..^𝑁) → ((𝐹 ↾ (0..^𝑁))‘(𝑖 − 1)) = (𝐹‘(𝑖 − 1)))
6665fveq2d 6889 . . . . . . 7 (𝑖 ∈ (1..^𝑁) → (𝑇‘((𝐹 ↾ (0..^𝑁))‘(𝑖 − 1))) = (𝑇‘(𝐹‘(𝑖 − 1))))
6766rneqd 5930 . . . . . 6 (𝑖 ∈ (1..^𝑁) → ran (𝑇‘((𝐹 ↾ (0..^𝑁))‘(𝑖 − 1))) = ran (𝑇‘(𝐹‘(𝑖 − 1))))
6847, 67eleq12d 2859 . . . . 5 (𝑖 ∈ (1..^𝑁) → (((𝐹 ↾ (0..^𝑁))‘𝑖) ∈ ran (𝑇‘((𝐹 ↾ (0..^𝑁))‘(𝑖 − 1))) ↔ (𝐹𝑖) ∈ ran (𝑇‘(𝐹‘(𝑖 − 1)))))
6968ralbiia 3111 . . . 4 (∀𝑖 ∈ (1..^𝑁)((𝐹 ↾ (0..^𝑁))‘𝑖) ∈ ran (𝑇‘((𝐹 ↾ (0..^𝑁))‘(𝑖 − 1))) ↔ ∀𝑖 ∈ (1..^𝑁)(𝐹𝑖) ∈ ran (𝑇‘(𝐹‘(𝑖 − 1))))
7044, 69sylibr 237 . . 3 ((𝐹 ∈ dom 𝑆𝑁 ∈ (1...(♯‘𝐹))) → ∀𝑖 ∈ (1..^𝑁)((𝐹 ↾ (0..^𝑁))‘𝑖) ∈ ran (𝑇‘((𝐹 ↾ (0..^𝑁))‘(𝑖 − 1))))
7115fveq2d 6889 . . . . 5 ((𝐹 ∈ dom 𝑆𝑁 ∈ (1...(♯‘𝐹))) → (♯‘(𝐹 prefix 𝑁)) = (♯‘(𝐹 ↾ (0..^𝑁))))
7271, 20eqtr3d 2802 . . . 4 ((𝐹 ∈ dom 𝑆𝑁 ∈ (1...(♯‘𝐹))) → (♯‘(𝐹 ↾ (0..^𝑁))) = 𝑁)
7372oveq2d 7435 . . 3 ((𝐹 ∈ dom 𝑆𝑁 ∈ (1...(♯‘𝐹))) → (1..^(♯‘(𝐹 ↾ (0..^𝑁)))) = (1..^𝑁))
7470, 73raleqtrrdv 3329 . 2 ((𝐹 ∈ dom 𝑆𝑁 ∈ (1...(♯‘𝐹))) → ∀𝑖 ∈ (1..^(♯‘(𝐹 ↾ (0..^𝑁))))((𝐹 ↾ (0..^𝑁))‘𝑖) ∈ ran (𝑇‘((𝐹 ↾ (0..^𝑁))‘(𝑖 − 1))))
751, 2, 3, 4, 5, 6efgsdm 19848 . 2 ((𝐹 ↾ (0..^𝑁)) ∈ dom 𝑆 ↔ ((𝐹 ↾ (0..^𝑁)) ∈ (Word 𝑊 ∖ {∅}) ∧ ((𝐹 ↾ (0..^𝑁))‘0) ∈ 𝐷 ∧ ∀𝑖 ∈ (1..^(♯‘(𝐹 ↾ (0..^𝑁))))((𝐹 ↾ (0..^𝑁))‘𝑖) ∈ ran (𝑇‘((𝐹 ↾ (0..^𝑁))‘(𝑖 − 1)))))
7630, 36, 74, 75syl3anbrc 1362 1 ((𝐹 ∈ dom 𝑆𝑁 ∈ (1...(♯‘𝐹))) → (𝐹 ↾ (0..^𝑁)) ∈ dom 𝑆)
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  wi 4  wb 209  wa 401   = wceq 1570  wcel 2146  wne 2960  wral 3081  {crab 3418  cdif 3903  wss 3906  c0 4286  {csn 4591  cop 4597  cotp 4599   ciun 4958  cmpt 5194   I cid 5557   × cxp 5661  dom cdm 5663  ran crn 5664  cres 5665  cfv 6540  (class class class)co 7419  cmpo 7421  1oc1o 8452  2oc2o 8453  Fincfn 8949  cc 11117  0cc0 11119  1c1 11120   + caddc 11122  cmin 11460  cn 12252  cz 12610  cuz 12882  ...cfz 13555  ..^cfzo 13703  chash 14388  Word cword 14572   prefix cpfx 14734   splice csplice 14812  ⟨“cs2 14906   ~FG cefg 19824
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1828  ax-4 1842  ax-5 1943  ax-6 2000  ax-7 2041  ax-8 2148  ax-9 2156  ax-10 2179  ax-11 2195  ax-12 2216  ax-ext 2737  ax-rep 5240  ax-sep 5259  ax-nul 5271  ax-pow 5338  ax-pr 5406  ax-un 7742  ax-cnex 11175  ax-resscn 11176  ax-1cn 11177  ax-icn 11178  ax-addcl 11179  ax-addrcl 11180  ax-mulcl 11181  ax-mulrcl 11182  ax-mulcom 11183  ax-addass 11184  ax-mulass 11185  ax-distr 11186  ax-i2m1 11187  ax-1ne0 11188  ax-1rid 11189  ax-rnegex 11190  ax-rrecex 11191  ax-cnre 11192  ax-pre-lttri 11193  ax-pre-lttrn 11194  ax-pre-ltadd 11195  ax-pre-mulgt0 11196
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3or 1104  df-3an 1105  df-tru 1573  df-fal 1583  df-ex 1813  df-nf 1817  df-sb 2100  df-mo 2569  df-eu 2599  df-clab 2744  df-cleq 2757  df-clel 2840  df-nfc 2914  df-ne 2961  df-nel 3067  df-ral 3082  df-rex 3092  df-reu 3372  df-rab 3419  df-v 3459  df-sbc 3747  df-csb 3855  df-dif 3909  df-un 3911  df-in 3913  df-ss 3923  df-pss 3926  df-nul 4287  df-if 4490  df-pw 4566  df-sn 4592  df-pr 4594  df-op 4598  df-uni 4875  df-int 4915  df-iun 4960  df-br 5112  df-opab 5176  df-mpt 5195  df-tr 5221  df-id 5558  df-eprel 5563  df-po 5571  df-so 5572  df-fr 5616  df-we 5618  df-xp 5669  df-rel 5670  df-cnv 5671  df-co 5672  df-dm 5673  df-rn 5674  df-res 5675  df-ima 5676  df-pred 6306  df-ord 6367  df-on 6368  df-lim 6369  df-suc 6370  df-iota 6496  df-fun 6542  df-fn 6543  df-f 6544  df-f1 6545  df-fo 6546  df-f1o 6547  df-fv 6548  df-riota 7376  df-ov 7422  df-oprab 7423  df-mpo 7424  df-om 7869  df-1st 7992  df-2nd 7993  df-frecs 8284  df-wrecs 8315  df-recs 8364  df-rdg 8403  df-1o 8459  df-er 8700  df-en 8950  df-dom 8951  df-sdom 8952  df-fin 8953  df-card 9941  df-pnf 11264  df-mnf 11265  df-xr 11266  df-ltxr 11267  df-le 11268  df-sub 11462  df-neg 11463  df-nn 12253  df-n0 12524  df-z 12611  df-uz 12883  df-fz 13556  df-fzo 13704  df-hash 14389  df-word 14573  df-substr 14703  df-pfx 14735
This theorem is used by:  efgredlemd  19862  efgredlem  19865
  Copyright terms: Public domain W3C validator