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

Theorem setrec1 10009
Description: This is the first of two fundamental theorems about set recursion from which all other facts will be derived. It states that the class setrecs(𝐹) is closed under 𝐹. This effectively sets the actual value of setrecs(𝐹) as a lower bound for setrecs(𝐹), as it implies that any set generated by successive applications of 𝐹 is a member of 𝐵. This theorem "gets off the ground" because we can start by letting 𝐴 = ∅, and the hypotheses of the theorem will hold trivially.

Variable 𝐵 represents an abbreviation of setrecs(𝐹) or another name of setrecs(𝐹) (for an example of the latter, see theorem setrecon).

Proof summary: Assume that 𝐴 ⊆ 𝐵, meaning that all elements of 𝐴 are in some set recursively generated by 𝐹. Then by setrec1lem3 10006, 𝐴 is a subset of some set recursively generated by 𝐹. (It turns out that 𝐴 itself is recursively generated by 𝐹, but we don't need this fact. See the comment to setrec1lem3 10006.) Therefore, by setrec1lem4 10008, (𝐹‘𝐴) is a subset of some set recursively generated by 𝐹. Thus, by ssuni 4898, it is a subset of the union of all sets recursively generated by 𝐹.

See df-setrecs 10002 for a detailed description of how the setrecs definition works.

(Contributed by Emmett Weisz, 9-Oct-2020.)

Hypotheses
Ref Expression
setrec1.b 𝐵 = setrecs(𝐹)
setrec1.v (𝜑 → 𝐴 ∈ V)
setrec1.a (𝜑 → 𝐴 ⊆ 𝐵)
Assertion
Ref Expression
setrec1 (𝜑 → (𝐹‘𝐴) ⊆ 𝐵)

Proof of Theorem setrec1
Dummy variables 𝑎 𝑤 𝑥 𝑦 𝑧 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 eqid 2763 . . . 4 {𝑦 ∣ ∀𝑧(∀𝑤(𝑤 ⊆ 𝑦 → (𝑤 ⊆ 𝑧 → (𝐹‘𝑤) ⊆ 𝑧)) → 𝑦 ⊆ 𝑧)} = {𝑦 ∣ ∀𝑧(∀𝑤(𝑤 ⊆ 𝑦 → (𝑤 ⊆ 𝑧 → (𝐹‘𝑤) ⊆ 𝑧)) → 𝑦 ⊆ 𝑧)}
2 setrec1.v . . . 4 (𝜑 → 𝐴 ∈ V)
3 setrec1.a . . . . . . . . 9 (𝜑 → 𝐴 ⊆ 𝐵)
43sseld 3912 . . . . . . . 8 (𝜑 → (𝑎 ∈ 𝐴 → 𝑎 ∈ 𝐵))
54imp 412 . . . . . . 7 ((𝜑 ∧ 𝑎 ∈ 𝐴) → 𝑎 ∈ 𝐵)
6 setrec1.b . . . . . . . 8 𝐵 = setrecs(𝐹)
7 df-setrecs 10002 . . . . . . . 8 setrecs(𝐹) = ∪ {𝑦 ∣ ∀𝑧(∀𝑤(𝑤 ⊆ 𝑦 → (𝑤 ⊆ 𝑧 → (𝐹‘𝑤) ⊆ 𝑧)) → 𝑦 ⊆ 𝑧)}
86, 7eqtri 2786 . . . . . . 7 𝐵 = ∪ {𝑦 ∣ ∀𝑧(∀𝑤(𝑤 ⊆ 𝑦 → (𝑤 ⊆ 𝑧 → (𝐹‘𝑤) ⊆ 𝑧)) → 𝑦 ⊆ 𝑧)}
95, 8eleqtrdi 2874 . . . . . 6 ((𝜑 ∧ 𝑎 ∈ 𝐴) → 𝑎 ∈ ∪ {𝑦 ∣ ∀𝑧(∀𝑤(𝑤 ⊆ 𝑦 → (𝑤 ⊆ 𝑧 → (𝐹‘𝑤) ⊆ 𝑧)) → 𝑦 ⊆ 𝑧)})
10 eluni 4875 . . . . . 6 (𝑎 ∈ ∪ {𝑦 ∣ ∀𝑧(∀𝑤(𝑤 ⊆ 𝑦 → (𝑤 ⊆ 𝑧 → (𝐹‘𝑤) ⊆ 𝑧)) → 𝑦 ⊆ 𝑧)} ↔ ∃𝑥(𝑎 ∈ 𝑥 ∧ 𝑥 ∈ {𝑦 ∣ ∀𝑧(∀𝑤(𝑤 ⊆ 𝑦 → (𝑤 ⊆ 𝑧 → (𝐹‘𝑤) ⊆ 𝑧)) → 𝑦 ⊆ 𝑧)}))
119, 10sylib 221 . . . . 5 ((𝜑 ∧ 𝑎 ∈ 𝐴) → ∃𝑥(𝑎 ∈ 𝑥 ∧ 𝑥 ∈ {𝑦 ∣ ∀𝑧(∀𝑤(𝑤 ⊆ 𝑦 → (𝑤 ⊆ 𝑧 → (𝐹‘𝑤) ⊆ 𝑧)) → 𝑦 ⊆ 𝑧)}))
1211ralrimiva 3158 . . . 4 (𝜑 → ∀𝑎 ∈ 𝐴 ∃𝑥(𝑎 ∈ 𝑥 ∧ 𝑥 ∈ {𝑦 ∣ ∀𝑧(∀𝑤(𝑤 ⊆ 𝑦 → (𝑤 ⊆ 𝑧 → (𝐹‘𝑤) ⊆ 𝑧)) → 𝑦 ⊆ 𝑧)}))
131, 2, 12setrec1lem3 10006 . . 3 (𝜑 → ∃𝑥(𝐴 ⊆ 𝑥 ∧ 𝑥 ∈ {𝑦 ∣ ∀𝑧(∀𝑤(𝑤 ⊆ 𝑦 → (𝑤 ⊆ 𝑧 → (𝐹‘𝑤) ⊆ 𝑧)) → 𝑦 ⊆ 𝑧)}))
14 nfv 1949 . . . . . . 7 Ⅎ𝑧𝜑
15 nfv 1949 . . . . . . . 8 Ⅎ𝑧 𝐴 ⊆ 𝑥
16 nfaba1 2934 . . . . . . . . 9 Ⅎ𝑧{𝑦 ∣ ∀𝑧(∀𝑤(𝑤 ⊆ 𝑦 → (𝑤 ⊆ 𝑧 → (𝐹‘𝑤) ⊆ 𝑧)) → 𝑦 ⊆ 𝑧)}
1716nfel2 2944 . . . . . . . 8 Ⅎ𝑧 𝑥 ∈ {𝑦 ∣ ∀𝑧(∀𝑤(𝑤 ⊆ 𝑦 → (𝑤 ⊆ 𝑧 → (𝐹‘𝑤) ⊆ 𝑧)) → 𝑦 ⊆ 𝑧)}
1815, 17nfan 1934 . . . . . . 7 Ⅎ𝑧(𝐴 ⊆ 𝑥 ∧ 𝑥 ∈ {𝑦 ∣ ∀𝑧(∀𝑤(𝑤 ⊆ 𝑦 → (𝑤 ⊆ 𝑧 → (𝐹‘𝑤) ⊆ 𝑧)) → 𝑦 ⊆ 𝑧)})
1914, 18nfan 1934 . . . . . 6 Ⅎ𝑧(𝜑 ∧ (𝐴 ⊆ 𝑥 ∧ 𝑥 ∈ {𝑦 ∣ ∀𝑧(∀𝑤(𝑤 ⊆ 𝑦 → (𝑤 ⊆ 𝑧 → (𝐹‘𝑤) ⊆ 𝑧)) → 𝑦 ⊆ 𝑧)}))
202adantr 486 . . . . . 6 ((𝜑 ∧ (𝐴 ⊆ 𝑥 ∧ 𝑥 ∈ {𝑦 ∣ ∀𝑧(∀𝑤(𝑤 ⊆ 𝑦 → (𝑤 ⊆ 𝑧 → (𝐹‘𝑤) ⊆ 𝑧)) → 𝑦 ⊆ 𝑧)})) → 𝐴 ∈ V)
21 simprl 783 . . . . . 6 ((𝜑 ∧ (𝐴 ⊆ 𝑥 ∧ 𝑥 ∈ {𝑦 ∣ ∀𝑧(∀𝑤(𝑤 ⊆ 𝑦 → (𝑤 ⊆ 𝑧 → (𝐹‘𝑤) ⊆ 𝑧)) → 𝑦 ⊆ 𝑧)})) → 𝐴 ⊆ 𝑥)
22 simprr 785 . . . . . 6 ((𝜑 ∧ (𝐴 ⊆ 𝑥 ∧ 𝑥 ∈ {𝑦 ∣ ∀𝑧(∀𝑤(𝑤 ⊆ 𝑦 → (𝑤 ⊆ 𝑧 → (𝐹‘𝑤) ⊆ 𝑧)) → 𝑦 ⊆ 𝑧)})) → 𝑥 ∈ {𝑦 ∣ ∀𝑧(∀𝑤(𝑤 ⊆ 𝑦 → (𝑤 ⊆ 𝑧 → (𝐹‘𝑤) ⊆ 𝑧)) → 𝑦 ⊆ 𝑧)})
2319, 1, 20, 21, 22setrec1lem4 10008 . . . . 5 ((𝜑 ∧ (𝐴 ⊆ 𝑥 ∧ 𝑥 ∈ {𝑦 ∣ ∀𝑧(∀𝑤(𝑤 ⊆ 𝑦 → (𝑤 ⊆ 𝑧 → (𝐹‘𝑤) ⊆ 𝑧)) → 𝑦 ⊆ 𝑧)})) → (𝑥 ∪ (𝐹‘𝐴)) ∈ {𝑦 ∣ ∀𝑧(∀𝑤(𝑤 ⊆ 𝑦 → (𝑤 ⊆ 𝑧 → (𝐹‘𝑤) ⊆ 𝑧)) → 𝑦 ⊆ 𝑧)})
24 ssun2 4180 . . . . 5 (𝐹‘𝐴) ⊆ (𝑥 ∪ (𝐹‘𝐴))
2523, 24jctil 529 . . . 4 ((𝜑 ∧ (𝐴 ⊆ 𝑥 ∧ 𝑥 ∈ {𝑦 ∣ ∀𝑧(∀𝑤(𝑤 ⊆ 𝑦 → (𝑤 ⊆ 𝑧 → (𝐹‘𝑤) ⊆ 𝑧)) → 𝑦 ⊆ 𝑧)})) → ((𝐹‘𝐴) ⊆ (𝑥 ∪ (𝐹‘𝐴)) ∧ (𝑥 ∪ (𝐹‘𝐴)) ∈ {𝑦 ∣ ∀𝑧(∀𝑤(𝑤 ⊆ 𝑦 → (𝑤 ⊆ 𝑧 → (𝐹‘𝑤) ⊆ 𝑧)) → 𝑦 ⊆ 𝑧)}))
26 ssuni 4898 . . . 4 (((𝐹‘𝐴) ⊆ (𝑥 ∪ (𝐹‘𝐴)) ∧ (𝑥 ∪ (𝐹‘𝐴)) ∈ {𝑦 ∣ ∀𝑧(∀𝑤(𝑤 ⊆ 𝑦 → (𝑤 ⊆ 𝑧 → (𝐹‘𝑤) ⊆ 𝑧)) → 𝑦 ⊆ 𝑧)}) → (𝐹‘𝐴) ⊆ ∪ {𝑦 ∣ ∀𝑧(∀𝑤(𝑤 ⊆ 𝑦 → (𝑤 ⊆ 𝑧 → (𝐹‘𝑤) ⊆ 𝑧)) → 𝑦 ⊆ 𝑧)})
2725, 26syl 18 . . 3 ((𝜑 ∧ (𝐴 ⊆ 𝑥 ∧ 𝑥 ∈ {𝑦 ∣ ∀𝑧(∀𝑤(𝑤 ⊆ 𝑦 → (𝑤 ⊆ 𝑧 → (𝐹‘𝑤) ⊆ 𝑧)) → 𝑦 ⊆ 𝑧)})) → (𝐹‘𝐴) ⊆ ∪ {𝑦 ∣ ∀𝑧(∀𝑤(𝑤 ⊆ 𝑦 → (𝑤 ⊆ 𝑧 → (𝐹‘𝑤) ⊆ 𝑧)) → 𝑦 ⊆ 𝑧)})
2813, 27exlimddv 1970 . 2 (𝜑 → (𝐹‘𝐴) ⊆ ∪ {𝑦 ∣ ∀𝑧(∀𝑤(𝑤 ⊆ 𝑦 → (𝑤 ⊆ 𝑧 → (𝐹‘𝑤) ⊆ 𝑧)) → 𝑦 ⊆ 𝑧)})
2928, 8sseqtrrdi 3954 1 (𝜑 → (𝐹‘𝐴) ⊆ 𝐵)
Colors of variables:    wff setvar class
This proof depends on syntax axioms:   → wi 4   ∧ wa 401  ∀wal 1568   = wceq 1570  ∃wex 1812   ∈ wcel 2147  {cab 2741  Vcvv 3454   ⊆ wss 3900   ∪ cun 4152  ∪ cuni 4872  ‘cfv 6566  setrecscsetrecs 10001
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 1945  ax-6 2002  ax-7 2043  ax-8 2149  ax-9 2157  ax-10 2180  ax-11 2197  ax-12 2216  ax-ext 2735  ax-rep 5238  ax-sep 5255  ax-nul 5266  ax-pow 5334  ax-pr 5398  ax-un 7783  ax-reg 9623  ax-inf2 9679
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 2102  df-mo 2567  df-eu 2597  df-clab 2742  df-cleq 2755  df-clel 2839  df-nfc 2913  df-ne 2960  df-ral 3081  df-rex 3091  df-reu 3370  df-rab 3417  df-v 3456  df-sbc 3743  df-csb 3852  df-ss 3901  df-pss 4017  df-dif 4050  df-in 4094  df-un 4154  df-nul 4282  df-if 4486  df-pw 4562  df-sn 4589  df-pr 4591  df-op 4841  df-uni 4873  df-int 4913  df-iun 4958  df-iin 4959  df-br 5109  df-opab 5174  df-mpt 5193  df-tr 5219  df-id 5553  df-eprel 5558  df-po 5566  df-so 5567  df-fr 5611  df-we 5613  df-xp 5664  df-rel 5665  df-cnv 5666  df-co 5667  df-dm 5668  df-rn 5669  df-res 5670  df-ima 5671  df-pred 6330  df-ord 6391  df-on 6392  df-lim 6393  df-suc 6394  df-iota 6520  df-fun 6568  df-fn 6569  df-f 6570  df-f1 6571  df-fo 6572  df-f1o 6573  df-fv 6574  df-ov 7454  df-om 7912  df-2nd 8036  df-frecs 8337  df-wrecs 8368  df-recs 8417  df-rdg 8456  df-r1 9805  df-rank 9806  df-scott 9966  df-setrecs 10002
This theorem is used by:  varprop  38910  negprop  38911  impprop  38912  elsetrecslem  51198  elsetrecs  51199  setrecsss  51200  setrecsres  51201  vsetrec  51202  onsetrec  51207
  Copyright terms: Public domain W3C validator