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

Theorem refun0 21128
 Description: Adding the empty set preserves refinements. (Contributed by Thierry Arnoux, 31-Jan-2020.)
Assertion
Ref Expression
refun0 ((𝐴Ref𝐵𝐵 ≠ ∅) → (𝐴 ∪ {∅})Ref𝐵)

Proof of Theorem refun0
Dummy variables 𝑥 𝑦 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 eqid 2610 . . . 4 𝐴 = 𝐴
2 eqid 2610 . . . 4 𝐵 = 𝐵
31, 2refbas 21123 . . 3 (𝐴Ref𝐵 𝐵 = 𝐴)
43adantr 480 . 2 ((𝐴Ref𝐵𝐵 ≠ ∅) → 𝐵 = 𝐴)
5 elun 3715 . . . 4 (𝑥 ∈ (𝐴 ∪ {∅}) ↔ (𝑥𝐴𝑥 ∈ {∅}))
6 refssex 21124 . . . . . 6 ((𝐴Ref𝐵𝑥𝐴) → ∃𝑦𝐵 𝑥𝑦)
76adantlr 747 . . . . 5 (((𝐴Ref𝐵𝐵 ≠ ∅) ∧ 𝑥𝐴) → ∃𝑦𝐵 𝑥𝑦)
8 0ss 3924 . . . . . . . . 9 ∅ ⊆ 𝑦
98a1i 11 . . . . . . . 8 ((𝐴Ref𝐵𝑦𝐵) → ∅ ⊆ 𝑦)
109reximdva0 3891 . . . . . . 7 ((𝐴Ref𝐵𝐵 ≠ ∅) → ∃𝑦𝐵 ∅ ⊆ 𝑦)
1110adantr 480 . . . . . 6 (((𝐴Ref𝐵𝐵 ≠ ∅) ∧ 𝑥 ∈ {∅}) → ∃𝑦𝐵 ∅ ⊆ 𝑦)
12 elsni 4142 . . . . . . . 8 (𝑥 ∈ {∅} → 𝑥 = ∅)
13 sseq1 3589 . . . . . . . . 9 (𝑥 = ∅ → (𝑥𝑦 ↔ ∅ ⊆ 𝑦))
1413rexbidv 3034 . . . . . . . 8 (𝑥 = ∅ → (∃𝑦𝐵 𝑥𝑦 ↔ ∃𝑦𝐵 ∅ ⊆ 𝑦))
1512, 14syl 17 . . . . . . 7 (𝑥 ∈ {∅} → (∃𝑦𝐵 𝑥𝑦 ↔ ∃𝑦𝐵 ∅ ⊆ 𝑦))
1615adantl 481 . . . . . 6 (((𝐴Ref𝐵𝐵 ≠ ∅) ∧ 𝑥 ∈ {∅}) → (∃𝑦𝐵 𝑥𝑦 ↔ ∃𝑦𝐵 ∅ ⊆ 𝑦))
1711, 16mpbird 246 . . . . 5 (((𝐴Ref𝐵𝐵 ≠ ∅) ∧ 𝑥 ∈ {∅}) → ∃𝑦𝐵 𝑥𝑦)
187, 17jaodan 822 . . . 4 (((𝐴Ref𝐵𝐵 ≠ ∅) ∧ (𝑥𝐴𝑥 ∈ {∅})) → ∃𝑦𝐵 𝑥𝑦)
195, 18sylan2b 491 . . 3 (((𝐴Ref𝐵𝐵 ≠ ∅) ∧ 𝑥 ∈ (𝐴 ∪ {∅})) → ∃𝑦𝐵 𝑥𝑦)
2019ralrimiva 2949 . 2 ((𝐴Ref𝐵𝐵 ≠ ∅) → ∀𝑥 ∈ (𝐴 ∪ {∅})∃𝑦𝐵 𝑥𝑦)
21 refrel 21121 . . . . . 6 Rel Ref
2221brrelexi 5082 . . . . 5 (𝐴Ref𝐵𝐴 ∈ V)
23 p0ex 4779 . . . . 5 {∅} ∈ V
24 unexg 6857 . . . . 5 ((𝐴 ∈ V ∧ {∅} ∈ V) → (𝐴 ∪ {∅}) ∈ V)
2522, 23, 24sylancl 693 . . . 4 (𝐴Ref𝐵 → (𝐴 ∪ {∅}) ∈ V)
26 uniun 4392 . . . . . 6 (𝐴 ∪ {∅}) = ( 𝐴 {∅})
27 0ex 4718 . . . . . . . 8 ∅ ∈ V
2827unisn 4387 . . . . . . 7 {∅} = ∅
2928uneq2i 3726 . . . . . 6 ( 𝐴 {∅}) = ( 𝐴 ∪ ∅)
30 un0 3919 . . . . . 6 ( 𝐴 ∪ ∅) = 𝐴
3126, 29, 303eqtrri 2637 . . . . 5 𝐴 = (𝐴 ∪ {∅})
3231, 2isref 21122 . . . 4 ((𝐴 ∪ {∅}) ∈ V → ((𝐴 ∪ {∅})Ref𝐵 ↔ ( 𝐵 = 𝐴 ∧ ∀𝑥 ∈ (𝐴 ∪ {∅})∃𝑦𝐵 𝑥𝑦)))
3325, 32syl 17 . . 3 (𝐴Ref𝐵 → ((𝐴 ∪ {∅})Ref𝐵 ↔ ( 𝐵 = 𝐴 ∧ ∀𝑥 ∈ (𝐴 ∪ {∅})∃𝑦𝐵 𝑥𝑦)))
3433adantr 480 . 2 ((𝐴Ref𝐵𝐵 ≠ ∅) → ((𝐴 ∪ {∅})Ref𝐵 ↔ ( 𝐵 = 𝐴 ∧ ∀𝑥 ∈ (𝐴 ∪ {∅})∃𝑦𝐵 𝑥𝑦)))
354, 20, 34mpbir2and 959 1 ((𝐴Ref𝐵𝐵 ≠ ∅) → (𝐴 ∪ {∅})Ref𝐵)
 Colors of variables: wff setvar class Syntax hints:   → wi 4   ↔ wb 195   ∨ wo 382   ∧ wa 383   = wceq 1475   ∈ wcel 1977   ≠ wne 2780  ∀wral 2896  ∃wrex 2897  Vcvv 3173   ∪ cun 3538   ⊆ wss 3540  ∅c0 3874  {csn 4125  ∪ cuni 4372   class class class wbr 4583  Refcref 21115 This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1713  ax-4 1728  ax-5 1827  ax-6 1875  ax-7 1922  ax-8 1979  ax-9 1986  ax-10 2006  ax-11 2021  ax-12 2034  ax-13 2234  ax-ext 2590  ax-sep 4709  ax-nul 4717  ax-pow 4769  ax-pr 4833  ax-un 6847 This theorem depends on definitions:  df-bi 196  df-or 384  df-an 385  df-3an 1033  df-tru 1478  df-ex 1696  df-nf 1701  df-sb 1868  df-eu 2462  df-mo 2463  df-clab 2597  df-cleq 2603  df-clel 2606  df-nfc 2740  df-ne 2782  df-ral 2901  df-rex 2902  df-rab 2905  df-v 3175  df-dif 3543  df-un 3545  df-in 3547  df-ss 3554  df-nul 3875  df-if 4037  df-pw 4110  df-sn 4126  df-pr 4128  df-op 4132  df-uni 4373  df-br 4584  df-opab 4644  df-xp 5044  df-rel 5045  df-ref 21118 This theorem is referenced by:  locfinref  29236
 Copyright terms: Public domain W3C validator