Users' Mathboxes Mathbox for Matthew House < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >   Mathboxes  >  dfttc2g Structured version   Visualization version   GIF version

Theorem dfttc2g 37045
Description: A shorter expression for the transitive closure of a set. (Contributed by Matthew House, 6-Apr-2026.)
Assertion
Ref Expression
dfttc2g (𝐴𝑉 → TC+ 𝐴 = (rec((𝑥 ∈ V ↦ 𝑥), 𝐴) “ ω))

Proof of Theorem dfttc2g
Dummy variables 𝑤 𝑦 𝑧 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 rdg0g 8412 . . . . 5 (𝐴𝑉 → (rec((𝑥 ∈ V ↦ 𝑥), 𝐴)‘∅) = 𝐴)
2 rdgfnon 8403 . . . . . 6 rec((𝑥 ∈ V ↦ 𝑥), 𝐴) Fn On
3 omsson 7864 . . . . . 6 ω ⊆ On
4 peano1 7883 . . . . . 6 ∅ ∈ ω
5 fnfvima 7231 . . . . . 6 ((rec((𝑥 ∈ V ↦ 𝑥), 𝐴) Fn On ∧ ω ⊆ On ∧ ∅ ∈ ω) → (rec((𝑥 ∈ V ↦ 𝑥), 𝐴)‘∅) ∈ (rec((𝑥 ∈ V ↦ 𝑥), 𝐴) “ ω))
62, 3, 4, 5mp3an 1489 . . . . 5 (rec((𝑥 ∈ V ↦ 𝑥), 𝐴)‘∅) ∈ (rec((𝑥 ∈ V ↦ 𝑥), 𝐴) “ ω)
71, 6eqeltrrdi 2871 . . . 4 (𝐴𝑉𝐴 ∈ (rec((𝑥 ∈ V ↦ 𝑥), 𝐴) “ ω))
8 elssuni 4903 . . . 4 (𝐴 ∈ (rec((𝑥 ∈ V ↦ 𝑥), 𝐴) “ ω) → 𝐴 (rec((𝑥 ∈ V ↦ 𝑥), 𝐴) “ ω))
97, 8syl 18 . . 3 (𝐴𝑉𝐴 (rec((𝑥 ∈ V ↦ 𝑥), 𝐴) “ ω))
10 peano2 7884 . . . . . . . . . 10 (𝑧 ∈ ω → suc 𝑧 ∈ ω)
11 elunii 4876 . . . . . . . . . . 11 ((𝑤𝑦𝑦 ∈ (rec((𝑥 ∈ V ↦ 𝑥), 𝐴)‘𝑧)) → 𝑤 (rec((𝑥 ∈ V ↦ 𝑥), 𝐴)‘𝑧))
12 nnon 7866 . . . . . . . . . . . . . 14 (𝑧 ∈ ω → 𝑧 ∈ On)
13 fvex 6894 . . . . . . . . . . . . . . 15 (rec((𝑥 ∈ V ↦ 𝑥), 𝐴)‘𝑧) ∈ V
1413uniex 7741 . . . . . . . . . . . . . 14 (rec((𝑥 ∈ V ↦ 𝑥), 𝐴)‘𝑧) ∈ V
15 eqid 2762 . . . . . . . . . . . . . . 15 rec((𝑥 ∈ V ↦ 𝑥), 𝐴) = rec((𝑥 ∈ V ↦ 𝑥), 𝐴)
16 unieq 4882 . . . . . . . . . . . . . . 15 (𝑦 = 𝑥 𝑦 = 𝑥)
17 unieq 4882 . . . . . . . . . . . . . . 15 (𝑦 = (rec((𝑥 ∈ V ↦ 𝑥), 𝐴)‘𝑧) → 𝑦 = (rec((𝑥 ∈ V ↦ 𝑥), 𝐴)‘𝑧))
1815, 16, 17rdgsucmpt2 8415 . . . . . . . . . . . . . 14 ((𝑧 ∈ On ∧ (rec((𝑥 ∈ V ↦ 𝑥), 𝐴)‘𝑧) ∈ V) → (rec((𝑥 ∈ V ↦ 𝑥), 𝐴)‘suc 𝑧) = (rec((𝑥 ∈ V ↦ 𝑥), 𝐴)‘𝑧))
1912, 14, 18sylancl 597 . . . . . . . . . . . . 13 (𝑧 ∈ ω → (rec((𝑥 ∈ V ↦ 𝑥), 𝐴)‘suc 𝑧) = (rec((𝑥 ∈ V ↦ 𝑥), 𝐴)‘𝑧))
2019eleq2d 2848 . . . . . . . . . . . 12 (𝑧 ∈ ω → (𝑤 ∈ (rec((𝑥 ∈ V ↦ 𝑥), 𝐴)‘suc 𝑧) ↔ 𝑤 (rec((𝑥 ∈ V ↦ 𝑥), 𝐴)‘𝑧)))
2120biimpar 482 . . . . . . . . . . 11 ((𝑧 ∈ ω ∧ 𝑤 (rec((𝑥 ∈ V ↦ 𝑥), 𝐴)‘𝑧)) → 𝑤 ∈ (rec((𝑥 ∈ V ↦ 𝑥), 𝐴)‘suc 𝑧))
2211, 21sylan2 604 . . . . . . . . . 10 ((𝑧 ∈ ω ∧ (𝑤𝑦𝑦 ∈ (rec((𝑥 ∈ V ↦ 𝑥), 𝐴)‘𝑧))) → 𝑤 ∈ (rec((𝑥 ∈ V ↦ 𝑥), 𝐴)‘suc 𝑧))
23 fveq2 6881 . . . . . . . . . . . 12 (𝑦 = suc 𝑧 → (rec((𝑥 ∈ V ↦ 𝑥), 𝐴)‘𝑦) = (rec((𝑥 ∈ V ↦ 𝑥), 𝐴)‘suc 𝑧))
2423eleq2d 2848 . . . . . . . . . . 11 (𝑦 = suc 𝑧 → (𝑤 ∈ (rec((𝑥 ∈ V ↦ 𝑥), 𝐴)‘𝑦) ↔ 𝑤 ∈ (rec((𝑥 ∈ V ↦ 𝑥), 𝐴)‘suc 𝑧)))
2524rspcev 3580 . . . . . . . . . 10 ((suc 𝑧 ∈ ω ∧ 𝑤 ∈ (rec((𝑥 ∈ V ↦ 𝑥), 𝐴)‘suc 𝑧)) → ∃𝑦 ∈ ω 𝑤 ∈ (rec((𝑥 ∈ V ↦ 𝑥), 𝐴)‘𝑦))
2610, 22, 25syl2an2r 697 . . . . . . . . 9 ((𝑧 ∈ ω ∧ (𝑤𝑦𝑦 ∈ (rec((𝑥 ∈ V ↦ 𝑥), 𝐴)‘𝑧))) → ∃𝑦 ∈ ω 𝑤 ∈ (rec((𝑥 ∈ V ↦ 𝑥), 𝐴)‘𝑦))
2726an12s 661 . . . . . . . 8 ((𝑤𝑦 ∧ (𝑧 ∈ ω ∧ 𝑦 ∈ (rec((𝑥 ∈ V ↦ 𝑥), 𝐴)‘𝑧))) → ∃𝑦 ∈ ω 𝑤 ∈ (rec((𝑥 ∈ V ↦ 𝑥), 𝐴)‘𝑦))
2827rexlimdvaa 3166 . . . . . . 7 (𝑤𝑦 → (∃𝑧 ∈ ω 𝑦 ∈ (rec((𝑥 ∈ V ↦ 𝑥), 𝐴)‘𝑧) → ∃𝑦 ∈ ω 𝑤 ∈ (rec((𝑥 ∈ V ↦ 𝑥), 𝐴)‘𝑦)))
29 rdgfun 8401 . . . . . . . 8 Fun rec((𝑥 ∈ V ↦ 𝑥), 𝐴)
30 eluniima 7248 . . . . . . . 8 (Fun rec((𝑥 ∈ V ↦ 𝑥), 𝐴) → (𝑦 (rec((𝑥 ∈ V ↦ 𝑥), 𝐴) “ ω) ↔ ∃𝑧 ∈ ω 𝑦 ∈ (rec((𝑥 ∈ V ↦ 𝑥), 𝐴)‘𝑧)))
3129, 30ax-mp 5 . . . . . . 7 (𝑦 (rec((𝑥 ∈ V ↦ 𝑥), 𝐴) “ ω) ↔ ∃𝑧 ∈ ω 𝑦 ∈ (rec((𝑥 ∈ V ↦ 𝑥), 𝐴)‘𝑧))
32 eluniima 7248 . . . . . . . 8 (Fun rec((𝑥 ∈ V ↦ 𝑥), 𝐴) → (𝑤 (rec((𝑥 ∈ V ↦ 𝑥), 𝐴) “ ω) ↔ ∃𝑦 ∈ ω 𝑤 ∈ (rec((𝑥 ∈ V ↦ 𝑥), 𝐴)‘𝑦)))
3329, 32ax-mp 5 . . . . . . 7 (𝑤 (rec((𝑥 ∈ V ↦ 𝑥), 𝐴) “ ω) ↔ ∃𝑦 ∈ ω 𝑤 ∈ (rec((𝑥 ∈ V ↦ 𝑥), 𝐴)‘𝑦))
3428, 31, 333imtr4g 299 . . . . . 6 (𝑤𝑦 → (𝑦 (rec((𝑥 ∈ V ↦ 𝑥), 𝐴) “ ω) → 𝑤 (rec((𝑥 ∈ V ↦ 𝑥), 𝐴) “ ω)))
3534imp 411 . . . . 5 ((𝑤𝑦𝑦 (rec((𝑥 ∈ V ↦ 𝑥), 𝐴) “ ω)) → 𝑤 (rec((𝑥 ∈ V ↦ 𝑥), 𝐴) “ ω))
3635gen2 1825 . . . 4 𝑤𝑦((𝑤𝑦𝑦 (rec((𝑥 ∈ V ↦ 𝑥), 𝐴) “ ω)) → 𝑤 (rec((𝑥 ∈ V ↦ 𝑥), 𝐴) “ ω))
37 dftr2 5219 . . . 4 (Tr (rec((𝑥 ∈ V ↦ 𝑥), 𝐴) “ ω) ↔ ∀𝑤𝑦((𝑤𝑦𝑦 (rec((𝑥 ∈ V ↦ 𝑥), 𝐴) “ ω)) → 𝑤 (rec((𝑥 ∈ V ↦ 𝑥), 𝐴) “ ω)))
3836, 37mpbir 234 . . 3 Tr (rec((𝑥 ∈ V ↦ 𝑥), 𝐴) “ ω)
39 ttcmin 37035 . . 3 ((𝐴 (rec((𝑥 ∈ V ↦ 𝑥), 𝐴) “ ω) ∧ Tr (rec((𝑥 ∈ V ↦ 𝑥), 𝐴) “ ω)) → TC+ 𝐴 (rec((𝑥 ∈ V ↦ 𝑥), 𝐴) “ ω))
409, 38, 39sylancl 597 . 2 (𝐴𝑉 → TC+ 𝐴 (rec((𝑥 ∈ V ↦ 𝑥), 𝐴) “ ω))
41 funiunfv 7246 . . . 4 (Fun rec((𝑥 ∈ V ↦ 𝑥), 𝐴) → 𝑦 ∈ ω (rec((𝑥 ∈ V ↦ 𝑥), 𝐴)‘𝑦) = (rec((𝑥 ∈ V ↦ 𝑥), 𝐴) “ ω))
4229, 41ax-mp 5 . . 3 𝑦 ∈ ω (rec((𝑥 ∈ V ↦ 𝑥), 𝐴)‘𝑦) = (rec((𝑥 ∈ V ↦ 𝑥), 𝐴) “ ω)
43 fveq2 6881 . . . . . . 7 (𝑦 = ∅ → (rec((𝑥 ∈ V ↦ 𝑥), 𝐴)‘𝑦) = (rec((𝑥 ∈ V ↦ 𝑥), 𝐴)‘∅))
4443sseq1d 3967 . . . . . 6 (𝑦 = ∅ → ((rec((𝑥 ∈ V ↦ 𝑥), 𝐴)‘𝑦) ⊆ TC+ 𝐴 ↔ (rec((𝑥 ∈ V ↦ 𝑥), 𝐴)‘∅) ⊆ TC+ 𝐴))
45 fveq2 6881 . . . . . . 7 (𝑦 = 𝑧 → (rec((𝑥 ∈ V ↦ 𝑥), 𝐴)‘𝑦) = (rec((𝑥 ∈ V ↦ 𝑥), 𝐴)‘𝑧))
4645sseq1d 3967 . . . . . 6 (𝑦 = 𝑧 → ((rec((𝑥 ∈ V ↦ 𝑥), 𝐴)‘𝑦) ⊆ TC+ 𝐴 ↔ (rec((𝑥 ∈ V ↦ 𝑥), 𝐴)‘𝑧) ⊆ TC+ 𝐴))
4723sseq1d 3967 . . . . . 6 (𝑦 = suc 𝑧 → ((rec((𝑥 ∈ V ↦ 𝑥), 𝐴)‘𝑦) ⊆ TC+ 𝐴 ↔ (rec((𝑥 ∈ V ↦ 𝑥), 𝐴)‘suc 𝑧) ⊆ TC+ 𝐴))
48 ttcid 37031 . . . . . . 7 𝐴 ⊆ TC+ 𝐴
491, 48eqsstrdi 3980 . . . . . 6 (𝐴𝑉 → (rec((𝑥 ∈ V ↦ 𝑥), 𝐴)‘∅) ⊆ TC+ 𝐴)
50 uniss 4879 . . . . . . . . 9 ((rec((𝑥 ∈ V ↦ 𝑥), 𝐴)‘𝑧) ⊆ TC+ 𝐴 (rec((𝑥 ∈ V ↦ 𝑥), 𝐴)‘𝑧) ⊆ TC+ 𝐴)
51 ttctr3 37034 . . . . . . . . 9 TC+ 𝐴 ⊆ TC+ 𝐴
5250, 51sstrdi 3948 . . . . . . . 8 ((rec((𝑥 ∈ V ↦ 𝑥), 𝐴)‘𝑧) ⊆ TC+ 𝐴 (rec((𝑥 ∈ V ↦ 𝑥), 𝐴)‘𝑧) ⊆ TC+ 𝐴)
5319sseq1d 3967 . . . . . . . 8 (𝑧 ∈ ω → ((rec((𝑥 ∈ V ↦ 𝑥), 𝐴)‘suc 𝑧) ⊆ TC+ 𝐴 (rec((𝑥 ∈ V ↦ 𝑥), 𝐴)‘𝑧) ⊆ TC+ 𝐴))
5452, 53imbitrrid 249 . . . . . . 7 (𝑧 ∈ ω → ((rec((𝑥 ∈ V ↦ 𝑥), 𝐴)‘𝑧) ⊆ TC+ 𝐴 → (rec((𝑥 ∈ V ↦ 𝑥), 𝐴)‘suc 𝑧) ⊆ TC+ 𝐴))
5554a1d 26 . . . . . 6 (𝑧 ∈ ω → (𝐴𝑉 → ((rec((𝑥 ∈ V ↦ 𝑥), 𝐴)‘𝑧) ⊆ TC+ 𝐴 → (rec((𝑥 ∈ V ↦ 𝑥), 𝐴)‘suc 𝑧) ⊆ TC+ 𝐴)))
5644, 46, 47, 49, 55finds2 7893 . . . . 5 (𝑦 ∈ ω → (𝐴𝑉 → (rec((𝑥 ∈ V ↦ 𝑥), 𝐴)‘𝑦) ⊆ TC+ 𝐴))
5756impcom 412 . . . 4 ((𝐴𝑉𝑦 ∈ ω) → (rec((𝑥 ∈ V ↦ 𝑥), 𝐴)‘𝑦) ⊆ TC+ 𝐴)
5857iunssd 5014 . . 3 (𝐴𝑉 𝑦 ∈ ω (rec((𝑥 ∈ V ↦ 𝑥), 𝐴)‘𝑦) ⊆ TC+ 𝐴)
5942, 58eqsstrrid 3975 . 2 (𝐴𝑉 (rec((𝑥 ∈ V ↦ 𝑥), 𝐴) “ ω) ⊆ TC+ 𝐴)
6040, 59eqssd 3953 1 (𝐴𝑉 → TC+ 𝐴 = (rec((𝑥 ∈ V ↦ 𝑥), 𝐴) “ ω))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  wi 4  wb 209  wa 400  wal 1567   = wceq 1569  wcel 2142  wrex 3088  Vcvv 3454  wss 3904  c0 4285   cuni 4871   ciun 4955  cmpt 5191  Tr wtr 5217  cima 5663  Oncon0 6360  suc csuc 6362  Fun wfun 6530   Fn wfn 6531  cfv 6536  ωcom 7860  reccrdg 8394  TC+ cttc 37025
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1824  ax-4 1838  ax-5 1939  ax-6 1996  ax-7 2037  ax-8 2144  ax-9 2152  ax-10 2175  ax-11 2191  ax-12 2212  ax-ext 2734  ax-rep 5237  ax-sep 5256  ax-nul 5268  ax-pr 5403  ax-un 7734
This proof depends on definitions:  df-bi 210  df-an 401  df-or 861  df-3or 1103  df-3an 1104  df-tru 1572  df-fal 1582  df-ex 1809  df-nf 1813  df-sb 2096  df-mo 2566  df-eu 2596  df-clab 2741  df-cleq 2754  df-clel 2837  df-nfc 2911  df-ne 2958  df-ral 3079  df-rex 3089  df-reu 3369  df-rab 3416  df-v 3456  df-sbc 3744  df-csb 3853  df-dif 3907  df-un 3909  df-in 3911  df-ss 3921  df-pss 3924  df-nul 4286  df-if 4487  df-pw 4563  df-sn 4589  df-pr 4591  df-op 4595  df-uni 4872  df-iun 4957  df-br 5109  df-opab 5173  df-mpt 5192  df-tr 5218  df-id 5555  df-eprel 5560  df-po 5568  df-so 5569  df-fr 5613  df-we 5615  df-xp 5666  df-rel 5667  df-cnv 5668  df-co 5669  df-dm 5670  df-rn 5671  df-res 5672  df-ima 5673  df-pred 6302  df-ord 6363  df-on 6364  df-lim 6365  df-suc 6366  df-iota 6492  df-fun 6538  df-fn 6539  df-f 6540  df-f1 6541  df-fo 6542  df-f1o 6543  df-fv 6544  df-ov 7415  df-om 7861  df-2nd 7985  df-frecs 8276  df-wrecs 8307  df-recs 8356  df-rdg 8395  df-ttc 37026
This theorem is used by: (None)
  Copyright terms: Public domain W3C validator