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

Theorem snopeqop 5294
Description: Equivalence for an ordered pair equal to a singleton of an ordered pair. (Contributed by AV, 18-Sep-2020.) (Revised by AV, 15-Jul-2022.) (Avoid depending on this detail.)
Hypotheses
Ref Expression
snopeqop.a 𝐴 ∈ V
snopeqop.b 𝐵 ∈ V
Assertion
Ref Expression
snopeqop ({⟨𝐴, 𝐵⟩} = ⟨𝐶, 𝐷⟩ ↔ (𝐴 = 𝐵𝐶 = 𝐷𝐶 = {𝐴}))

Proof of Theorem snopeqop
StepHypRef Expression
1 eqcom 2804 . . . . 5 ({⟨𝐴, 𝐵⟩} = ⟨𝐶, 𝐷⟩ ↔ ⟨𝐶, 𝐷⟩ = {⟨𝐴, 𝐵⟩})
2 opeqsng 5291 . . . . . 6 ((𝐶 ∈ V ∧ 𝐷 ∈ V) → (⟨𝐶, 𝐷⟩ = {⟨𝐴, 𝐵⟩} ↔ (𝐶 = 𝐷 ∧ ⟨𝐴, 𝐵⟩ = {𝐶})))
32ancoms 459 . . . . 5 ((𝐷 ∈ V ∧ 𝐶 ∈ V) → (⟨𝐶, 𝐷⟩ = {⟨𝐴, 𝐵⟩} ↔ (𝐶 = 𝐷 ∧ ⟨𝐴, 𝐵⟩ = {𝐶})))
41, 3syl5bb 284 . . . 4 ((𝐷 ∈ V ∧ 𝐶 ∈ V) → ({⟨𝐴, 𝐵⟩} = ⟨𝐶, 𝐷⟩ ↔ (𝐶 = 𝐷 ∧ ⟨𝐴, 𝐵⟩ = {𝐶})))
5 snopeqop.a . . . . . . 7 𝐴 ∈ V
6 snopeqop.b . . . . . . 7 𝐵 ∈ V
75, 6opeqsn 5292 . . . . . 6 (⟨𝐴, 𝐵⟩ = {𝐶} ↔ (𝐴 = 𝐵𝐶 = {𝐴}))
87a1i 11 . . . . 5 ((𝐷 ∈ V ∧ 𝐶 ∈ V) → (⟨𝐴, 𝐵⟩ = {𝐶} ↔ (𝐴 = 𝐵𝐶 = {𝐴})))
98anbi2d 628 . . . 4 ((𝐷 ∈ V ∧ 𝐶 ∈ V) → ((𝐶 = 𝐷 ∧ ⟨𝐴, 𝐵⟩ = {𝐶}) ↔ (𝐶 = 𝐷 ∧ (𝐴 = 𝐵𝐶 = {𝐴}))))
10 3anan12 1089 . . . . . 6 ((𝐴 = 𝐵𝐶 = 𝐷𝐶 = {𝐴}) ↔ (𝐶 = 𝐷 ∧ (𝐴 = 𝐵𝐶 = {𝐴})))
1110bicomi 225 . . . . 5 ((𝐶 = 𝐷 ∧ (𝐴 = 𝐵𝐶 = {𝐴})) ↔ (𝐴 = 𝐵𝐶 = 𝐷𝐶 = {𝐴}))
1211a1i 11 . . . 4 ((𝐷 ∈ V ∧ 𝐶 ∈ V) → ((𝐶 = 𝐷 ∧ (𝐴 = 𝐵𝐶 = {𝐴})) ↔ (𝐴 = 𝐵𝐶 = 𝐷𝐶 = {𝐴})))
134, 9, 123bitrd 306 . . 3 ((𝐷 ∈ V ∧ 𝐶 ∈ V) → ({⟨𝐴, 𝐵⟩} = ⟨𝐶, 𝐷⟩ ↔ (𝐴 = 𝐵𝐶 = 𝐷𝐶 = {𝐴})))
14 opprc2 4741 . . . . . . 7 𝐷 ∈ V → ⟨𝐶, 𝐷⟩ = ∅)
1514eqeq2d 2807 . . . . . 6 𝐷 ∈ V → ({⟨𝐴, 𝐵⟩} = ⟨𝐶, 𝐷⟩ ↔ {⟨𝐴, 𝐵⟩} = ∅))
16 opex 5255 . . . . . . . 8 𝐴, 𝐵⟩ ∈ V
1716snnz 4624 . . . . . . 7 {⟨𝐴, 𝐵⟩} ≠ ∅
18 eqneqall 2997 . . . . . . 7 ({⟨𝐴, 𝐵⟩} = ∅ → ({⟨𝐴, 𝐵⟩} ≠ ∅ → (𝐴 = 𝐵𝐶 = 𝐷𝐶 = {𝐴})))
1917, 18mpi 20 . . . . . 6 ({⟨𝐴, 𝐵⟩} = ∅ → (𝐴 = 𝐵𝐶 = 𝐷𝐶 = {𝐴}))
2015, 19syl6bi 254 . . . . 5 𝐷 ∈ V → ({⟨𝐴, 𝐵⟩} = ⟨𝐶, 𝐷⟩ → (𝐴 = 𝐵𝐶 = 𝐷𝐶 = {𝐴})))
2120adantr 481 . . . 4 ((¬ 𝐷 ∈ V ∧ 𝐶 ∈ V) → ({⟨𝐴, 𝐵⟩} = ⟨𝐶, 𝐷⟩ → (𝐴 = 𝐵𝐶 = 𝐷𝐶 = {𝐴})))
22 eleq1 2872 . . . . . . . . . 10 (𝐷 = 𝐶 → (𝐷 ∈ V ↔ 𝐶 ∈ V))
2322notbid 319 . . . . . . . . 9 (𝐷 = 𝐶 → (¬ 𝐷 ∈ V ↔ ¬ 𝐶 ∈ V))
2423eqcoms 2805 . . . . . . . 8 (𝐶 = 𝐷 → (¬ 𝐷 ∈ V ↔ ¬ 𝐶 ∈ V))
25 pm2.21 123 . . . . . . . 8 𝐶 ∈ V → (𝐶 ∈ V → {⟨𝐴, 𝐵⟩} = ⟨𝐶, 𝐷⟩))
2624, 25syl6bi 254 . . . . . . 7 (𝐶 = 𝐷 → (¬ 𝐷 ∈ V → (𝐶 ∈ V → {⟨𝐴, 𝐵⟩} = ⟨𝐶, 𝐷⟩)))
2726impd 411 . . . . . 6 (𝐶 = 𝐷 → ((¬ 𝐷 ∈ V ∧ 𝐶 ∈ V) → {⟨𝐴, 𝐵⟩} = ⟨𝐶, 𝐷⟩))
28273ad2ant2 1127 . . . . 5 ((𝐴 = 𝐵𝐶 = 𝐷𝐶 = {𝐴}) → ((¬ 𝐷 ∈ V ∧ 𝐶 ∈ V) → {⟨𝐴, 𝐵⟩} = ⟨𝐶, 𝐷⟩))
2928com12 32 . . . 4 ((¬ 𝐷 ∈ V ∧ 𝐶 ∈ V) → ((𝐴 = 𝐵𝐶 = 𝐷𝐶 = {𝐴}) → {⟨𝐴, 𝐵⟩} = ⟨𝐶, 𝐷⟩))
3021, 29impbid 213 . . 3 ((¬ 𝐷 ∈ V ∧ 𝐶 ∈ V) → ({⟨𝐴, 𝐵⟩} = ⟨𝐶, 𝐷⟩ ↔ (𝐴 = 𝐵𝐶 = 𝐷𝐶 = {𝐴})))
3113, 30pm2.61ian 808 . 2 (𝐶 ∈ V → ({⟨𝐴, 𝐵⟩} = ⟨𝐶, 𝐷⟩ ↔ (𝐴 = 𝐵𝐶 = 𝐷𝐶 = {𝐴})))
32 opprc1 4740 . . . . 5 𝐶 ∈ V → ⟨𝐶, 𝐷⟩ = ∅)
3332eqeq2d 2807 . . . 4 𝐶 ∈ V → ({⟨𝐴, 𝐵⟩} = ⟨𝐶, 𝐷⟩ ↔ {⟨𝐴, 𝐵⟩} = ∅))
3433, 19syl6bi 254 . . 3 𝐶 ∈ V → ({⟨𝐴, 𝐵⟩} = ⟨𝐶, 𝐷⟩ → (𝐴 = 𝐵𝐶 = 𝐷𝐶 = {𝐴})))
35 eleq1 2872 . . . . . . 7 (𝐶 = {𝐴} → (𝐶 ∈ V ↔ {𝐴} ∈ V))
3635notbid 319 . . . . . 6 (𝐶 = {𝐴} → (¬ 𝐶 ∈ V ↔ ¬ {𝐴} ∈ V))
37 snex 5230 . . . . . . 7 {𝐴} ∈ V
3837pm2.24i 153 . . . . . 6 (¬ {𝐴} ∈ V → {⟨𝐴, 𝐵⟩} = ⟨𝐶, 𝐷⟩)
3936, 38syl6bi 254 . . . . 5 (𝐶 = {𝐴} → (¬ 𝐶 ∈ V → {⟨𝐴, 𝐵⟩} = ⟨𝐶, 𝐷⟩))
40393ad2ant3 1128 . . . 4 ((𝐴 = 𝐵𝐶 = 𝐷𝐶 = {𝐴}) → (¬ 𝐶 ∈ V → {⟨𝐴, 𝐵⟩} = ⟨𝐶, 𝐷⟩))
4140com12 32 . . 3 𝐶 ∈ V → ((𝐴 = 𝐵𝐶 = 𝐷𝐶 = {𝐴}) → {⟨𝐴, 𝐵⟩} = ⟨𝐶, 𝐷⟩))
4234, 41impbid 213 . 2 𝐶 ∈ V → ({⟨𝐴, 𝐵⟩} = ⟨𝐶, 𝐷⟩ ↔ (𝐴 = 𝐵𝐶 = 𝐷𝐶 = {𝐴})))
4331, 42pm2.61i 183 1 ({⟨𝐴, 𝐵⟩} = ⟨𝐶, 𝐷⟩ ↔ (𝐴 = 𝐵𝐶 = 𝐷𝐶 = {𝐴}))
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wi 4  wb 207  wa 396  w3a 1080   = wceq 1525  wcel 2083  wne 2986  Vcvv 3440  c0 4217  {csn 4478  cop 4484
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1781  ax-4 1795  ax-5 1892  ax-6 1951  ax-7 1996  ax-8 2085  ax-9 2093  ax-10 2114  ax-11 2128  ax-12 2143  ax-ext 2771  ax-sep 5101  ax-nul 5108  ax-pr 5228
This theorem depends on definitions:  df-bi 208  df-an 397  df-or 843  df-3an 1082  df-tru 1528  df-ex 1766  df-nf 1770  df-sb 2045  df-clab 2778  df-cleq 2790  df-clel 2865  df-nfc 2937  df-ne 2987  df-v 3442  df-dif 3868  df-un 3870  df-in 3872  df-ss 3880  df-nul 4218  df-if 4388  df-sn 4479  df-pr 4481  df-op 4485
This theorem is referenced by:  snopeqopsnid  5297  funopsn  6780
  Copyright terms: Public domain W3C validator