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

Theorem dfopif 4800
Description: Rewrite df-op 4568 using if. When both arguments are sets, it reduces to the standard Kuratowski definition; otherwise, it is defined to be the empty set. Avoid directly depending on this detail so that theorems will not depend on the Kuratowski construction. (Contributed by Mario Carneiro, 26-Apr-2015.) Avoid ax-10 2137, ax-11 2154, ax-12 2171. (Revised by SN, 1-Aug-2024.) (Avoid depending on this detail.)
Assertion
Ref Expression
dfopif 𝐴, 𝐵⟩ = if((𝐴 ∈ V ∧ 𝐵 ∈ V), {{𝐴}, {𝐴, 𝐵}}, ∅)

Proof of Theorem dfopif
Dummy variables 𝑥 𝑦 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 noel 4264 . . . . . 6 ¬ 𝑥 ∈ ∅
21intnan 487 . . . . 5 ¬ (¬ (𝐴 ∈ V ∧ 𝐵 ∈ V) ∧ 𝑥 ∈ ∅)
3 biorf 934 . . . . 5 (¬ (¬ (𝐴 ∈ V ∧ 𝐵 ∈ V) ∧ 𝑥 ∈ ∅) → (((𝐴 ∈ V ∧ 𝐵 ∈ V) ∧ 𝑥 ∈ {{𝐴}, {𝐴, 𝐵}}) ↔ ((¬ (𝐴 ∈ V ∧ 𝐵 ∈ V) ∧ 𝑥 ∈ ∅) ∨ ((𝐴 ∈ V ∧ 𝐵 ∈ V) ∧ 𝑥 ∈ {{𝐴}, {𝐴, 𝐵}}))))
42, 3ax-mp 5 . . . 4 (((𝐴 ∈ V ∧ 𝐵 ∈ V) ∧ 𝑥 ∈ {{𝐴}, {𝐴, 𝐵}}) ↔ ((¬ (𝐴 ∈ V ∧ 𝐵 ∈ V) ∧ 𝑥 ∈ ∅) ∨ ((𝐴 ∈ V ∧ 𝐵 ∈ V) ∧ 𝑥 ∈ {{𝐴}, {𝐴, 𝐵}})))
5 df-3an 1088 . . . 4 ((𝐴 ∈ V ∧ 𝐵 ∈ V ∧ 𝑥 ∈ {{𝐴}, {𝐴, 𝐵}}) ↔ ((𝐴 ∈ V ∧ 𝐵 ∈ V) ∧ 𝑥 ∈ {{𝐴}, {𝐴, 𝐵}}))
6 orcom 867 . . . 4 ((((𝐴 ∈ V ∧ 𝐵 ∈ V) ∧ 𝑥 ∈ {{𝐴}, {𝐴, 𝐵}}) ∨ (¬ (𝐴 ∈ V ∧ 𝐵 ∈ V) ∧ 𝑥 ∈ ∅)) ↔ ((¬ (𝐴 ∈ V ∧ 𝐵 ∈ V) ∧ 𝑥 ∈ ∅) ∨ ((𝐴 ∈ V ∧ 𝐵 ∈ V) ∧ 𝑥 ∈ {{𝐴}, {𝐴, 𝐵}})))
74, 5, 63bitr4i 303 . . 3 ((𝐴 ∈ V ∧ 𝐵 ∈ V ∧ 𝑥 ∈ {{𝐴}, {𝐴, 𝐵}}) ↔ (((𝐴 ∈ V ∧ 𝐵 ∈ V) ∧ 𝑥 ∈ {{𝐴}, {𝐴, 𝐵}}) ∨ (¬ (𝐴 ∈ V ∧ 𝐵 ∈ V) ∧ 𝑥 ∈ ∅)))
8 eleq1 2826 . . . . . 6 (𝑦 = 𝑥 → (𝑦 ∈ {{𝐴}, {𝐴, 𝐵}} ↔ 𝑥 ∈ {{𝐴}, {𝐴, 𝐵}}))
983anbi3d 1441 . . . . 5 (𝑦 = 𝑥 → ((𝐴 ∈ V ∧ 𝐵 ∈ V ∧ 𝑦 ∈ {{𝐴}, {𝐴, 𝐵}}) ↔ (𝐴 ∈ V ∧ 𝐵 ∈ V ∧ 𝑥 ∈ {{𝐴}, {𝐴, 𝐵}})))
10 df-op 4568 . . . . 5 𝐴, 𝐵⟩ = {𝑦 ∣ (𝐴 ∈ V ∧ 𝐵 ∈ V ∧ 𝑦 ∈ {{𝐴}, {𝐴, 𝐵}})}
119, 10elab2g 3611 . . . 4 (𝑥 ∈ V → (𝑥 ∈ ⟨𝐴, 𝐵⟩ ↔ (𝐴 ∈ V ∧ 𝐵 ∈ V ∧ 𝑥 ∈ {{𝐴}, {𝐴, 𝐵}})))
1211elv 3438 . . 3 (𝑥 ∈ ⟨𝐴, 𝐵⟩ ↔ (𝐴 ∈ V ∧ 𝐵 ∈ V ∧ 𝑥 ∈ {{𝐴}, {𝐴, 𝐵}}))
13 elif 4502 . . 3 (𝑥 ∈ if((𝐴 ∈ V ∧ 𝐵 ∈ V), {{𝐴}, {𝐴, 𝐵}}, ∅) ↔ (((𝐴 ∈ V ∧ 𝐵 ∈ V) ∧ 𝑥 ∈ {{𝐴}, {𝐴, 𝐵}}) ∨ (¬ (𝐴 ∈ V ∧ 𝐵 ∈ V) ∧ 𝑥 ∈ ∅)))
147, 12, 133bitr4i 303 . 2 (𝑥 ∈ ⟨𝐴, 𝐵⟩ ↔ 𝑥 ∈ if((𝐴 ∈ V ∧ 𝐵 ∈ V), {{𝐴}, {𝐴, 𝐵}}, ∅))
1514eqriv 2735 1 𝐴, 𝐵⟩ = if((𝐴 ∈ V ∧ 𝐵 ∈ V), {{𝐴}, {𝐴, 𝐵}}, ∅)
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wb 205  wa 396  wo 844  w3a 1086   = wceq 1539  wcel 2106  Vcvv 3432  c0 4256  ifcif 4459  {csn 4561  {cpr 4563  cop 4567
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1798  ax-4 1812  ax-5 1913  ax-6 1971  ax-7 2011  ax-8 2108  ax-9 2116  ax-ext 2709
This theorem depends on definitions:  df-bi 206  df-an 397  df-or 845  df-3an 1088  df-tru 1542  df-fal 1552  df-ex 1783  df-sb 2068  df-clab 2716  df-cleq 2730  df-clel 2816  df-v 3434  df-dif 3890  df-nul 4257  df-if 4460  df-op 4568
This theorem is referenced by:  dfopg  4802  opeq1  4804  opeq2  4805  nfop  4820  csbopg  4822  opprc  4827  opex  5379
  Copyright terms: Public domain W3C validator