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

Theorem algfx 16673
Description: If 𝐹 reaches a fixed point when the countdown function 𝐶 reaches 0, 𝐹 remains fixed after 𝑁 steps. (Contributed by Paul Chapman, 22-Jun-2011.)
Hypotheses
Ref Expression
algcvga.1 𝐹:𝑆𝑆
algcvga.2 𝑅 = seq0((𝐹 ∘ 1st ), (ℕ0 × {𝐴}))
algcvga.3 𝐶:𝑆⟶ℕ0
algcvga.4 (𝑧𝑆 → ((𝐶‘(𝐹𝑧)) ≠ 0 → (𝐶‘(𝐹𝑧)) < (𝐶𝑧)))
algcvga.5 𝑁 = (𝐶𝐴)
algfx.6 (𝑧𝑆 → ((𝐶𝑧) = 0 → (𝐹𝑧) = 𝑧))
Assertion
Ref Expression
algfx (𝐴𝑆 → (𝐾 ∈ (ℤ𝑁) → (𝑅𝐾) = (𝑅𝑁)))
Distinct variable groups:   𝑧,𝐶   𝑧,𝐹   𝑧,𝑅   𝑧,𝑆   𝑧,𝐾   𝑧,𝑁
Allowed substitution hint:   𝐴(𝑧)

