ILE Home Intuitionistic Logic Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  ILE Home  >  Th. List  >  freccl Structured version   GIF version

Theorem freccl 5932
Description: Closure for finite recursion. (Contributed by Jim Kingdon, 25-May-2020.)
Hypotheses
Ref Expression
freccl.ex (φz(𝐹z) V)
freccl.a (φA 𝑆)
freccl.cl ((φ z 𝑆) → (𝐹z) 𝑆)
freccl.b (φB 𝜔)
Assertion
Ref Expression
freccl (φ → (frec(𝐹, A)‘B) 𝑆)
Distinct variable groups:   z,A   z,𝐹   z,𝑆   φ,z
Allowed substitution hint:   B(z)

Proof of Theorem freccl
Dummy variables x y are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 freccl.b . 2 (φB 𝜔)
2 fveq2 5121 . . . . 5 (x = B → (frec(𝐹, A)‘x) = (frec(𝐹, A)‘B))
32eleq1d 2103 . . . 4 (x = B → ((frec(𝐹, A)‘x) 𝑆 ↔ (frec(𝐹, A)‘B) 𝑆))
43imbi2d 219 . . 3 (x = B → ((φ → (frec(𝐹, A)‘x) 𝑆) ↔ (φ → (frec(𝐹, A)‘B) 𝑆)))
5 fveq2 5121 . . . . 5 (x = ∅ → (frec(𝐹, A)‘x) = (frec(𝐹, A)‘∅))
65eleq1d 2103 . . . 4 (x = ∅ → ((frec(𝐹, A)‘x) 𝑆 ↔ (frec(𝐹, A)‘∅) 𝑆))
7 fveq2 5121 . . . . 5 (x = y → (frec(𝐹, A)‘x) = (frec(𝐹, A)‘y))
87eleq1d 2103 . . . 4 (x = y → ((frec(𝐹, A)‘x) 𝑆 ↔ (frec(𝐹, A)‘y) 𝑆))
9 fveq2 5121 . . . . 5 (x = suc y → (frec(𝐹, A)‘x) = (frec(𝐹, A)‘suc y))
109eleq1d 2103 . . . 4 (x = suc y → ((frec(𝐹, A)‘x) 𝑆 ↔ (frec(𝐹, A)‘suc y) 𝑆))
11 freccl.a . . . . . 6 (φA 𝑆)
12 frec0g 5922 . . . . . 6 (A 𝑆 → (frec(𝐹, A)‘∅) = A)
1311, 12syl 14 . . . . 5 (φ → (frec(𝐹, A)‘∅) = A)
1413, 11eqeltrd 2111 . . . 4 (φ → (frec(𝐹, A)‘∅) 𝑆)
15 freccl.ex . . . . . . . . . 10 (φz(𝐹z) V)
16 frecfnom 5925 . . . . . . . . . 10 ((z(𝐹z) V A 𝑆) → frec(𝐹, A) Fn 𝜔)
1715, 11, 16syl2anc 391 . . . . . . . . 9 (φ → frec(𝐹, A) Fn 𝜔)
18 funfvex 5135 . . . . . . . . . 10 ((Fun frec(𝐹, A) y dom frec(𝐹, A)) → (frec(𝐹, A)‘y) V)
1918funfni 4942 . . . . . . . . 9 ((frec(𝐹, A) Fn 𝜔 y 𝜔) → (frec(𝐹, A)‘y) V)
2017, 19sylan 267 . . . . . . . 8 ((φ y 𝜔) → (frec(𝐹, A)‘y) V)
21 isset 2555 . . . . . . . 8 ((frec(𝐹, A)‘y) V ↔ z z = (frec(𝐹, A)‘y))
2220, 21sylib 127 . . . . . . 7 ((φ y 𝜔) → z z = (frec(𝐹, A)‘y))
23 freccl.cl . . . . . . . . . . . . 13 ((φ z 𝑆) → (𝐹z) 𝑆)
2423ex 108 . . . . . . . . . . . 12 (φ → (z 𝑆 → (𝐹z) 𝑆))
2524adantr 261 . . . . . . . . . . 11 ((φ z = (frec(𝐹, A)‘y)) → (z 𝑆 → (𝐹z) 𝑆))
26 eleq1 2097 . . . . . . . . . . . 12 (z = (frec(𝐹, A)‘y) → (z 𝑆 ↔ (frec(𝐹, A)‘y) 𝑆))
2726adantl 262 . . . . . . . . . . 11 ((φ z = (frec(𝐹, A)‘y)) → (z 𝑆 ↔ (frec(𝐹, A)‘y) 𝑆))
28 fveq2 5121 . . . . . . . . . . . . 13 (z = (frec(𝐹, A)‘y) → (𝐹z) = (𝐹‘(frec(𝐹, A)‘y)))
2928eleq1d 2103 . . . . . . . . . . . 12 (z = (frec(𝐹, A)‘y) → ((𝐹z) 𝑆 ↔ (𝐹‘(frec(𝐹, A)‘y)) 𝑆))
3029adantl 262 . . . . . . . . . . 11 ((φ z = (frec(𝐹, A)‘y)) → ((𝐹z) 𝑆 ↔ (𝐹‘(frec(𝐹, A)‘y)) 𝑆))
3125, 27, 303imtr3d 191 . . . . . . . . . 10 ((φ z = (frec(𝐹, A)‘y)) → ((frec(𝐹, A)‘y) 𝑆 → (𝐹‘(frec(𝐹, A)‘y)) 𝑆))
3231ex 108 . . . . . . . . 9 (φ → (z = (frec(𝐹, A)‘y) → ((frec(𝐹, A)‘y) 𝑆 → (𝐹‘(frec(𝐹, A)‘y)) 𝑆)))
3332exlimdv 1697 . . . . . . . 8 (φ → (z z = (frec(𝐹, A)‘y) → ((frec(𝐹, A)‘y) 𝑆 → (𝐹‘(frec(𝐹, A)‘y)) 𝑆)))
3433adantr 261 . . . . . . 7 ((φ y 𝜔) → (z z = (frec(𝐹, A)‘y) → ((frec(𝐹, A)‘y) 𝑆 → (𝐹‘(frec(𝐹, A)‘y)) 𝑆)))
3522, 34mpd 13 . . . . . 6 ((φ y 𝜔) → ((frec(𝐹, A)‘y) 𝑆 → (𝐹‘(frec(𝐹, A)‘y)) 𝑆))
3615adantr 261 . . . . . . . 8 ((φ y 𝜔) → z(𝐹z) V)
3711adantr 261 . . . . . . . 8 ((φ y 𝜔) → A 𝑆)
38 simpr 103 . . . . . . . 8 ((φ y 𝜔) → y 𝜔)
39 frecsuc 5930 . . . . . . . 8 ((z(𝐹z) V A 𝑆 y 𝜔) → (frec(𝐹, A)‘suc y) = (𝐹‘(frec(𝐹, A)‘y)))
4036, 37, 38, 39syl3anc 1134 . . . . . . 7 ((φ y 𝜔) → (frec(𝐹, A)‘suc y) = (𝐹‘(frec(𝐹, A)‘y)))
4140eleq1d 2103 . . . . . 6 ((φ y 𝜔) → ((frec(𝐹, A)‘suc y) 𝑆 ↔ (𝐹‘(frec(𝐹, A)‘y)) 𝑆))
4235, 41sylibrd 158 . . . . 5 ((φ y 𝜔) → ((frec(𝐹, A)‘y) 𝑆 → (frec(𝐹, A)‘suc y) 𝑆))
4342expcom 109 . . . 4 (y 𝜔 → (φ → ((frec(𝐹, A)‘y) 𝑆 → (frec(𝐹, A)‘suc y) 𝑆)))
446, 8, 10, 14, 43finds2 4267 . . 3 (x 𝜔 → (φ → (frec(𝐹, A)‘x) 𝑆))
454, 44vtoclga 2613 . 2 (B 𝜔 → (φ → (frec(𝐹, A)‘B) 𝑆))
461, 45mpcom 32 1 (φ → (frec(𝐹, A)‘B) 𝑆)
Colors of variables: wff set class
Syntax hints:  wi 4   wa 97  wb 98  wal 1240   = wceq 1242  wex 1378   wcel 1390  Vcvv 2551  c0 3218  suc csuc 4068  𝜔com 4256   Fn wfn 4840  cfv 4845  freccfrec 5917
This theorem was proved from axioms:  ax-1 5  ax-2 6  ax-mp 7  ax-ia1 99  ax-ia2 100  ax-ia3 101  ax-in1 544  ax-in2 545  ax-io 629  ax-5 1333  ax-7 1334  ax-gen 1335  ax-ie1 1379  ax-ie2 1380  ax-8 1392  ax-10 1393  ax-11 1394  ax-i12 1395  ax-bnd 1396  ax-4 1397  ax-13 1401  ax-14 1402  ax-17 1416  ax-i9 1420  ax-ial 1424  ax-i5r 1425  ax-ext 2019  ax-coll 3863  ax-sep 3866  ax-nul 3874  ax-pow 3918  ax-pr 3935  ax-un 4136  ax-setind 4220  ax-iinf 4254
This theorem depends on definitions:  df-bi 110  df-3an 886  df-tru 1245  df-fal 1248  df-nf 1347  df-sb 1643  df-eu 1900  df-mo 1901  df-clab 2024  df-cleq 2030  df-clel 2033  df-nfc 2164  df-ne 2203  df-ral 2305  df-rex 2306  df-reu 2307  df-rab 2309  df-v 2553  df-sbc 2759  df-csb 2847  df-dif 2914  df-un 2916  df-in 2918  df-ss 2925  df-nul 3219  df-pw 3353  df-sn 3373  df-pr 3374  df-op 3376  df-uni 3572  df-int 3607  df-iun 3650  df-br 3756  df-opab 3810  df-mpt 3811  df-tr 3846  df-id 4021  df-iord 4069  df-on 4071  df-suc 4074  df-iom 4257  df-xp 4294  df-rel 4295  df-cnv 4296  df-co 4297  df-dm 4298  df-rn 4299  df-res 4300  df-ima 4301  df-iota 4810  df-fun 4847  df-fn 4848  df-f 4849  df-f1 4850  df-fo 4851  df-f1o 4852  df-fv 4853  df-recs 5861  df-frec 5918
This theorem is referenced by:  frecuzrdgrrn  8835
  Copyright terms: Public domain W3C validator