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

Theorem efgredlema 18069
Description: The reduced word that forms the base of the sequence in efgsval 18060 is uniquely determined, given the ending representation. (Contributed by Mario Carneiro, 1-Oct-2015.)
Hypotheses
Ref Expression
efgval.w 𝑊 = ( I ‘Word (𝐼 × 2𝑜))
efgval.r = ( ~FG𝐼)
efgval2.m 𝑀 = (𝑦𝐼, 𝑧 ∈ 2𝑜 ↦ ⟨𝑦, (1𝑜𝑧)⟩)
efgval2.t 𝑇 = (𝑣𝑊 ↦ (𝑛 ∈ (0...(#‘𝑣)), 𝑤 ∈ (𝐼 × 2𝑜) ↦ (𝑣 splice ⟨𝑛, 𝑛, ⟨“𝑤(𝑀𝑤)”⟩⟩)))
efgred.d 𝐷 = (𝑊 𝑥𝑊 ran (𝑇𝑥))
efgred.s 𝑆 = (𝑚 ∈ {𝑡 ∈ (Word 𝑊 ∖ {∅}) ∣ ((𝑡‘0) ∈ 𝐷 ∧ ∀𝑘 ∈ (1..^(#‘𝑡))(𝑡𝑘) ∈ ran (𝑇‘(𝑡‘(𝑘 − 1))))} ↦ (𝑚‘((#‘𝑚) − 1)))
efgredlem.1 (𝜑 → ∀𝑎 ∈ dom 𝑆𝑏 ∈ dom 𝑆((#‘(𝑆𝑎)) < (#‘(𝑆𝐴)) → ((𝑆𝑎) = (𝑆𝑏) → (𝑎‘0) = (𝑏‘0))))
efgredlem.2 (𝜑𝐴 ∈ dom 𝑆)
efgredlem.3 (𝜑𝐵 ∈ dom 𝑆)
efgredlem.4 (𝜑 → (𝑆𝐴) = (𝑆𝐵))
efgredlem.5 (𝜑 → ¬ (𝐴‘0) = (𝐵‘0))
Assertion
Ref Expression
efgredlema (𝜑 → (((#‘𝐴) − 1) ∈ ℕ ∧ ((#‘𝐵) − 1) ∈ ℕ))
Distinct variable groups:   𝑎,𝑏,𝐴   𝑦,𝑎,𝑧,𝑏   𝑡,𝑛,𝑣,𝑤,𝑦,𝑧   𝑚,𝑎,𝑛,𝑡,𝑣,𝑤,𝑥,𝑀,𝑏   𝑘,𝑎,𝑇,𝑏,𝑚,𝑡,𝑥   𝑊,𝑎,𝑏   𝑘,𝑛,𝑣,𝑤,𝑦,𝑧,𝑊,𝑚,𝑡,𝑥   ,𝑎,𝑏,𝑚,𝑡,𝑥,𝑦,𝑧   𝐵,𝑎,𝑏   𝑆,𝑎,𝑏   𝐼,𝑎,𝑏,𝑚,𝑛,𝑡,𝑣,𝑤,𝑥,𝑦,𝑧   𝐷,𝑎,𝑏,𝑚,𝑡
Allowed substitution hints:   𝜑(𝑥,𝑦,𝑧,𝑤,𝑣,𝑡,𝑘,𝑚,𝑛,𝑎,𝑏)   𝐴(𝑥,𝑦,𝑧,𝑤,𝑣,𝑡,𝑘,𝑚,𝑛)   𝐵(𝑥,𝑦,𝑧,𝑤,𝑣,𝑡,𝑘,𝑚,𝑛)   𝐷(𝑥,𝑦,𝑧,𝑤,𝑣,𝑘,𝑛)   (𝑤,𝑣,𝑘,𝑛)   𝑆(𝑥,𝑦,𝑧,𝑤,𝑣,𝑡,𝑘,𝑚,𝑛)   𝑇(𝑦,𝑧,𝑤,𝑣,𝑛)   𝐼(𝑘)   𝑀(𝑦,𝑧,𝑘)

Proof of Theorem efgredlema
Dummy variable 𝑢 is distinct from all other variables.
StepHypRef Expression
1 efgredlem.5 . . . . 5 (𝜑 → ¬ (𝐴‘0) = (𝐵‘0))
2 efgredlem.3 . . . . . . . . 9 (𝜑𝐵 ∈ dom 𝑆)
3 efgval.w . . . . . . . . . 10 𝑊 = ( I ‘Word (𝐼 × 2𝑜))
4 efgval.r . . . . . . . . . 10 = ( ~FG𝐼)
5 efgval2.m . . . . . . . . . 10 𝑀 = (𝑦𝐼, 𝑧 ∈ 2𝑜 ↦ ⟨𝑦, (1𝑜𝑧)⟩)
6 efgval2.t . . . . . . . . . 10 𝑇 = (𝑣𝑊 ↦ (𝑛 ∈ (0...(#‘𝑣)), 𝑤 ∈ (𝐼 × 2𝑜) ↦ (𝑣 splice ⟨𝑛, 𝑛, ⟨“𝑤(𝑀𝑤)”⟩⟩)))
7 efgred.d . . . . . . . . . 10 𝐷 = (𝑊 𝑥𝑊 ran (𝑇𝑥))
8 efgred.s . . . . . . . . . 10 𝑆 = (𝑚 ∈ {𝑡 ∈ (Word 𝑊 ∖ {∅}) ∣ ((𝑡‘0) ∈ 𝐷 ∧ ∀𝑘 ∈ (1..^(#‘𝑡))(𝑡𝑘) ∈ ran (𝑇‘(𝑡‘(𝑘 − 1))))} ↦ (𝑚‘((#‘𝑚) − 1)))
93, 4, 5, 6, 7, 8efgsval 18060 . . . . . . . . 9 (𝐵 ∈ dom 𝑆 → (𝑆𝐵) = (𝐵‘((#‘𝐵) − 1)))
102, 9syl 17 . . . . . . . 8 (𝜑 → (𝑆𝐵) = (𝐵‘((#‘𝐵) − 1)))
11 efgredlem.4 . . . . . . . . 9 (𝜑 → (𝑆𝐴) = (𝑆𝐵))
12 efgredlem.2 . . . . . . . . . 10 (𝜑𝐴 ∈ dom 𝑆)
133, 4, 5, 6, 7, 8efgsval 18060 . . . . . . . . . 10 (𝐴 ∈ dom 𝑆 → (𝑆𝐴) = (𝐴‘((#‘𝐴) − 1)))
1412, 13syl 17 . . . . . . . . 9 (𝜑 → (𝑆𝐴) = (𝐴‘((#‘𝐴) − 1)))
1511, 14eqtr3d 2662 . . . . . . . 8 (𝜑 → (𝑆𝐵) = (𝐴‘((#‘𝐴) − 1)))
1610, 15eqtr3d 2662 . . . . . . 7 (𝜑 → (𝐵‘((#‘𝐵) − 1)) = (𝐴‘((#‘𝐴) − 1)))
17 oveq1 6612 . . . . . . . . 9 ((#‘𝐴) = 1 → ((#‘𝐴) − 1) = (1 − 1))
18 1m1e0 11034 . . . . . . . . 9 (1 − 1) = 0
1917, 18syl6eq 2676 . . . . . . . 8 ((#‘𝐴) = 1 → ((#‘𝐴) − 1) = 0)
2019fveq2d 6154 . . . . . . 7 ((#‘𝐴) = 1 → (𝐴‘((#‘𝐴) − 1)) = (𝐴‘0))
2116, 20sylan9eq 2680 . . . . . 6 ((𝜑 ∧ (#‘𝐴) = 1) → (𝐵‘((#‘𝐵) − 1)) = (𝐴‘0))
2211eleq1d 2688 . . . . . . . . 9 (𝜑 → ((𝑆𝐴) ∈ 𝐷 ↔ (𝑆𝐵) ∈ 𝐷))
233, 4, 5, 6, 7, 8efgs1b 18065 . . . . . . . . . 10 (𝐴 ∈ dom 𝑆 → ((𝑆𝐴) ∈ 𝐷 ↔ (#‘𝐴) = 1))
2412, 23syl 17 . . . . . . . . 9 (𝜑 → ((𝑆𝐴) ∈ 𝐷 ↔ (#‘𝐴) = 1))
253, 4, 5, 6, 7, 8efgs1b 18065 . . . . . . . . . 10 (𝐵 ∈ dom 𝑆 → ((𝑆𝐵) ∈ 𝐷 ↔ (#‘𝐵) = 1))
262, 25syl 17 . . . . . . . . 9 (𝜑 → ((𝑆𝐵) ∈ 𝐷 ↔ (#‘𝐵) = 1))
2722, 24, 263bitr3d 298 . . . . . . . 8 (𝜑 → ((#‘𝐴) = 1 ↔ (#‘𝐵) = 1))
2827biimpa 501 . . . . . . 7 ((𝜑 ∧ (#‘𝐴) = 1) → (#‘𝐵) = 1)
29 oveq1 6612 . . . . . . . . 9 ((#‘𝐵) = 1 → ((#‘𝐵) − 1) = (1 − 1))
3029, 18syl6eq 2676 . . . . . . . 8 ((#‘𝐵) = 1 → ((#‘𝐵) − 1) = 0)
3130fveq2d 6154 . . . . . . 7 ((#‘𝐵) = 1 → (𝐵‘((#‘𝐵) − 1)) = (𝐵‘0))
3228, 31syl 17 . . . . . 6 ((𝜑 ∧ (#‘𝐴) = 1) → (𝐵‘((#‘𝐵) − 1)) = (𝐵‘0))
3321, 32eqtr3d 2662 . . . . 5 ((𝜑 ∧ (#‘𝐴) = 1) → (𝐴‘0) = (𝐵‘0))
341, 33mtand 690 . . . 4 (𝜑 → ¬ (#‘𝐴) = 1)
353, 4, 5, 6, 7, 8efgsdm 18059 . . . . . . . 8 (𝐴 ∈ dom 𝑆 ↔ (𝐴 ∈ (Word 𝑊 ∖ {∅}) ∧ (𝐴‘0) ∈ 𝐷 ∧ ∀𝑢 ∈ (1..^(#‘𝐴))(𝐴𝑢) ∈ ran (𝑇‘(𝐴‘(𝑢 − 1)))))
3635simp1bi 1074 . . . . . . 7 (𝐴 ∈ dom 𝑆𝐴 ∈ (Word 𝑊 ∖ {∅}))
37 eldifsn 4292 . . . . . . . 8 (𝐴 ∈ (Word 𝑊 ∖ {∅}) ↔ (𝐴 ∈ Word 𝑊𝐴 ≠ ∅))
38 lennncl 13259 . . . . . . . 8 ((𝐴 ∈ Word 𝑊𝐴 ≠ ∅) → (#‘𝐴) ∈ ℕ)
3937, 38sylbi 207 . . . . . . 7 (𝐴 ∈ (Word 𝑊 ∖ {∅}) → (#‘𝐴) ∈ ℕ)
4012, 36, 393syl 18 . . . . . 6 (𝜑 → (#‘𝐴) ∈ ℕ)
41 elnn1uz2 11709 . . . . . 6 ((#‘𝐴) ∈ ℕ ↔ ((#‘𝐴) = 1 ∨ (#‘𝐴) ∈ (ℤ‘2)))
4240, 41sylib 208 . . . . 5 (𝜑 → ((#‘𝐴) = 1 ∨ (#‘𝐴) ∈ (ℤ‘2)))
4342ord 392 . . . 4 (𝜑 → (¬ (#‘𝐴) = 1 → (#‘𝐴) ∈ (ℤ‘2)))
4434, 43mpd 15 . . 3 (𝜑 → (#‘𝐴) ∈ (ℤ‘2))
45 uz2m1nn 11707 . . 3 ((#‘𝐴) ∈ (ℤ‘2) → ((#‘𝐴) − 1) ∈ ℕ)
4644, 45syl 17 . 2 (𝜑 → ((#‘𝐴) − 1) ∈ ℕ)
4734, 27mtbid 314 . . . 4 (𝜑 → ¬ (#‘𝐵) = 1)
483, 4, 5, 6, 7, 8efgsdm 18059 . . . . . . . 8 (𝐵 ∈ dom 𝑆 ↔ (𝐵 ∈ (Word 𝑊 ∖ {∅}) ∧ (𝐵‘0) ∈ 𝐷 ∧ ∀𝑢 ∈ (1..^(#‘𝐵))(𝐵𝑢) ∈ ran (𝑇‘(𝐵‘(𝑢 − 1)))))
4948simp1bi 1074 . . . . . . 7 (𝐵 ∈ dom 𝑆𝐵 ∈ (Word 𝑊 ∖ {∅}))
50 eldifsn 4292 . . . . . . . 8 (𝐵 ∈ (Word 𝑊 ∖ {∅}) ↔ (𝐵 ∈ Word 𝑊𝐵 ≠ ∅))
51 lennncl 13259 . . . . . . . 8 ((𝐵 ∈ Word 𝑊𝐵 ≠ ∅) → (#‘𝐵) ∈ ℕ)
5250, 51sylbi 207 . . . . . . 7 (𝐵 ∈ (Word 𝑊 ∖ {∅}) → (#‘𝐵) ∈ ℕ)
532, 49, 523syl 18 . . . . . 6 (𝜑 → (#‘𝐵) ∈ ℕ)
54 elnn1uz2 11709 . . . . . 6 ((#‘𝐵) ∈ ℕ ↔ ((#‘𝐵) = 1 ∨ (#‘𝐵) ∈ (ℤ‘2)))
5553, 54sylib 208 . . . . 5 (𝜑 → ((#‘𝐵) = 1 ∨ (#‘𝐵) ∈ (ℤ‘2)))
5655ord 392 . . . 4 (𝜑 → (¬ (#‘𝐵) = 1 → (#‘𝐵) ∈ (ℤ‘2)))
5747, 56mpd 15 . . 3 (𝜑 → (#‘𝐵) ∈ (ℤ‘2))
58 uz2m1nn 11707 . . 3 ((#‘𝐵) ∈ (ℤ‘2) → ((#‘𝐵) − 1) ∈ ℕ)
5957, 58syl 17 . 2 (𝜑 → ((#‘𝐵) − 1) ∈ ℕ)
6046, 59jca 554 1 (𝜑 → (((#‘𝐴) − 1) ∈ ℕ ∧ ((#‘𝐵) − 1) ∈ ℕ))
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wi 4  wb 196  wo 383  wa 384   = wceq 1480  wcel 1992  wne 2796  wral 2912  {crab 2916  cdif 3557  c0 3896  {csn 4153  cop 4159  cotp 4161   ciun 4490   class class class wbr 4618  cmpt 4678   I cid 4989   × cxp 5077  dom cdm 5079  ran crn 5080  cfv 5850  (class class class)co 6605  cmpt2 6607  1𝑜c1o 7499  2𝑜c2o 7500  0cc0 9881  1c1 9882   < clt 10019  cmin 10211  cn 10965  2c2 11015  cuz 11631  ...cfz 12265  ..^cfzo 12403  #chash 13054  Word cword 13225   splice csplice 13230  ⟨“cs2 13518   ~FG cefg 18035
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-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-z 11323  df-uz 11632  df-fz 12266  df-fzo 12404  df-hash 13055  df-word 13233
This theorem is referenced by:  efgredlemf  18070  efgredlemg  18071  efgredlemd  18073  efgredlemc  18074  efgredlem  18076
  Copyright terms: Public domain W3C validator