Proof of Theorem algfx
Dummy variables 𝑘 𝑚 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 algcvga.5 . . . 4 𝑁 = (𝐶𝐴)
2 algcvga.3 . . . . 5 𝐶:𝑆⟶ℕ0
32ffvelcdmi 7077 . . . 4 (𝐴𝑆 → (𝐶𝐴) ∈ ℕ0)
41, 3eqeltrid 2864 . . 3 (𝐴𝑆𝑁 ∈ ℕ0)
54nn0zd 12643 . 2 (𝐴𝑆𝑁 ∈ ℤ)
6 uzval 12892 . . . . . . 7 (𝑁 ∈ ℤ → (ℤ𝑁) = {𝑧 ∈ ℤ ∣ 𝑁𝑧})
76eleq2d 2846 . . . . . 6 (𝑁 ∈ ℤ → (𝐾 ∈ (ℤ𝑁) ↔ 𝐾 ∈ {𝑧 ∈ ℤ ∣ 𝑁𝑧}))
87pm5.32i 585 . . . . 5 ((𝑁 ∈ ℤ ∧ 𝐾 ∈ (ℤ𝑁)) ↔ (𝑁 ∈ ℤ ∧ 𝐾 ∈ {𝑧 ∈ ℤ ∣ 𝑁𝑧}))
9 fveqeq2 6888 . . . . . . 7 (𝑚 = 𝑁 → ((𝑅𝑚) = (𝑅𝑁) ↔ (𝑅𝑁) = (𝑅𝑁)))
109imbi2d 343 . . . . . 6 (𝑚 = 𝑁 → ((𝐴𝑆 → (𝑅𝑚) = (𝑅𝑁)) ↔ (𝐴𝑆 → (𝑅𝑁) = (𝑅𝑁))))
11 fveqeq2 6888 . . . . . . 7 (𝑚 = 𝑘 → ((𝑅𝑚) = (𝑅𝑁) ↔ (𝑅𝑘) = (𝑅𝑁)))
1211imbi2d 343 . . . . . 6 (𝑚 = 𝑘 → ((𝐴𝑆 → (𝑅𝑚) = (𝑅𝑁)) ↔ (𝐴𝑆 → (𝑅𝑘) = (𝑅𝑁))))
13 fveqeq2 6888 . . . . . . 7 (𝑚 = (𝑘 + 1) → ((𝑅𝑚) = (𝑅𝑁) ↔ (𝑅‘(𝑘 + 1)) = (𝑅𝑁)))
1413imbi2d 343 . . . . . 6 (𝑚 = (𝑘 + 1) → ((𝐴𝑆 → (𝑅𝑚) = (𝑅𝑁)) ↔ (𝐴𝑆 → (𝑅‘(𝑘 + 1)) = (𝑅𝑁))))
15 fveqeq2 6888 . . . . . . 7 (𝑚 = 𝐾 → ((𝑅𝑚) = (𝑅𝑁) ↔ (𝑅𝐾) = (𝑅𝑁)))
1615imbi2d 343 . . . . . 6 (𝑚 = 𝐾 → ((𝐴𝑆 → (𝑅𝑚) = (𝑅𝑁)) ↔ (𝐴𝑆 → (𝑅𝐾) = (𝑅𝑁))))
17 eqidd 2761 . . . . . . 7 (𝐴𝑆 → (𝑅𝑁) = (𝑅𝑁))
1817a1i 11 . . . . . 6 (𝑁 ∈ ℤ → (𝐴𝑆 → (𝑅𝑁) = (𝑅𝑁)))
196eleq2d 2846 . . . . . . . . 9 (𝑁 ∈ ℤ → (𝑘 ∈ (ℤ𝑁) ↔ 𝑘 ∈ {𝑧 ∈ ℤ ∣ 𝑁𝑧}))
2019pm5.32i 585 . . . . . . . 8 ((𝑁 ∈ ℤ ∧ 𝑘 ∈ (ℤ𝑁)) ↔ (𝑁 ∈ ℤ ∧ 𝑘 ∈ {𝑧 ∈ ℤ ∣ 𝑁𝑧}))
21 eluznn0 12969 . . . . . . . . . . . . . . 15 ((𝑁 ∈ ℕ0𝑘 ∈ (ℤ𝑁)) → 𝑘 ∈ ℕ0)
224, 21sylan 592 . . . . . . . . . . . . . 14 ((𝐴𝑆𝑘 ∈ (ℤ𝑁)) → 𝑘 ∈ ℕ0)
23 nn0uz 12928 . . . . . . . . . . . . . . 15 0 = (ℤ‘0)
24 algcvga.2 . . . . . . . . . . . . . . 15 𝑅 = seq0((𝐹 ∘ 1st ), (ℕ0 × {𝐴}))
25 0zd 12630 . . . . . . . . . . . . . . 15 (𝐴𝑆 → 0 ∈ ℤ)
26 id 23 . . . . . . . . . . . . . . 15 (𝐴𝑆𝐴𝑆)
27 algcvga.1 . . . . . . . . . . . . . . . 16 𝐹:𝑆𝑆
2827a1i 11 . . . . . . . . . . . . . . 15 (𝐴𝑆𝐹:𝑆𝑆)
2923, 24, 25, 26, 28algrp1 16667 . . . . . . . . . . . . . 14 ((𝐴𝑆𝑘 ∈ ℕ0) → (𝑅‘(𝑘 + 1)) = (𝐹‘(𝑅𝑘)))
3022, 29syldan 603 . . . . . . . . . . . . 13 ((𝐴𝑆𝑘 ∈ (ℤ𝑁)) → (𝑅‘(𝑘 + 1)) = (𝐹‘(𝑅𝑘)))
3123, 24, 25, 26, 28algrf 16666 . . . . . . . . . . . . . . . 16 (𝐴𝑆𝑅:ℕ0𝑆)
3231ffvelcdmda 7078 . . . . . . . . . . . . . . 15 ((𝐴𝑆𝑘 ∈ ℕ0) → (𝑅𝑘) ∈ 𝑆)
3322, 32syldan 603 . . . . . . . . . . . . . 14 ((𝐴𝑆𝑘 ∈ (ℤ𝑁)) → (𝑅𝑘) ∈ 𝑆)
34 algcvga.4 . . . . . . . . . . . . . . . 16 (𝑧𝑆 → ((𝐶‘(𝐹𝑧)) ≠ 0 → (𝐶‘(𝐹𝑧)) < (𝐶𝑧)))
3527, 24, 2, 34, 1algcvga 16672 . . . . . . . . . . . . . . 15 (𝐴𝑆 → (𝑘 ∈ (ℤ𝑁) → (𝐶‘(𝑅𝑘)) = 0))
3635imp 412 . . . . . . . . . . . . . 14 ((𝐴𝑆𝑘 ∈ (ℤ𝑁)) → (𝐶‘(𝑅𝑘)) = 0)
37 fveqeq2 6888 . . . . . . . . . . . . . . . 16 (𝑧 = (𝑅𝑘) → ((𝐶𝑧) = 0 ↔ (𝐶‘(𝑅𝑘)) = 0))
38 fveq2 6879 . . . . . . . . . . . . . . . . 17 (𝑧 = (𝑅𝑘) → (𝐹𝑧) = (𝐹‘(𝑅𝑘)))
39 id 23 . . . . . . . . . . . . . . . . 17 (𝑧 = (𝑅𝑘) → 𝑧 = (𝑅𝑘))
4038, 39eqeq12d 2776 . . . . . . . . . . . . . . . 16 (𝑧 = (𝑅𝑘) → ((𝐹𝑧) = 𝑧 ↔ (𝐹‘(𝑅𝑘)) = (𝑅𝑘)))
4137, 40imbi12d 347 . . . . . . . . . . . . . . 15 (𝑧 = (𝑅𝑘) → (((𝐶𝑧) = 0 → (𝐹𝑧) = 𝑧) ↔ ((𝐶‘(𝑅𝑘)) = 0 → (𝐹‘(𝑅𝑘)) = (𝑅𝑘))))
42 algfx.6 . . . . . . . . . . . . . . 15 (𝑧𝑆 → ((𝐶𝑧) = 0 → (𝐹𝑧) = 𝑧))
4341, 42vtoclga 3536 . . . . . . . . . . . . . 14 ((𝑅𝑘) ∈ 𝑆 → ((𝐶‘(𝑅𝑘)) = 0 → (𝐹‘(𝑅𝑘)) = (𝑅𝑘)))
4433, 36, 43sylc 66 . . . . . . . . . . . . 13 ((𝐴𝑆𝑘 ∈ (ℤ𝑁)) → (𝐹‘(𝑅𝑘)) = (𝑅𝑘))
4530, 44eqtrd 2795 . . . . . . . . . . . 12 ((𝐴𝑆𝑘 ∈ (ℤ𝑁)) → (𝑅‘(𝑘 + 1)) = (𝑅𝑘))
4645eqeq1d 2762 . . . . . . . . . . 11 ((𝐴𝑆𝑘 ∈ (ℤ𝑁)) → ((𝑅‘(𝑘 + 1)) = (𝑅𝑁) ↔ (𝑅𝑘) = (𝑅𝑁)))
4746biimprd 251 . . . . . . . . . 10 ((𝐴𝑆𝑘 ∈ (ℤ𝑁)) → ((𝑅𝑘) = (𝑅𝑁) → (𝑅‘(𝑘 + 1)) = (𝑅𝑁)))
4847expcom 419 . . . . . . . . 9 (𝑘 ∈ (ℤ𝑁) → (𝐴𝑆 → ((𝑅𝑘) = (𝑅𝑁) → (𝑅‘(𝑘 + 1)) = (𝑅𝑁))))
4948adantl 487 . . . . . . . 8 ((𝑁 ∈ ℤ ∧ 𝑘 ∈ (ℤ𝑁)) → (𝐴𝑆 → ((𝑅𝑘) = (𝑅𝑁) → (𝑅‘(𝑘 + 1)) = (𝑅𝑁))))
5020, 49sylbir 238 . . . . . . 7 ((𝑁 ∈ ℤ ∧ 𝑘 ∈ {𝑧 ∈ ℤ ∣ 𝑁𝑧}) → (𝐴𝑆 → ((𝑅𝑘) = (𝑅𝑁) → (𝑅‘(𝑘 + 1)) = (𝑅𝑁))))
5150a2d 30 . . . . . 6 ((𝑁 ∈ ℤ ∧ 𝑘 ∈ {𝑧 ∈ ℤ ∣ 𝑁𝑧}) → ((𝐴𝑆 → (𝑅𝑘) = (𝑅𝑁)) → (𝐴𝑆 → (𝑅‘(𝑘 + 1)) = (𝑅𝑁))))
5210, 12, 14, 16, 18, 51uzind3 12718 . . . . 5 ((𝑁 ∈ ℤ ∧ 𝐾 ∈ {𝑧 ∈ ℤ ∣ 𝑁𝑧}) → (𝐴𝑆 → (𝑅𝐾) = (𝑅𝑁)))
538, 52sylbi 220 . . . 4 ((𝑁 ∈ ℤ ∧ 𝐾 ∈ (ℤ𝑁)) → (𝐴𝑆 → (𝑅𝐾) = (𝑅𝑁)))
5453ex 418 . . 3 (𝑁 ∈ ℤ → (𝐾 ∈ (ℤ𝑁) → (𝐴𝑆 → (𝑅𝐾) = (𝑅𝑁))))
5554com3r 88 . 2 (𝐴𝑆 → (𝑁 ∈ ℤ → (𝐾 ∈ (ℤ𝑁) → (𝑅𝐾) = (𝑅𝑁))))
565, 55mpd 16 1 (𝐴𝑆 → (𝐾 ∈ (ℤ𝑁) → (𝑅𝐾) = (𝑅𝑁)))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  wi 4  wa 401   = wceq 1570  wcel 2145  wne 2955  {crab 3412  {csn 4584   class class class wbr 5103   × cxp 5653  ccom 5659  wf 6529  cfv 6533  (class class class)co 7414  1st c1st 7985  0cc0 11127  1c1 11128   + caddc 11130   < clt 11270  cle 11271  0cn0 12531  cz 12618  cuz 12890  seqcseq 14068
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 2147  ax-9 2155  ax-10 2178  ax-11 2194  ax-12 2213  ax-ext 2732  ax-sep 5251  ax-nul 5263  ax-pow 5330  ax-pr 5398  ax-un 7737  ax-cnex 11183  ax-resscn 11184  ax-1cn 11185  ax-icn 11186  ax-addcl 11187  ax-addrcl 11188  ax-mulcl 11189  ax-mulrcl 11190  ax-mulcom 11191  ax-addass 11192  ax-mulass 11193  ax-distr 11194  ax-i2m1 11195  ax-1ne0 11196  ax-1rid 11197  ax-rnegex 11198  ax-rrecex 11199  ax-cnre 11200  ax-pre-lttri 11201  ax-pre-lttrn 11202  ax-pre-ltadd 11203  ax-pre-mulgt0 11204
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 2564  df-eu 2594  df-clab 2739  df-cleq 2752  df-clel 2835  df-nfc 2909  df-ne 2956  df-nel 3062  df-ral 3077  df-rex 3087  df-reu 3366  df-rab 3413  df-v 3452  df-sbc 3740  df-csb 3848  df-dif 3902  df-un 3904  df-in 3906  df-ss 3916  df-pss 3919  df-nul 4280  df-if 4483  df-pw 4559  df-sn 4585  df-pr 4587  df-op 4591  df-uni 4868  df-iun 4953  df-br 5104  df-opab 5168  df-mpt 5187  df-tr 5213  df-id 5550  df-eprel 5555  df-po 5563  df-so 5564  df-fr 5608  df-we 5610  df-xp 5661  df-rel 5662  df-cnv 5663  df-co 5664  df-dm 5665  df-rn 5666  df-res 5667  df-ima 5668  df-pred 6299  df-ord 6360  df-on 6361  df-lim 6362  df-suc 6363  df-iota 6489  df-fun 6535  df-fn 6536  df-f 6537  df-f1 6538  df-fo 6539  df-f1o 6540  df-fv 6541  df-riota 7371  df-ov 7417  df-oprab 7418  df-mpo 7419  df-om 7864  df-1st 7987  df-2nd 7988  df-frecs 8281  df-wrecs 8312  df-recs 8361  df-rdg 8400  df-er 8699  df-en 8956  df-dom 8957  df-sdom 8958  df-pnf 11272  df-mnf 11273  df-xr 11274  df-ltxr 11275  df-le 11276  df-sub 11470  df-neg 11471  df-nn 12261  df-n0 12532  df-z 12619  df-uz 12891  df-fz 13565  df-seq 14069
This theorem is used by: (None)
  Copyright terms: Public domain W3C validator