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

Theorem dfopif 4755
Description: Rewrite df-op 4523 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 2145, ax-11 2162, ax-12 2179. (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 4219 . . . . . 6 ¬ 𝑥 ∈ ∅
21intnan 490 . . . . 5 ¬ (¬ (𝐴 ∈ V ∧ 𝐵 ∈ V) ∧ 𝑥 ∈ ∅)
3 biorf 936 . . . . 5 (¬ (¬ (𝐴 ∈ V ∧ 𝐵 ∈ V) ∧ 𝑥 ∈ ∅) → (((𝐴 ∈ V ∧ 𝐵 ∈ V) ∧ 𝑥 ∈ {{𝐴}, {𝐴, 𝐵}}) ↔ ((¬ (𝐴 ∈ V ∧ 𝐵 ∈ V) ∧ 𝑥 ∈ ∅) ∨ ((𝐴 ∈ V ∧ 𝐵 ∈ V) ∧ 𝑥 ∈ {{𝐴}, {𝐴, 𝐵}}))))
42, 3ax-mp 5 . . . 4 (((𝐴 ∈ V ∧ 𝐵 ∈ V) ∧ 𝑥 ∈ {{𝐴}, {𝐴, 𝐵}}) ↔ ((¬ (𝐴 ∈ V ∧ 𝐵 ∈ V) ∧ 𝑥 ∈ ∅) ∨ ((𝐴 ∈ V ∧ 𝐵 ∈ V) ∧ 𝑥 ∈ {{𝐴}, {𝐴, 𝐵}})))
5 df-3an 1090 . . . 4 ((𝐴 ∈ V ∧ 𝐵 ∈ V ∧ 𝑥 ∈ {{𝐴}, {𝐴, 𝐵}}) ↔ ((𝐴 ∈ V ∧ 𝐵 ∈ V) ∧ 𝑥 ∈ {{𝐴}, {𝐴, 𝐵}}))
6 orcom 869 . . . 4 ((((𝐴 ∈ V ∧ 𝐵 ∈ V) ∧ 𝑥 ∈ {{𝐴}, {𝐴, 𝐵}}) ∨ (¬ (𝐴 ∈ V ∧ 𝐵 ∈ V) ∧ 𝑥 ∈ ∅)) ↔ ((¬ (𝐴 ∈ V ∧ 𝐵 ∈ V) ∧ 𝑥 ∈ ∅) ∨ ((𝐴 ∈ V ∧ 𝐵 ∈ V) ∧ 𝑥 ∈ {{𝐴}, {𝐴, 𝐵}})))
74, 5, 63bitr4i 306 . . 3 ((𝐴 ∈ V ∧ 𝐵 ∈ V ∧ 𝑥 ∈ {{𝐴}, {𝐴, 𝐵}}) ↔ (((𝐴 ∈ V ∧ 𝐵 ∈ V) ∧ 𝑥 ∈ {{𝐴}, {𝐴, 𝐵}}) ∨ (¬ (𝐴 ∈ V ∧ 𝐵 ∈ V) ∧ 𝑥 ∈ ∅)))
8 eleq1 2820 . . . . . 6 (𝑦 = 𝑥 → (𝑦 ∈ {{𝐴}, {𝐴, 𝐵}} ↔ 𝑥 ∈ {{𝐴}, {𝐴, 𝐵}}))
983anbi3d 1443 . . . . 5 (𝑦 = 𝑥 → ((𝐴 ∈ V ∧ 𝐵 ∈ V ∧ 𝑦 ∈ {{𝐴}, {𝐴, 𝐵}}) ↔ (𝐴 ∈ V ∧ 𝐵 ∈ V ∧ 𝑥 ∈ {{𝐴}, {𝐴, 𝐵}})))
10 df-op 4523 . . . . 5 𝐴, 𝐵⟩ = {𝑦 ∣ (𝐴 ∈ V ∧ 𝐵 ∈ V ∧ 𝑦 ∈ {{𝐴}, {𝐴, 𝐵}})}
119, 10elab2g 3575 . . . 4 (𝑥 ∈ V → (𝑥 ∈ ⟨𝐴, 𝐵⟩ ↔ (𝐴 ∈ V ∧ 𝐵 ∈ V ∧ 𝑥 ∈ {{𝐴}, {𝐴, 𝐵}})))
1211elv 3404 . . 3 (𝑥 ∈ ⟨𝐴, 𝐵⟩ ↔ (𝐴 ∈ V ∧ 𝐵 ∈ V ∧ 𝑥 ∈ {{𝐴}, {𝐴, 𝐵}}))
13 elif 4457 . . 3 (𝑥 ∈ if((𝐴 ∈ V ∧ 𝐵 ∈ V), {{𝐴}, {𝐴, 𝐵}}, ∅) ↔ (((𝐴 ∈ V ∧ 𝐵 ∈ V) ∧ 𝑥 ∈ {{𝐴}, {𝐴, 𝐵}}) ∨ (¬ (𝐴 ∈ V ∧ 𝐵 ∈ V) ∧ 𝑥 ∈ ∅)))
147, 12, 133bitr4i 306 . 2 (𝑥 ∈ ⟨𝐴, 𝐵⟩ ↔ 𝑥 ∈ if((𝐴 ∈ V ∧ 𝐵 ∈ V), {{𝐴}, {𝐴, 𝐵}}, ∅))
1514eqriv 2735 1 𝐴, 𝐵⟩ = if((𝐴 ∈ V ∧ 𝐵 ∈ V), {{𝐴}, {𝐴, 𝐵}}, ∅)
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wb 209  wa 399  wo 846  w3a 1088   = wceq 1542  wcel 2114  Vcvv 3398  c0 4211  ifcif 4414  {csn 4516  {cpr 4518  cop 4522
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1802  ax-4 1816  ax-5 1917  ax-6 1975  ax-7 2020  ax-8 2116  ax-9 2124  ax-ext 2710
This theorem depends on definitions:  df-bi 210  df-an 400  df-or 847  df-3an 1090  df-tru 1545  df-fal 1555  df-ex 1787  df-sb 2075  df-clab 2717  df-cleq 2730  df-clel 2811  df-v 3400  df-dif 3846  df-nul 4212  df-if 4415  df-op 4523
This theorem is referenced by:  dfopg  4757  opeq1OLD  4760  opeq2OLD  4762  nfop  4777  csbopg  4779  opprc  4784  opex  5322
  Copyright terms: Public domain W3C validator