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

Theorem trcl 9629
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 9630 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 7828 . . . . 5 ∅ ∈ ω
2 trcl.2 . . . . . . . 8 𝐹 = (rec((𝑧 ∈ V ↦ (𝑧 𝑧)), 𝐴) ↾ ω)
32fveq1i 6832 . . . . . . 7 (𝐹‘∅) = ((rec((𝑧 ∈ V ↦ (𝑧 𝑧)), 𝐴) ↾ ω)‘∅)
4 trcl.1 . . . . . . . 8 𝐴 ∈ V
5 fr0g 8364 . . . . . . . 8 (𝐴 ∈ V → ((rec((𝑧 ∈ V ↦ (𝑧 𝑧)), 𝐴) ↾ ω)‘∅) = 𝐴)
64, 5ax-mp 5 . . . . . . 7 ((rec((𝑧 ∈ V ↦ (𝑧 𝑧)), 𝐴) ↾ ω)‘∅) = 𝐴
73, 6eqtr2i 2757 . . . . . 6 𝐴 = (𝐹‘∅)
87eqimssi 3991 . . . . 5 𝐴 ⊆ (𝐹‘∅)
9 fveq2 6831 . . . . . . 7 (𝑦 = ∅ → (𝐹𝑦) = (𝐹‘∅))
109sseq2d 3963 . . . . . 6 (𝑦 = ∅ → (𝐴 ⊆ (𝐹𝑦) ↔ 𝐴 ⊆ (𝐹‘∅)))
1110rspcev 3573 . . . . 5 ((∅ ∈ ω ∧ 𝐴 ⊆ (𝐹‘∅)) → ∃𝑦 ∈ ω 𝐴 ⊆ (𝐹𝑦))
121, 8, 11mp2an 692 . . . 4 𝑦 ∈ ω 𝐴 ⊆ (𝐹𝑦)
13 ssiun 4999 . . . 4 (∃𝑦 ∈ ω 𝐴 ⊆ (𝐹𝑦) → 𝐴 𝑦 ∈ ω (𝐹𝑦))
1412, 13ax-mp 5 . . 3 𝐴 𝑦 ∈ ω (𝐹𝑦)
15 trcl.3 . . 3 𝐶 = 𝑦 ∈ ω (𝐹𝑦)
1614, 15sseqtrri 3980 . 2 𝐴𝐶
17 dftr2 5204 . . . 4 (Tr 𝑦 ∈ ω (𝐹𝑦) ↔ ∀𝑣𝑢((𝑣𝑢𝑢 𝑦 ∈ ω (𝐹𝑦)) → 𝑣 𝑦 ∈ ω (𝐹𝑦)))
18 eliun 4947 . . . . . . . . 9 (𝑢 𝑦 ∈ ω (𝐹𝑦) ↔ ∃𝑦 ∈ ω 𝑢 ∈ (𝐹𝑦))
1918anbi2i 623 . . . . . . . 8 ((𝑣𝑢𝑢 𝑦 ∈ ω (𝐹𝑦)) ↔ (𝑣𝑢 ∧ ∃𝑦 ∈ ω 𝑢 ∈ (𝐹𝑦)))
20 r19.42v 3165 . . . . . . . 8 (∃𝑦 ∈ ω (𝑣𝑢𝑢 ∈ (𝐹𝑦)) ↔ (𝑣𝑢 ∧ ∃𝑦 ∈ ω 𝑢 ∈ (𝐹𝑦)))
2119, 20bitr4i 278 . . . . . . 7 ((𝑣𝑢𝑢 𝑦 ∈ ω (𝐹𝑦)) ↔ ∃𝑦 ∈ ω (𝑣𝑢𝑢 ∈ (𝐹𝑦)))
22 elunii 4865 . . . . . . . . 9 ((𝑣𝑢𝑢 ∈ (𝐹𝑦)) → 𝑣 (𝐹𝑦))
23 ssun2 4128 . . . . . . . . . . 11 (𝐹𝑦) ⊆ ((𝐹𝑦) ∪ (𝐹𝑦))
24 fvex 6844 . . . . . . . . . . . . 13 (𝐹𝑦) ∈ V
2524uniex 7683 . . . . . . . . . . . . 13 (𝐹𝑦) ∈ V
2624, 25unex 7686 . . . . . . . . . . . 12 ((𝐹𝑦) ∪ (𝐹𝑦)) ∈ V
27 id 22 . . . . . . . . . . . . . 14 (𝑥 = 𝑧𝑥 = 𝑧)
28 unieq 4871 . . . . . . . . . . . . . 14 (𝑥 = 𝑧 𝑥 = 𝑧)
2927, 28uneq12d 4118 . . . . . . . . . . . . 13 (𝑥 = 𝑧 → (𝑥 𝑥) = (𝑧 𝑧))
30 id 22 . . . . . . . . . . . . . 14 (𝑥 = (𝐹𝑦) → 𝑥 = (𝐹𝑦))
31 unieq 4871 . . . . . . . . . . . . . 14 (𝑥 = (𝐹𝑦) → 𝑥 = (𝐹𝑦))
3230, 31uneq12d 4118 . . . . . . . . . . . . 13 (𝑥 = (𝐹𝑦) → (𝑥 𝑥) = ((𝐹𝑦) ∪ (𝐹𝑦)))
332, 29, 32frsucmpt2 8368 . . . . . . . . . . . 12 ((𝑦 ∈ ω ∧ ((𝐹𝑦) ∪ (𝐹𝑦)) ∈ V) → (𝐹‘suc 𝑦) = ((𝐹𝑦) ∪ (𝐹𝑦)))
3426, 33mpan2 691 . . . . . . . . . . 11 (𝑦 ∈ ω → (𝐹‘suc 𝑦) = ((𝐹𝑦) ∪ (𝐹𝑦)))
3523, 34sseqtrrid 3974 . . . . . . . . . 10 (𝑦 ∈ ω → (𝐹𝑦) ⊆ (𝐹‘suc 𝑦))
3635sseld 3929 . . . . . . . . 9 (𝑦 ∈ ω → (𝑣 (𝐹𝑦) → 𝑣 ∈ (𝐹‘suc 𝑦)))
3722, 36syl5 34 . . . . . . . 8 (𝑦 ∈ ω → ((𝑣𝑢𝑢 ∈ (𝐹𝑦)) → 𝑣 ∈ (𝐹‘suc 𝑦)))
3837reximia 3068 . . . . . . 7 (∃𝑦 ∈ ω (𝑣𝑢𝑢 ∈ (𝐹𝑦)) → ∃𝑦 ∈ ω 𝑣 ∈ (𝐹‘suc 𝑦))
3921, 38sylbi 217 . . . . . 6 ((𝑣𝑢𝑢 𝑦 ∈ ω (𝐹𝑦)) → ∃𝑦 ∈ ω 𝑣 ∈ (𝐹‘suc 𝑦))
40 peano2 7829 . . . . . . . . . 10 (𝑦 ∈ ω → suc 𝑦 ∈ ω)
41 fveq2 6831 . . . . . . . . . . . . 13 (𝑢 = suc 𝑦 → (𝐹𝑢) = (𝐹‘suc 𝑦))
4241eleq2d 2819 . . . . . . . . . . . 12 (𝑢 = suc 𝑦 → (𝑣 ∈ (𝐹𝑢) ↔ 𝑣 ∈ (𝐹‘suc 𝑦)))
4342rspcev 3573 . . . . . . . . . . 11 ((suc 𝑦 ∈ ω ∧ 𝑣 ∈ (𝐹‘suc 𝑦)) → ∃𝑢 ∈ ω 𝑣 ∈ (𝐹𝑢))
4443ex 412 . . . . . . . . . 10 (suc 𝑦 ∈ ω → (𝑣 ∈ (𝐹‘suc 𝑦) → ∃𝑢 ∈ ω 𝑣 ∈ (𝐹𝑢)))
4540, 44syl 17 . . . . . . . . 9 (𝑦 ∈ ω → (𝑣 ∈ (𝐹‘suc 𝑦) → ∃𝑢 ∈ ω 𝑣 ∈ (𝐹𝑢)))
4645rexlimiv 3127 . . . . . . . 8 (∃𝑦 ∈ ω 𝑣 ∈ (𝐹‘suc 𝑦) → ∃𝑢 ∈ ω 𝑣 ∈ (𝐹𝑢))
47 fveq2 6831 . . . . . . . . . 10 (𝑦 = 𝑢 → (𝐹𝑦) = (𝐹𝑢))
4847eleq2d 2819 . . . . . . . . 9 (𝑦 = 𝑢 → (𝑣 ∈ (𝐹𝑦) ↔ 𝑣 ∈ (𝐹𝑢)))
4948cbvrexvw 3212 . . . . . . . 8 (∃𝑦 ∈ ω 𝑣 ∈ (𝐹𝑦) ↔ ∃𝑢 ∈ ω 𝑣 ∈ (𝐹𝑢))
5046, 49sylibr 234 . . . . . . 7 (∃𝑦 ∈ ω 𝑣 ∈ (𝐹‘suc 𝑦) → ∃𝑦 ∈ ω 𝑣 ∈ (𝐹𝑦))
51 eliun 4947 . . . . . . 7 (𝑣 𝑦 ∈ ω (𝐹𝑦) ↔ ∃𝑦 ∈ ω 𝑣 ∈ (𝐹𝑦))
5250, 51sylibr 234 . . . . . 6 (∃𝑦 ∈ ω 𝑣 ∈ (𝐹‘suc 𝑦) → 𝑣 𝑦 ∈ ω (𝐹𝑦))
5339, 52syl 17 . . . . 5 ((𝑣𝑢𝑢 𝑦 ∈ ω (𝐹𝑦)) → 𝑣 𝑦 ∈ ω (𝐹𝑦))
5453ax-gen 1796 . . . 4 𝑢((𝑣𝑢𝑢 𝑦 ∈ ω (𝐹𝑦)) → 𝑣 𝑦 ∈ ω (𝐹𝑦))
5517, 54mpgbir 1800 . . 3 Tr 𝑦 ∈ ω (𝐹𝑦)
56 treq 5209 . . . 4 (𝐶 = 𝑦 ∈ ω (𝐹𝑦) → (Tr 𝐶 ↔ Tr 𝑦 ∈ ω (𝐹𝑦)))
5715, 56ax-mp 5 . . 3 (Tr 𝐶 ↔ Tr 𝑦 ∈ ω (𝐹𝑦))
5855, 57mpbir 231 . 2 Tr 𝐶
59 fveq2 6831 . . . . . . . 8 (𝑣 = ∅ → (𝐹𝑣) = (𝐹‘∅))
6059sseq1d 3962 . . . . . . 7 (𝑣 = ∅ → ((𝐹𝑣) ⊆ 𝑥 ↔ (𝐹‘∅) ⊆ 𝑥))
61 fveq2 6831 . . . . . . . 8 (𝑣 = 𝑦 → (𝐹𝑣) = (𝐹𝑦))
6261sseq1d 3962 . . . . . . 7 (𝑣 = 𝑦 → ((𝐹𝑣) ⊆ 𝑥 ↔ (𝐹𝑦) ⊆ 𝑥))
63 fveq2 6831 . . . . . . . 8 (𝑣 = suc 𝑦 → (𝐹𝑣) = (𝐹‘suc 𝑦))
6463sseq1d 3962 . . . . . . 7 (𝑣 = suc 𝑦 → ((𝐹𝑣) ⊆ 𝑥 ↔ (𝐹‘suc 𝑦) ⊆ 𝑥))
653, 6eqtri 2756 . . . . . . . . . 10 (𝐹‘∅) = 𝐴
6665sseq1i 3959 . . . . . . . . 9 ((𝐹‘∅) ⊆ 𝑥𝐴𝑥)
6766biimpri 228 . . . . . . . 8 (𝐴𝑥 → (𝐹‘∅) ⊆ 𝑥)
6867adantr 480 . . . . . . 7 ((𝐴𝑥 ∧ Tr 𝑥) → (𝐹‘∅) ⊆ 𝑥)
69 uniss 4868 . . . . . . . . . . . . 13 ((𝐹𝑦) ⊆ 𝑥 (𝐹𝑦) ⊆ 𝑥)
70 df-tr 5203 . . . . . . . . . . . . . 14 (Tr 𝑥 𝑥𝑥)
71 sstr2 3937 . . . . . . . . . . . . . 14 ( (𝐹𝑦) ⊆ 𝑥 → ( 𝑥𝑥 (𝐹𝑦) ⊆ 𝑥))
7270, 71biimtrid 242 . . . . . . . . . . . . 13 ( (𝐹𝑦) ⊆ 𝑥 → (Tr 𝑥 (𝐹𝑦) ⊆ 𝑥))
7369, 72syl 17 . . . . . . . . . . . 12 ((𝐹𝑦) ⊆ 𝑥 → (Tr 𝑥 (𝐹𝑦) ⊆ 𝑥))
7473anc2li 555 . . . . . . . . . . 11 ((𝐹𝑦) ⊆ 𝑥 → (Tr 𝑥 → ((𝐹𝑦) ⊆ 𝑥 (𝐹𝑦) ⊆ 𝑥)))
75 unss 4139 . . . . . . . . . . 11 (((𝐹𝑦) ⊆ 𝑥 (𝐹𝑦) ⊆ 𝑥) ↔ ((𝐹𝑦) ∪ (𝐹𝑦)) ⊆ 𝑥)
7674, 75imbitrdi 251 . . . . . . . . . 10 ((𝐹𝑦) ⊆ 𝑥 → (Tr 𝑥 → ((𝐹𝑦) ∪ (𝐹𝑦)) ⊆ 𝑥))
7734sseq1d 3962 . . . . . . . . . . 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 7837 . . . . . 6 (𝑣 ∈ ω → ((𝐴𝑥 ∧ Tr 𝑥) → (𝐹𝑣) ⊆ 𝑥))
8382com12 32 . . . . 5 ((𝐴𝑥 ∧ Tr 𝑥) → (𝑣 ∈ ω → (𝐹𝑣) ⊆ 𝑥))
8483ralrimiv 3124 . . . 4 ((𝐴𝑥 ∧ Tr 𝑥) → ∀𝑣 ∈ ω (𝐹𝑣) ⊆ 𝑥)
85 fveq2 6831 . . . . . . . 8 (𝑦 = 𝑣 → (𝐹𝑦) = (𝐹𝑣))
8685cbviunv 4991 . . . . . . 7 𝑦 ∈ ω (𝐹𝑦) = 𝑣 ∈ ω (𝐹𝑣)
8715, 86eqtri 2756 . . . . . 6 𝐶 = 𝑣 ∈ ω (𝐹𝑣)
8887sseq1i 3959 . . . . 5 (𝐶𝑥 𝑣 ∈ ω (𝐹𝑣) ⊆ 𝑥)
89 iunss 4997 . . . . 5 ( 𝑣 ∈ ω (𝐹𝑣) ⊆ 𝑥 ↔ ∀𝑣 ∈ ω (𝐹𝑣) ⊆ 𝑥)
9088, 89bitri 275 . . . 4 (𝐶𝑥 ↔ ∀𝑣 ∈ ω (𝐹𝑣) ⊆ 𝑥)
9184, 90sylibr 234 . . 3 ((𝐴𝑥 ∧ Tr 𝑥) → 𝐶𝑥)
9291ax-gen 1796 . 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 1539   = wceq 1541  wcel 2113  wral 3048  wrex 3057  Vcvv 3437  cun 3896  wss 3898  c0 4282   cuni 4860   ciun 4943  cmpt 5176  Tr wtr 5202  cres 5623  suc csuc 6316  cfv 6489  ωcom 7805  reccrdg 8337
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1796  ax-4 1810  ax-5 1911  ax-6 1968  ax-7 2009  ax-8 2115  ax-9 2123  ax-10 2146  ax-11 2162  ax-12 2182  ax-ext 2705  ax-sep 5238  ax-nul 5248  ax-pr 5374  ax-un 7677
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 848  df-3or 1087  df-3an 1088  df-tru 1544  df-fal 1554  df-ex 1781  df-nf 1785  df-sb 2068  df-mo 2537  df-eu 2566  df-clab 2712  df-cleq 2725  df-clel 2808  df-nfc 2882  df-ne 2930  df-ral 3049  df-rex 3058  df-reu 3348  df-rab 3397  df-v 3439  df-sbc 3738  df-csb 3847  df-dif 3901  df-un 3903  df-in 3905  df-ss 3915  df-pss 3918  df-nul 4283  df-if 4477  df-pw 4553  df-sn 4578  df-pr 4580  df-op 4584  df-uni 4861  df-iun 4945  df-br 5096  df-opab 5158  df-mpt 5177  df-tr 5203  df-id 5516  df-eprel 5521  df-po 5529  df-so 5530  df-fr 5574  df-we 5576  df-xp 5627  df-rel 5628  df-cnv 5629  df-co 5630  df-dm 5631  df-rn 5632  df-res 5633  df-ima 5634  df-pred 6256  df-ord 6317  df-on 6318  df-lim 6319  df-suc 6320  df-iota 6445  df-fun 6491  df-fn 6492  df-f 6493  df-f1 6494  df-fo 6495  df-f1o 6496  df-fv 6497  df-ov 7358  df-om 7806  df-2nd 7931  df-frecs 8220  df-wrecs 8251  df-recs 8300  df-rdg 8338
This theorem is referenced by:  tz9.1  9630  tz9.1c  9631
  Copyright terms: Public domain W3C validator