Users' Mathboxes Mathbox for Jeff Madsen < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >   Mathboxes  >  indexdom Structured version   Visualization version   GIF version

Theorem indexdom 38588
Description: If for every element of an indexing set 𝐴 there exists a corresponding element of another set 𝐵, then there exists a subset of 𝐵 consisting only of those elements which are indexed by 𝐴, and which is dominated by the set 𝐴. (Contributed by Jeff Madsen, 2-Sep-2009.)
Assertion
Ref Expression
indexdom ((𝐴 ∈ 𝑀 ∧ ∀𝑥 ∈ 𝐴 ∃𝑦 ∈ 𝐵 𝜑) → ∃𝑐((𝑐 ≼ 𝐴 ∧ 𝑐 ⊆ 𝐵) ∧ (∀𝑥 ∈ 𝐴 ∃𝑦 ∈ 𝑐 𝜑 ∧ ∀𝑦 ∈ 𝑐 ∃𝑥 ∈ 𝐴 𝜑)))
Distinct variable groups:   𝐴,𝑐,𝑥,𝑦   𝐵,𝑐,𝑥,𝑦   𝜑,𝑐
Allowed substitution hints:   𝜑(𝑥, 𝑦)   𝑀(𝑥, 𝑦, 𝑐)

Proof of Theorem indexdom
Dummy variable 𝑓 is distinct from all other variables.
StepHypRef Expression
1 nfsbc1v 3758 . . 3 Ⅎ𝑦[(𝑓‘𝑥) / 𝑦]𝜑
2 sbceq1a 3749 . . 3 (𝑦 = (𝑓‘𝑥) → (𝜑 ↔ [(𝑓‘𝑥) / 𝑦]𝜑))
31, 2ac6gf 38586 . 2 ((𝐴 ∈ 𝑀 ∧ ∀𝑥 ∈ 𝐴 ∃𝑦 ∈ 𝐵 𝜑) → ∃𝑓(𝑓:𝐴⟶𝐵 ∧ ∀𝑥 ∈ 𝐴 [(𝑓‘𝑥) / 𝑦]𝜑))
4 fdm 6707 . . . . . . 7 (𝑓:𝐴⟶𝐵 → dom 𝑓 = 𝐴)
5 vex 3454 . . . . . . . 8 𝑓 ∈ V
65dmex 7904 . . . . . . 7 dom 𝑓 ∈ V
74, 6eqeltrrdi 2869 . . . . . 6 (𝑓:𝐴⟶𝐵 → 𝐴 ∈ V)
8 ffn 6697 . . . . . 6 (𝑓:𝐴⟶𝐵 → 𝑓 Fn 𝐴)
9 fnrndomg 10590 . . . . . 6 (𝐴 ∈ V → (𝑓 Fn 𝐴 → ran 𝑓 ≼ 𝐴))
107, 8, 9sylc 66 . . . . 5 (𝑓:𝐴⟶𝐵 → ran 𝑓 ≼ 𝐴)
1110adantr 486 . . . 4 ((𝑓:𝐴⟶𝐵 ∧ ∀𝑥 ∈ 𝐴 [(𝑓‘𝑥) / 𝑦]𝜑) → ran 𝑓 ≼ 𝐴)
12 frn 6705 . . . . 5 (𝑓:𝐴⟶𝐵 → ran 𝑓 ⊆ 𝐵)
1312adantr 486 . . . 4 ((𝑓:𝐴⟶𝐵 ∧ ∀𝑥 ∈ 𝐴 [(𝑓‘𝑥) / 𝑦]𝜑) → ran 𝑓 ⊆ 𝐵)
14 nfv 1947 . . . . . 6 Ⅎ𝑥 𝑓:𝐴⟶𝐵
15 nfra1 3286 . . . . . 6 Ⅎ𝑥∀𝑥 ∈ 𝐴 [(𝑓‘𝑥) / 𝑦]𝜑
1614, 15nfan 1932 . . . . 5 Ⅎ𝑥(𝑓:𝐴⟶𝐵 ∧ ∀𝑥 ∈ 𝐴 [(𝑓‘𝑥) / 𝑦]𝜑)
17 ffun 6700 . . . . . . . . . 10 (𝑓:𝐴⟶𝐵 → Fun 𝑓)
1817adantr 486 . . . . . . . . 9 ((𝑓:𝐴⟶𝐵 ∧ 𝑥 ∈ 𝐴) → Fun 𝑓)
194eleq2d 2846 . . . . . . . . . 10 (𝑓:𝐴⟶𝐵 → (𝑥 ∈ dom 𝑓 ↔ 𝑥 ∈ 𝐴))
2019biimpar 483 . . . . . . . . 9 ((𝑓:𝐴⟶𝐵 ∧ 𝑥 ∈ 𝐴) → 𝑥 ∈ dom 𝑓)
21 fvelrn 7064 . . . . . . . . 9 ((Fun 𝑓 ∧ 𝑥 ∈ dom 𝑓) → (𝑓‘𝑥) ∈ ran 𝑓)
2218, 20, 21syl2anc 596 . . . . . . . 8 ((𝑓:𝐴⟶𝐵 ∧ 𝑥 ∈ 𝐴) → (𝑓‘𝑥) ∈ ran 𝑓)
2322adantlr 728 . . . . . . 7 (((𝑓:𝐴⟶𝐵 ∧ ∀𝑥 ∈ 𝐴 [(𝑓‘𝑥) / 𝑦]𝜑) ∧ 𝑥 ∈ 𝐴) → (𝑓‘𝑥) ∈ ran 𝑓)
24 rspa 3251 . . . . . . . 8 ((∀𝑥 ∈ 𝐴 [(𝑓‘𝑥) / 𝑦]𝜑 ∧ 𝑥 ∈ 𝐴) → [(𝑓‘𝑥) / 𝑦]𝜑)
2524adantll 727 . . . . . . 7 (((𝑓:𝐴⟶𝐵 ∧ ∀𝑥 ∈ 𝐴 [(𝑓‘𝑥) / 𝑦]𝜑) ∧ 𝑥 ∈ 𝐴) → [(𝑓‘𝑥) / 𝑦]𝜑)
26 rspesbca 3827 . . . . . . 7 (((𝑓‘𝑥) ∈ ran 𝑓 ∧ [(𝑓‘𝑥) / 𝑦]𝜑) → ∃𝑦 ∈ ran 𝑓𝜑)
2723, 25, 26syl2anc 596 . . . . . 6 (((𝑓:𝐴⟶𝐵 ∧ ∀𝑥 ∈ 𝐴 [(𝑓‘𝑥) / 𝑦]𝜑) ∧ 𝑥 ∈ 𝐴) → ∃𝑦 ∈ ran 𝑓𝜑)
2827ex 418 . . . . 5 ((𝑓:𝐴⟶𝐵 ∧ ∀𝑥 ∈ 𝐴 [(𝑓‘𝑥) / 𝑦]𝜑) → (𝑥 ∈ 𝐴 → ∃𝑦 ∈ ran 𝑓𝜑))
2916, 28ralrimi 3260 . . . 4 ((𝑓:𝐴⟶𝐵 ∧ ∀𝑥 ∈ 𝐴 [(𝑓‘𝑥) / 𝑦]𝜑) → ∀𝑥 ∈ 𝐴 ∃𝑦 ∈ ran 𝑓𝜑)
30 nfv 1947 . . . . . 6 Ⅎ𝑦 𝑓:𝐴⟶𝐵
31 nfcv 2922 . . . . . . 7 Ⅎ𝑦𝐴
3231, 1nfralw 3309 . . . . . 6 Ⅎ𝑦∀𝑥 ∈ 𝐴 [(𝑓‘𝑥) / 𝑦]𝜑
3330, 32nfan 1932 . . . . 5 Ⅎ𝑦(𝑓:𝐴⟶𝐵 ∧ ∀𝑥 ∈ 𝐴 [(𝑓‘𝑥) / 𝑦]𝜑)
34 fvelrnb 6933 . . . . . . . 8 (𝑓 Fn 𝐴 → (𝑦 ∈ ran 𝑓 ↔ ∃𝑥 ∈ 𝐴 (𝑓‘𝑥) = 𝑦))
358, 34syl 18 . . . . . . 7 (𝑓:𝐴⟶𝐵 → (𝑦 ∈ ran 𝑓 ↔ ∃𝑥 ∈ 𝐴 (𝑓‘𝑥) = 𝑦))
3635adantr 486 . . . . . 6 ((𝑓:𝐴⟶𝐵 ∧ ∀𝑥 ∈ 𝐴 [(𝑓‘𝑥) / 𝑦]𝜑) → (𝑦 ∈ ran 𝑓 ↔ ∃𝑥 ∈ 𝐴 (𝑓‘𝑥) = 𝑦))
37 rsp 3250 . . . . . . . . 9 (∀𝑥 ∈ 𝐴 [(𝑓‘𝑥) / 𝑦]𝜑 → (𝑥 ∈ 𝐴 → [(𝑓‘𝑥) / 𝑦]𝜑))
3837adantl 487 . . . . . . . 8 ((𝑓:𝐴⟶𝐵 ∧ ∀𝑥 ∈ 𝐴 [(𝑓‘𝑥) / 𝑦]𝜑) → (𝑥 ∈ 𝐴 → [(𝑓‘𝑥) / 𝑦]𝜑))
392eqcoms 2768 . . . . . . . . 9 ((𝑓‘𝑥) = 𝑦 → (𝜑 ↔ [(𝑓‘𝑥) / 𝑦]𝜑))
4039biimprcd 253 . . . . . . . 8 ([(𝑓‘𝑥) / 𝑦]𝜑 → ((𝑓‘𝑥) = 𝑦 → 𝜑))
4138, 40syl6 36 . . . . . . 7 ((𝑓:𝐴⟶𝐵 ∧ ∀𝑥 ∈ 𝐴 [(𝑓‘𝑥) / 𝑦]𝜑) → (𝑥 ∈ 𝐴 → ((𝑓‘𝑥) = 𝑦 → 𝜑)))
4216, 41reximdai 3264 . . . . . 6 ((𝑓:𝐴⟶𝐵 ∧ ∀𝑥 ∈ 𝐴 [(𝑓‘𝑥) / 𝑦]𝜑) → (∃𝑥 ∈ 𝐴 (𝑓‘𝑥) = 𝑦 → ∃𝑥 ∈ 𝐴 𝜑))
4336, 42sylbid 243 . . . . 5 ((𝑓:𝐴⟶𝐵 ∧ ∀𝑥 ∈ 𝐴 [(𝑓‘𝑥) / 𝑦]𝜑) → (𝑦 ∈ ran 𝑓 → ∃𝑥 ∈ 𝐴 𝜑))
4433, 43ralrimi 3260 . . . 4 ((𝑓:𝐴⟶𝐵 ∧ ∀𝑥 ∈ 𝐴 [(𝑓‘𝑥) / 𝑦]𝜑) → ∀𝑦 ∈ ran 𝑓∃𝑥 ∈ 𝐴 𝜑)
455rnex 7905 . . . . 5 ran 𝑓 ∈ V
46 breq1 5105 . . . . . . 7 (𝑐 = ran 𝑓 → (𝑐 ≼ 𝐴 ↔ ran 𝑓 ≼ 𝐴))
47 sseq1 3955 . . . . . . 7 (𝑐 = ran 𝑓 → (𝑐 ⊆ 𝐵 ↔ ran 𝑓 ⊆ 𝐵))
4846, 47anbi12d 644 . . . . . 6 (𝑐 = ran 𝑓 → ((𝑐 ≼ 𝐴 ∧ 𝑐 ⊆ 𝐵) ↔ (ran 𝑓 ≼ 𝐴 ∧ ran 𝑓 ⊆ 𝐵)))
49 rexeq 3315 . . . . . . . 8 (𝑐 = ran 𝑓 → (∃𝑦 ∈ 𝑐 𝜑 ↔ ∃𝑦 ∈ ran 𝑓𝜑))
5049ralbidv 3185 . . . . . . 7 (𝑐 = ran 𝑓 → (∀𝑥 ∈ 𝐴 ∃𝑦 ∈ 𝑐 𝜑 ↔ ∀𝑥 ∈ 𝐴 ∃𝑦 ∈ ran 𝑓𝜑))
51 raleq 3316 . . . . . . 7 (𝑐 = ran 𝑓 → (∀𝑦 ∈ 𝑐 ∃𝑥 ∈ 𝐴 𝜑 ↔ ∀𝑦 ∈ ran 𝑓∃𝑥 ∈ 𝐴 𝜑))
5250, 51anbi12d 644 . . . . . 6 (𝑐 = ran 𝑓 → ((∀𝑥 ∈ 𝐴 ∃𝑦 ∈ 𝑐 𝜑 ∧ ∀𝑦 ∈ 𝑐 ∃𝑥 ∈ 𝐴 𝜑) ↔ (∀𝑥 ∈ 𝐴 ∃𝑦 ∈ ran 𝑓𝜑 ∧ ∀𝑦 ∈ ran 𝑓∃𝑥 ∈ 𝐴 𝜑)))
5348, 52anbi12d 644 . . . . 5 (𝑐 = ran 𝑓 → (((𝑐 ≼ 𝐴 ∧ 𝑐 ⊆ 𝐵) ∧ (∀𝑥 ∈ 𝐴 ∃𝑦 ∈ 𝑐 𝜑 ∧ ∀𝑦 ∈ 𝑐 ∃𝑥 ∈ 𝐴 𝜑)) ↔ ((ran 𝑓 ≼ 𝐴 ∧ ran 𝑓 ⊆ 𝐵) ∧ (∀𝑥 ∈ 𝐴 ∃𝑦 ∈ ran 𝑓𝜑 ∧ ∀𝑦 ∈ ran 𝑓∃𝑥 ∈ 𝐴 𝜑))))
5445, 53spcev 3560 . . . 4 (((ran 𝑓 ≼ 𝐴 ∧ ran 𝑓 ⊆ 𝐵) ∧ (∀𝑥 ∈ 𝐴 ∃𝑦 ∈ ran 𝑓𝜑 ∧ ∀𝑦 ∈ ran 𝑓∃𝑥 ∈ 𝐴 𝜑)) → ∃𝑐((𝑐 ≼ 𝐴 ∧ 𝑐 ⊆ 𝐵) ∧ (∀𝑥 ∈ 𝐴 ∃𝑦 ∈ 𝑐 𝜑 ∧ ∀𝑦 ∈ 𝑐 ∃𝑥 ∈ 𝐴 𝜑)))
5511, 13, 29, 44, 54syl22anc 852 . . 3 ((𝑓:𝐴⟶𝐵 ∧ ∀𝑥 ∈ 𝐴 [(𝑓‘𝑥) / 𝑦]𝜑) → ∃𝑐((𝑐 ≼ 𝐴 ∧ 𝑐 ⊆ 𝐵) ∧ (∀𝑥 ∈ 𝐴 ∃𝑦 ∈ 𝑐 𝜑 ∧ ∀𝑦 ∈ 𝑐 ∃𝑥 ∈ 𝐴 𝜑)))
5655exlimiv 1963 . 2 (∃𝑓(𝑓:𝐴⟶𝐵 ∧ ∀𝑥 ∈ 𝐴 [(𝑓‘𝑥) / 𝑦]𝜑) → ∃𝑐((𝑐 ≼ 𝐴 ∧ 𝑐 ⊆ 𝐵) ∧ (∀𝑥 ∈ 𝐴 ∃𝑦 ∈ 𝑐 𝜑 ∧ ∀𝑦 ∈ 𝑐 ∃𝑥 ∈ 𝐴 𝜑)))
573, 56syl 18 1 ((𝐴 ∈ 𝑀 ∧ ∀𝑥 ∈ 𝐴 ∃𝑦 ∈ 𝐵 𝜑) → ∃𝑐((𝑐 ≼ 𝐴 ∧ 𝑐 ⊆ 𝐵) ∧ (∀𝑥 ∈ 𝐴 ∃𝑦 ∈ 𝑐 𝜑 ∧ ∀𝑦 ∈ 𝑐 ∃𝑥 ∈ 𝐴 𝜑)))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:   → wi 4   ↔ wb 209   ∧ wa 401   = wceq 1570  ∃wex 1812   ∈ wcel 2145  ∀wral 3076  ∃wrex 3086  Vcvv 3450  [wsbc 3738   ⊆ wss 3898   class class class wbr 5102  dom cdm 5647  ran crn 5648  Fun wfun 6521   Fn wfn 6522  ⟶wf 6523  ‘cfv 6527   ≼ cdom 8949
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 1943  ax-6 2000  ax-7 2041  ax-8 2147  ax-9 2155  ax-10 2178  ax-11 2194  ax-12 2213  ax-ext 2732  ax-rep 5231  ax-sep 5248  ax-nul 5259  ax-pow 5326  ax-pr 5390  ax-un 7734  ax-reg 9564  ax-inf2 9620  ax-ac2 10513
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 2100  df-mo 2564  df-eu 2594  df-clab 2739  df-cleq 2752  df-clel 2835  df-nfc 2909  df-ne 2956  df-ral 3077  df-rex 3087  df-rmo 3365  df-reu 3366  df-rab 3413  df-v 3452  df-sbc 3739  df-csb 3847  df-dif 3901  df-un 3903  df-in 3905  df-ss 3915  df-pss 3918  df-nul 4279  df-if 4482  df-pw 4558  df-sn 4584  df-pr 4586  df-op 4590  df-uni 4867  df-int 4907  df-iun 4952  df-iin 4953  df-br 5103  df-opab 5167  df-mpt 5186  df-tr 5212  df-id 5542  df-eprel 5547  df-po 5555  df-so 5556  df-fr 5600  df-se 5601  df-we 5602  df-xp 5653  df-rel 5654  df-cnv 5655  df-co 5656  df-dm 5657  df-rn 5658  df-res 5659  df-ima 5660  df-pred 6293  df-ord 6354  df-on 6355  df-lim 6356  df-suc 6357  df-iota 6483  df-fun 6529  df-fn 6530  df-f 6531  df-f1 6532  df-fo 6533  df-f1o 6534  df-fv 6535  df-isom 6536  df-riota 7365  df-ov 7411  df-oprab 7412  df-mpo 7413  df-om 7861  df-1st 7984  df-2nd 7985  df-frecs 8277  df-wrecs 8308  df-recs 8357  df-rdg 8396  df-er 8695  df-map 8827  df-en 8952  df-dom 8953  df-r1 9746  df-rank 9747  df-scott 9901  df-card 9992  df-acn 9995  df-ac 10167
This theorem is used by: (None)
  Copyright terms: Public domain W3C validator