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

Theorem trcl 9643
Description: For any set 𝐴, show the properties of its transitive closure 𝐶. Similar to Theorem 9.1 of [TakeutiZaring] p. 73 except that we show an explicit expression for the transitive closure rather than just its existence. See tz9.1 9644 for an abbreviated version showing existence. (Contributed by NM, 14-Sep-2003.) (Revised by Mario Carneiro, 11-Sep-2015.)
Hypotheses
Ref Expression
trcl.1 𝐴 ∈ V
trcl.2 𝐹 = (rec((𝑧 ∈ V ↦ (𝑧 𝑧)), 𝐴) ↾ ω)
trcl.3 𝐶 = 𝑦 ∈ ω (𝐹𝑦)
Assertion
Ref Expression
trcl (𝐴𝐶 ∧ Tr 𝐶 ∧ ∀𝑥((𝐴𝑥 ∧ Tr 𝑥) → 𝐶𝑥))
Distinct variable groups:   𝑥,𝑧   𝑥,𝑦,𝐴   𝑥,𝐹,𝑦
Allowed substitution hints:   𝐴(𝑧)   𝐶(𝑥,𝑦,𝑧)   𝐹(𝑧)

Proof of Theorem trcl
Dummy variables 𝑣 𝑢 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 peano1 7829 . . . . 5 ∅ ∈ ω
2 trcl.2 . . . . . . . 8 𝐹 = (rec((𝑧 ∈ V ↦ (𝑧 𝑧)), 𝐴) ↾ ω)
32fveq1i 6827 . . . . . . 7 (𝐹‘∅) = ((rec((𝑧 ∈ V ↦ (𝑧 𝑧)), 𝐴) ↾ ω)‘∅)
4 trcl.1 . . . . . . . 8 𝐴 ∈ V
5 fr0g 8365 . . . . . . . 8 (𝐴 ∈ V → ((rec((𝑧 ∈ V ↦ (𝑧 𝑧)), 𝐴) ↾ ω)‘∅) = 𝐴)
64, 5ax-mp 5 . . . . . . 7 ((rec((𝑧 ∈ V ↦ (𝑧 𝑧)), 𝐴) ↾ ω)‘∅) = 𝐴
73, 6eqtr2i 2753 . . . . . 6 𝐴 = (𝐹‘∅)
87eqimssi 3998 . . . . 5 𝐴 ⊆ (𝐹‘∅)
9 fveq2 6826 . . . . . . 7 (𝑦 = ∅ → (𝐹𝑦) = (𝐹‘∅))
109sseq2d 3970 . . . . . 6 (𝑦 = ∅ → (𝐴 ⊆ (𝐹𝑦) ↔ 𝐴 ⊆ (𝐹‘∅)))
1110rspcev 3579 . . . . 5 ((∅ ∈ ω ∧ 𝐴 ⊆ (𝐹‘∅)) → ∃𝑦 ∈ ω 𝐴 ⊆ (𝐹𝑦))
121, 8, 11mp2an 692 . . . 4 𝑦 ∈ ω 𝐴 ⊆ (𝐹𝑦)
13 ssiun 4998 . . . 4 (∃𝑦 ∈ ω 𝐴 ⊆ (𝐹𝑦) → 𝐴 𝑦 ∈ ω (𝐹𝑦))
1412, 13ax-mp 5 . . 3 𝐴 𝑦 ∈ ω (𝐹𝑦)
15 trcl.3 . . 3 𝐶 = 𝑦 ∈ ω (𝐹𝑦)
1614, 15sseqtrri 3987 . 2 𝐴𝐶
17 dftr2 5204 . . . 4 (Tr 𝑦 ∈ ω (𝐹𝑦) ↔ ∀𝑣𝑢((𝑣𝑢𝑢 𝑦 ∈ ω (𝐹𝑦)) → 𝑣 𝑦 ∈ ω (𝐹𝑦)))
18 eliun 4948 . . . . . . . . 9 (𝑢 𝑦 ∈ ω (𝐹𝑦) ↔ ∃𝑦 ∈ ω 𝑢 ∈ (𝐹𝑦))
1918anbi2i 623 . . . . . . . 8 ((𝑣𝑢𝑢 𝑦 ∈ ω (𝐹𝑦)) ↔ (𝑣𝑢 ∧ ∃𝑦 ∈ ω 𝑢 ∈ (𝐹𝑦)))
20 r19.42v 3161 . . . . . . . 8 (∃𝑦 ∈ ω (𝑣𝑢𝑢 ∈ (𝐹𝑦)) ↔ (𝑣𝑢 ∧ ∃𝑦 ∈ ω 𝑢 ∈ (𝐹𝑦)))
2119, 20bitr4i 278 . . . . . . 7 ((𝑣𝑢𝑢 𝑦 ∈ ω (𝐹𝑦)) ↔ ∃𝑦 ∈ ω (𝑣𝑢𝑢 ∈ (𝐹𝑦)))
22 elunii 4866 . . . . . . . . 9 ((𝑣𝑢𝑢 ∈ (𝐹𝑦)) → 𝑣 (𝐹𝑦))
23 ssun2 4132 . . . . . . . . . . 11 (𝐹𝑦) ⊆ ((𝐹𝑦) ∪ (𝐹𝑦))
24 fvex 6839 . . . . . . . . . . . . 13 (𝐹𝑦) ∈ V
2524uniex 7681 . . . . . . . . . . . . 13 (𝐹𝑦) ∈ V
2624, 25unex 7684 . . . . . . . . . . . 12 ((𝐹𝑦) ∪ (𝐹𝑦)) ∈ V
27 id 22 . . . . . . . . . . . . . 14 (𝑥 = 𝑧𝑥 = 𝑧)
28 unieq 4872 . . . . . . . . . . . . . 14 (𝑥 = 𝑧 𝑥 = 𝑧)
2927, 28uneq12d 4122 . . . . . . . . . . . . 13 (𝑥 = 𝑧 → (𝑥 𝑥) = (𝑧 𝑧))
30 id 22 . . . . . . . . . . . . . 14 (𝑥 = (𝐹𝑦) → 𝑥 = (𝐹𝑦))
31 unieq 4872 . . . . . . . . . . . . . 14 (𝑥 = (𝐹𝑦) → 𝑥 = (𝐹𝑦))
3230, 31uneq12d 4122 . . . . . . . . . . . . 13 (𝑥 = (𝐹𝑦) → (𝑥 𝑥) = ((𝐹𝑦) ∪ (𝐹𝑦)))
332, 29, 32frsucmpt2 8369 . . . . . . . . . . . 12 ((𝑦 ∈ ω ∧ ((𝐹𝑦) ∪ (𝐹𝑦)) ∈ V) → (𝐹‘suc 𝑦) = ((𝐹𝑦) ∪ (𝐹𝑦)))
3426, 33mpan2 691 . . . . . . . . . . 11 (𝑦 ∈ ω → (𝐹‘suc 𝑦) = ((𝐹𝑦) ∪ (𝐹𝑦)))
3523, 34sseqtrrid 3981 . . . . . . . . . 10 (𝑦 ∈ ω → (𝐹𝑦) ⊆ (𝐹‘suc 𝑦))
3635sseld 3936 . . . . . . . . 9 (𝑦 ∈ ω → (𝑣 (𝐹𝑦) → 𝑣 ∈ (𝐹‘suc 𝑦)))
3722, 36syl5 34 . . . . . . . 8 (𝑦 ∈ ω → ((𝑣𝑢𝑢 ∈ (𝐹𝑦)) → 𝑣 ∈ (𝐹‘suc 𝑦)))
3837reximia 3064 . . . . . . 7 (∃𝑦 ∈ ω (𝑣𝑢𝑢 ∈ (𝐹𝑦)) → ∃𝑦 ∈ ω 𝑣 ∈ (𝐹‘suc 𝑦))
3921, 38sylbi 217 . . . . . 6 ((𝑣𝑢𝑢 𝑦 ∈ ω (𝐹𝑦)) → ∃𝑦 ∈ ω 𝑣 ∈ (𝐹‘suc 𝑦))
40 peano2 7830 . . . . . . . . . 10 (𝑦 ∈ ω → suc 𝑦 ∈ ω)
41 fveq2 6826 . . . . . . . . . . . . 13 (𝑢 = suc 𝑦 → (𝐹𝑢) = (𝐹‘suc 𝑦))
4241eleq2d 2814 . . . . . . . . . . . 12 (𝑢 = suc 𝑦 → (𝑣 ∈ (𝐹𝑢) ↔ 𝑣 ∈ (𝐹‘suc 𝑦)))
4342rspcev 3579 . . . . . . . . . . 11 ((suc 𝑦 ∈ ω ∧ 𝑣 ∈ (𝐹‘suc 𝑦)) → ∃𝑢 ∈ ω 𝑣 ∈ (𝐹𝑢))
4443ex 412 . . . . . . . . . 10 (suc 𝑦 ∈ ω → (𝑣 ∈ (𝐹‘suc 𝑦) → ∃𝑢 ∈ ω 𝑣 ∈ (𝐹𝑢)))
4540, 44syl 17 . . . . . . . . 9 (𝑦 ∈ ω → (𝑣 ∈ (𝐹‘suc 𝑦) → ∃𝑢 ∈ ω 𝑣 ∈ (𝐹𝑢)))
4645rexlimiv 3123 . . . . . . . 8 (∃𝑦 ∈ ω 𝑣 ∈ (𝐹‘suc 𝑦) → ∃𝑢 ∈ ω 𝑣 ∈ (𝐹𝑢))
47 fveq2 6826 . . . . . . . . . 10 (𝑦 = 𝑢 → (𝐹𝑦) = (𝐹𝑢))
4847eleq2d 2814 . . . . . . . . 9 (𝑦 = 𝑢 → (𝑣 ∈ (𝐹𝑦) ↔ 𝑣 ∈ (𝐹𝑢)))
4948cbvrexvw 3208 . . . . . . . 8 (∃𝑦 ∈ ω 𝑣 ∈ (𝐹𝑦) ↔ ∃𝑢 ∈ ω 𝑣 ∈ (𝐹𝑢))
5046, 49sylibr 234 . . . . . . 7 (∃𝑦 ∈ ω 𝑣 ∈ (𝐹‘suc 𝑦) → ∃𝑦 ∈ ω 𝑣 ∈ (𝐹𝑦))
51 eliun 4948 . . . . . . 7 (𝑣 𝑦 ∈ ω (𝐹𝑦) ↔ ∃𝑦 ∈ ω 𝑣 ∈ (𝐹𝑦))
5250, 51sylibr 234 . . . . . 6 (∃𝑦 ∈ ω 𝑣 ∈ (𝐹‘suc 𝑦) → 𝑣 𝑦 ∈ ω (𝐹𝑦))
5339, 52syl 17 . . . . 5 ((𝑣𝑢𝑢 𝑦 ∈ ω (𝐹𝑦)) → 𝑣 𝑦 ∈ ω (𝐹𝑦))
5453ax-gen 1795 . . . 4 𝑢((𝑣𝑢𝑢 𝑦 ∈ ω (𝐹𝑦)) → 𝑣 𝑦 ∈ ω (𝐹𝑦))
5517, 54mpgbir 1799 . . 3 Tr 𝑦 ∈ ω (𝐹𝑦)
56 treq 5209 . . . 4 (𝐶 = 𝑦 ∈ ω (𝐹𝑦) → (Tr 𝐶 ↔ Tr 𝑦 ∈ ω (𝐹𝑦)))
5715, 56ax-mp 5 . . 3 (Tr 𝐶 ↔ Tr 𝑦 ∈ ω (𝐹𝑦))
5855, 57mpbir 231 . 2 Tr 𝐶
59 fveq2 6826 . . . . . . . 8 (𝑣 = ∅ → (𝐹𝑣) = (𝐹‘∅))
6059sseq1d 3969 . . . . . . 7 (𝑣 = ∅ → ((𝐹𝑣) ⊆ 𝑥 ↔ (𝐹‘∅) ⊆ 𝑥))
61 fveq2 6826 . . . . . . . 8 (𝑣 = 𝑦 → (𝐹𝑣) = (𝐹𝑦))
6261sseq1d 3969 . . . . . . 7 (𝑣 = 𝑦 → ((𝐹𝑣) ⊆ 𝑥 ↔ (𝐹𝑦) ⊆ 𝑥))
63 fveq2 6826 . . . . . . . 8 (𝑣 = suc 𝑦 → (𝐹𝑣) = (𝐹‘suc 𝑦))
6463sseq1d 3969 . . . . . . 7 (𝑣 = suc 𝑦 → ((𝐹𝑣) ⊆ 𝑥 ↔ (𝐹‘suc 𝑦) ⊆ 𝑥))
653, 6eqtri 2752 . . . . . . . . . 10 (𝐹‘∅) = 𝐴
6665sseq1i 3966 . . . . . . . . 9 ((𝐹‘∅) ⊆ 𝑥𝐴𝑥)
6766biimpri 228 . . . . . . . 8 (𝐴𝑥 → (𝐹‘∅) ⊆ 𝑥)
6867adantr 480 . . . . . . 7 ((𝐴𝑥 ∧ Tr 𝑥) → (𝐹‘∅) ⊆ 𝑥)
69 uniss 4869 . . . . . . . . . . . . 13 ((𝐹𝑦) ⊆ 𝑥 (𝐹𝑦) ⊆ 𝑥)
70 df-tr 5203 . . . . . . . . . . . . . 14 (Tr 𝑥 𝑥𝑥)
71 sstr2 3944 . . . . . . . . . . . . . 14 ( (𝐹𝑦) ⊆ 𝑥 → ( 𝑥𝑥 (𝐹𝑦) ⊆ 𝑥))
7270, 71biimtrid 242 . . . . . . . . . . . . 13 ( (𝐹𝑦) ⊆ 𝑥 → (Tr 𝑥 (𝐹𝑦) ⊆ 𝑥))
7369, 72syl 17 . . . . . . . . . . . 12 ((𝐹𝑦) ⊆ 𝑥 → (Tr 𝑥 (𝐹𝑦) ⊆ 𝑥))
7473anc2li 555 . . . . . . . . . . 11 ((𝐹𝑦) ⊆ 𝑥 → (Tr 𝑥 → ((𝐹𝑦) ⊆ 𝑥 (𝐹𝑦) ⊆ 𝑥)))
75 unss 4143 . . . . . . . . . . 11 (((𝐹𝑦) ⊆ 𝑥 (𝐹𝑦) ⊆ 𝑥) ↔ ((𝐹𝑦) ∪ (𝐹𝑦)) ⊆ 𝑥)
7674, 75imbitrdi 251 . . . . . . . . . 10 ((𝐹𝑦) ⊆ 𝑥 → (Tr 𝑥 → ((𝐹𝑦) ∪ (𝐹𝑦)) ⊆ 𝑥))
7734sseq1d 3969 . . . . . . . . . . 11 (𝑦 ∈ ω → ((𝐹‘suc 𝑦) ⊆ 𝑥 ↔ ((𝐹𝑦) ∪ (𝐹𝑦)) ⊆ 𝑥))
7877biimprd 248 . . . . . . . . . 10 (𝑦 ∈ ω → (((𝐹𝑦) ∪ (𝐹𝑦)) ⊆ 𝑥 → (𝐹‘suc 𝑦) ⊆ 𝑥))
7976, 78syl9r 78 . . . . . . . . 9 (𝑦 ∈ ω → ((𝐹𝑦) ⊆ 𝑥 → (Tr 𝑥 → (𝐹‘suc 𝑦) ⊆ 𝑥)))
8079com23 86 . . . . . . . 8 (𝑦 ∈ ω → (Tr 𝑥 → ((𝐹𝑦) ⊆ 𝑥 → (𝐹‘suc 𝑦) ⊆ 𝑥)))
8180adantld 490 . . . . . . 7 (𝑦 ∈ ω → ((𝐴𝑥 ∧ Tr 𝑥) → ((𝐹𝑦) ⊆ 𝑥 → (𝐹‘suc 𝑦) ⊆ 𝑥)))
8260, 62, 64, 68, 81finds2 7838 . . . . . 6 (𝑣 ∈ ω → ((𝐴𝑥 ∧ Tr 𝑥) → (𝐹𝑣) ⊆ 𝑥))
8382com12 32 . . . . 5 ((𝐴𝑥 ∧ Tr 𝑥) → (𝑣 ∈ ω → (𝐹𝑣) ⊆ 𝑥))
8483ralrimiv 3120 . . . 4 ((𝐴𝑥 ∧ Tr 𝑥) → ∀𝑣 ∈ ω (𝐹𝑣) ⊆ 𝑥)
85 fveq2 6826 . . . . . . . 8 (𝑦 = 𝑣 → (𝐹𝑦) = (𝐹𝑣))
8685cbviunv 4992 . . . . . . 7 𝑦 ∈ ω (𝐹𝑦) = 𝑣 ∈ ω (𝐹𝑣)
8715, 86eqtri 2752 . . . . . 6 𝐶 = 𝑣 ∈ ω (𝐹𝑣)
8887sseq1i 3966 . . . . 5 (𝐶𝑥 𝑣 ∈ ω (𝐹𝑣) ⊆ 𝑥)
89 iunss 4997 . . . . 5 ( 𝑣 ∈ ω (𝐹𝑣) ⊆ 𝑥 ↔ ∀𝑣 ∈ ω (𝐹𝑣) ⊆ 𝑥)
9088, 89bitri 275 . . . 4 (𝐶𝑥 ↔ ∀𝑣 ∈ ω (𝐹𝑣) ⊆ 𝑥)
9184, 90sylibr 234 . . 3 ((𝐴𝑥 ∧ Tr 𝑥) → 𝐶𝑥)
9291ax-gen 1795 . 2 𝑥((𝐴𝑥 ∧ Tr 𝑥) → 𝐶𝑥)
9316, 58, 923pm3.2i 1340 1 (𝐴𝐶 ∧ Tr 𝐶 ∧ ∀𝑥((𝐴𝑥 ∧ Tr 𝑥) → 𝐶𝑥))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 206  wa 395  w3a 1086  wal 1538   = wceq 1540  wcel 2109  wral 3044  wrex 3053  Vcvv 3438  cun 3903  wss 3905  c0 4286   cuni 4861   ciun 4944  cmpt 5176  Tr wtr 5202  cres 5625  suc csuc 6313  cfv 6486  ωcom 7806  reccrdg 8338
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1795  ax-4 1809  ax-5 1910  ax-6 1967  ax-7 2008  ax-8 2111  ax-9 2119  ax-10 2142  ax-11 2158  ax-12 2178  ax-ext 2701  ax-sep 5238  ax-nul 5248  ax-pr 5374  ax-un 7675
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 848  df-3or 1087  df-3an 1088  df-tru 1543  df-fal 1553  df-ex 1780  df-nf 1784  df-sb 2066  df-mo 2533  df-eu 2562  df-clab 2708  df-cleq 2721  df-clel 2803  df-nfc 2878  df-ne 2926  df-ral 3045  df-rex 3054  df-reu 3346  df-rab 3397  df-v 3440  df-sbc 3745  df-csb 3854  df-dif 3908  df-un 3910  df-in 3912  df-ss 3922  df-pss 3925  df-nul 4287  df-if 4479  df-pw 4555  df-sn 4580  df-pr 4582  df-op 4586  df-uni 4862  df-iun 4946  df-br 5096  df-opab 5158  df-mpt 5177  df-tr 5203  df-id 5518  df-eprel 5523  df-po 5531  df-so 5532  df-fr 5576  df-we 5578  df-xp 5629  df-rel 5630  df-cnv 5631  df-co 5632  df-dm 5633  df-rn 5634  df-res 5635  df-ima 5636  df-pred 6253  df-ord 6314  df-on 6315  df-lim 6316  df-suc 6317  df-iota 6442  df-fun 6488  df-fn 6489  df-f 6490  df-f1 6491  df-fo 6492  df-f1o 6493  df-fv 6494  df-ov 7356  df-om 7807  df-2nd 7932  df-frecs 8221  df-wrecs 8252  df-recs 8301  df-rdg 8339
This theorem is referenced by:  tz9.1  9644  tz9.1c  9645
  Copyright terms: Public domain W3C validator