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

Theorem dfopif 4797
Description: Rewrite df-op 4565 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 2139, ax-11 2156, ax-12 2173. (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 4261 . . . . . 6 ¬ 𝑥 ∈ ∅
21intnan 486 . . . . 5 ¬ (¬ (𝐴 ∈ V ∧ 𝐵 ∈ V) ∧ 𝑥 ∈ ∅)
3 biorf 933 . . . . 5 (¬ (¬ (𝐴 ∈ V ∧ 𝐵 ∈ V) ∧ 𝑥 ∈ ∅) → (((𝐴 ∈ V ∧ 𝐵 ∈ V) ∧ 𝑥 ∈ {{𝐴}, {𝐴, 𝐵}}) ↔ ((¬ (𝐴 ∈ V ∧ 𝐵 ∈ V) ∧ 𝑥 ∈ ∅) ∨ ((𝐴 ∈ V ∧ 𝐵 ∈ V) ∧ 𝑥 ∈ {{𝐴}, {𝐴, 𝐵}}))))
42, 3ax-mp 5 . . . 4 (((𝐴 ∈ V ∧ 𝐵 ∈ V) ∧ 𝑥 ∈ {{𝐴}, {𝐴, 𝐵}}) ↔ ((¬ (𝐴 ∈ V ∧ 𝐵 ∈ V) ∧ 𝑥 ∈ ∅) ∨ ((𝐴 ∈ V ∧ 𝐵 ∈ V) ∧ 𝑥 ∈ {{𝐴}, {𝐴, 𝐵}})))
5 df-3an 1087 . . . 4 ((𝐴 ∈ V ∧ 𝐵 ∈ V ∧ 𝑥 ∈ {{𝐴}, {𝐴, 𝐵}}) ↔ ((𝐴 ∈ V ∧ 𝐵 ∈ V) ∧ 𝑥 ∈ {{𝐴}, {𝐴, 𝐵}}))
6 orcom 866 . . . 4 ((((𝐴 ∈ V ∧ 𝐵 ∈ V) ∧ 𝑥 ∈ {{𝐴}, {𝐴, 𝐵}}) ∨ (¬ (𝐴 ∈ V ∧ 𝐵 ∈ V) ∧ 𝑥 ∈ ∅)) ↔ ((¬ (𝐴 ∈ V ∧ 𝐵 ∈ V) ∧ 𝑥 ∈ ∅) ∨ ((𝐴 ∈ V ∧ 𝐵 ∈ V) ∧ 𝑥 ∈ {{𝐴}, {𝐴, 𝐵}})))
74, 5, 63bitr4i 302 . . 3 ((𝐴 ∈ V ∧ 𝐵 ∈ V ∧ 𝑥 ∈ {{𝐴}, {𝐴, 𝐵}}) ↔ (((𝐴 ∈ V ∧ 𝐵 ∈ V) ∧ 𝑥 ∈ {{𝐴}, {𝐴, 𝐵}}) ∨ (¬ (𝐴 ∈ V ∧ 𝐵 ∈ V) ∧ 𝑥 ∈ ∅)))
8 eleq1 2826 . . . . . 6 (𝑦 = 𝑥 → (𝑦 ∈ {{𝐴}, {𝐴, 𝐵}} ↔ 𝑥 ∈ {{𝐴}, {𝐴, 𝐵}}))
983anbi3d 1440 . . . . 5 (𝑦 = 𝑥 → ((𝐴 ∈ V ∧ 𝐵 ∈ V ∧ 𝑦 ∈ {{𝐴}, {𝐴, 𝐵}}) ↔ (𝐴 ∈ V ∧ 𝐵 ∈ V ∧ 𝑥 ∈ {{𝐴}, {𝐴, 𝐵}})))
10 df-op 4565 . . . . 5 𝐴, 𝐵⟩ = {𝑦 ∣ (𝐴 ∈ V ∧ 𝐵 ∈ V ∧ 𝑦 ∈ {{𝐴}, {𝐴, 𝐵}})}
119, 10elab2g 3604 . . . 4 (𝑥 ∈ V → (𝑥 ∈ ⟨𝐴, 𝐵⟩ ↔ (𝐴 ∈ V ∧ 𝐵 ∈ V ∧ 𝑥 ∈ {{𝐴}, {𝐴, 𝐵}})))
1211elv 3428 . . 3 (𝑥 ∈ ⟨𝐴, 𝐵⟩ ↔ (𝐴 ∈ V ∧ 𝐵 ∈ V ∧ 𝑥 ∈ {{𝐴}, {𝐴, 𝐵}}))
13 elif 4499 . . 3 (𝑥 ∈ if((𝐴 ∈ V ∧ 𝐵 ∈ V), {{𝐴}, {𝐴, 𝐵}}, ∅) ↔ (((𝐴 ∈ V ∧ 𝐵 ∈ V) ∧ 𝑥 ∈ {{𝐴}, {𝐴, 𝐵}}) ∨ (¬ (𝐴 ∈ V ∧ 𝐵 ∈ V) ∧ 𝑥 ∈ ∅)))
147, 12, 133bitr4i 302 . 2 (𝑥 ∈ ⟨𝐴, 𝐵⟩ ↔ 𝑥 ∈ if((𝐴 ∈ V ∧ 𝐵 ∈ V), {{𝐴}, {𝐴, 𝐵}}, ∅))
1514eqriv 2735 1 𝐴, 𝐵⟩ = if((𝐴 ∈ V ∧ 𝐵 ∈ V), {{𝐴}, {𝐴, 𝐵}}, ∅)
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wb 205  wa 395  wo 843  w3a 1085   = wceq 1539  wcel 2108  Vcvv 3422  c0 4253  ifcif 4456  {csn 4558  {cpr 4560  cop 4564
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1799  ax-4 1813  ax-5 1914  ax-6 1972  ax-7 2012  ax-8 2110  ax-9 2118  ax-ext 2709
This theorem depends on definitions:  df-bi 206  df-an 396  df-or 844  df-3an 1087  df-tru 1542  df-fal 1552  df-ex 1784  df-sb 2069  df-clab 2716  df-cleq 2730  df-clel 2817  df-v 3424  df-dif 3886  df-nul 4254  df-if 4457  df-op 4565
This theorem is referenced by:  dfopg  4799  opeq1  4801  opeq2  4802  nfop  4817  csbopg  4819  opprc  4824  opex  5373
  Copyright terms: Public domain W3C validator