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

Theorem snopeqop 5388
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 2828 . . . . 5 ({⟨𝐴, 𝐵⟩} = ⟨𝐶, 𝐷⟩ ↔ ⟨𝐶, 𝐷⟩ = {⟨𝐴, 𝐵⟩})
2 opeqsng 5385 . . . . . 6 ((𝐶 ∈ V ∧ 𝐷 ∈ V) → (⟨𝐶, 𝐷⟩ = {⟨𝐴, 𝐵⟩} ↔ (𝐶 = 𝐷 ∧ ⟨𝐴, 𝐵⟩ = {𝐶})))
32ancoms 461 . . . . 5 ((𝐷 ∈ V ∧ 𝐶 ∈ V) → (⟨𝐶, 𝐷⟩ = {⟨𝐴, 𝐵⟩} ↔ (𝐶 = 𝐷 ∧ ⟨𝐴, 𝐵⟩ = {𝐶})))
41, 3syl5bb 285 . . . 4 ((𝐷 ∈ V ∧ 𝐶 ∈ V) → ({⟨𝐴, 𝐵⟩} = ⟨𝐶, 𝐷⟩ ↔ (𝐶 = 𝐷 ∧ ⟨𝐴, 𝐵⟩ = {𝐶})))
5 snopeqop.a . . . . . . 7 𝐴 ∈ V
6 snopeqop.b . . . . . . 7 𝐵 ∈ V
75, 6opeqsn 5386 . . . . . 6 (⟨𝐴, 𝐵⟩ = {𝐶} ↔ (𝐴 = 𝐵𝐶 = {𝐴}))
87a1i 11 . . . . 5 ((𝐷 ∈ V ∧ 𝐶 ∈ V) → (⟨𝐴, 𝐵⟩ = {𝐶} ↔ (𝐴 = 𝐵𝐶 = {𝐴})))
98anbi2d 630 . . . 4 ((𝐷 ∈ V ∧ 𝐶 ∈ V) → ((𝐶 = 𝐷 ∧ ⟨𝐴, 𝐵⟩ = {𝐶}) ↔ (𝐶 = 𝐷 ∧ (𝐴 = 𝐵𝐶 = {𝐴}))))
10 3anan12 1092 . . . . . 6 ((𝐴 = 𝐵𝐶 = 𝐷𝐶 = {𝐴}) ↔ (𝐶 = 𝐷 ∧ (𝐴 = 𝐵𝐶 = {𝐴})))
1110bicomi 226 . . . . 5 ((𝐶 = 𝐷 ∧ (𝐴 = 𝐵𝐶 = {𝐴})) ↔ (𝐴 = 𝐵𝐶 = 𝐷𝐶 = {𝐴}))
1211a1i 11 . . . 4 ((𝐷 ∈ V ∧ 𝐶 ∈ V) → ((𝐶 = 𝐷 ∧ (𝐴 = 𝐵𝐶 = {𝐴})) ↔ (𝐴 = 𝐵𝐶 = 𝐷𝐶 = {𝐴})))
134, 9, 123bitrd 307 . . 3 ((𝐷 ∈ V ∧ 𝐶 ∈ V) → ({⟨𝐴, 𝐵⟩} = ⟨𝐶, 𝐷⟩ ↔ (𝐴 = 𝐵𝐶 = 𝐷𝐶 = {𝐴})))
14 opprc2 4821 . . . . . . 7 𝐷 ∈ V → ⟨𝐶, 𝐷⟩ = ∅)
1514eqeq2d 2832 . . . . . 6 𝐷 ∈ V → ({⟨𝐴, 𝐵⟩} = ⟨𝐶, 𝐷⟩ ↔ {⟨𝐴, 𝐵⟩} = ∅))
16 opex 5348 . . . . . . . 8 𝐴, 𝐵⟩ ∈ V
1716snnz 4704 . . . . . . 7 {⟨𝐴, 𝐵⟩} ≠ ∅
18 eqneqall 3027 . . . . . . 7 ({⟨𝐴, 𝐵⟩} = ∅ → ({⟨𝐴, 𝐵⟩} ≠ ∅ → (𝐴 = 𝐵𝐶 = 𝐷𝐶 = {𝐴})))
1917, 18mpi 20 . . . . . 6 ({⟨𝐴, 𝐵⟩} = ∅ → (𝐴 = 𝐵𝐶 = 𝐷𝐶 = {𝐴}))
2015, 19syl6bi 255 . . . . 5 𝐷 ∈ V → ({⟨𝐴, 𝐵⟩} = ⟨𝐶, 𝐷⟩ → (𝐴 = 𝐵𝐶 = 𝐷𝐶 = {𝐴})))
2120adantr 483 . . . 4 ((¬ 𝐷 ∈ V ∧ 𝐶 ∈ V) → ({⟨𝐴, 𝐵⟩} = ⟨𝐶, 𝐷⟩ → (𝐴 = 𝐵𝐶 = 𝐷𝐶 = {𝐴})))
22 eleq1 2900 . . . . . . . . . 10 (𝐷 = 𝐶 → (𝐷 ∈ V ↔ 𝐶 ∈ V))
2322notbid 320 . . . . . . . . 9 (𝐷 = 𝐶 → (¬ 𝐷 ∈ V ↔ ¬ 𝐶 ∈ V))
2423eqcoms 2829 . . . . . . . 8 (𝐶 = 𝐷 → (¬ 𝐷 ∈ V ↔ ¬ 𝐶 ∈ V))
25 pm2.21 123 . . . . . . . 8 𝐶 ∈ V → (𝐶 ∈ V → {⟨𝐴, 𝐵⟩} = ⟨𝐶, 𝐷⟩))
2624, 25syl6bi 255 . . . . . . 7 (𝐶 = 𝐷 → (¬ 𝐷 ∈ V → (𝐶 ∈ V → {⟨𝐴, 𝐵⟩} = ⟨𝐶, 𝐷⟩)))
2726impd 413 . . . . . 6 (𝐶 = 𝐷 → ((¬ 𝐷 ∈ V ∧ 𝐶 ∈ V) → {⟨𝐴, 𝐵⟩} = ⟨𝐶, 𝐷⟩))
28273ad2ant2 1130 . . . . 5 ((𝐴 = 𝐵𝐶 = 𝐷𝐶 = {𝐴}) → ((¬ 𝐷 ∈ V ∧ 𝐶 ∈ V) → {⟨𝐴, 𝐵⟩} = ⟨𝐶, 𝐷⟩))
2928com12 32 . . . 4 ((¬ 𝐷 ∈ V ∧ 𝐶 ∈ V) → ((𝐴 = 𝐵𝐶 = 𝐷𝐶 = {𝐴}) → {⟨𝐴, 𝐵⟩} = ⟨𝐶, 𝐷⟩))
3021, 29impbid 214 . . 3 ((¬ 𝐷 ∈ V ∧ 𝐶 ∈ V) → ({⟨𝐴, 𝐵⟩} = ⟨𝐶, 𝐷⟩ ↔ (𝐴 = 𝐵𝐶 = 𝐷𝐶 = {𝐴})))
3113, 30pm2.61ian 810 . 2 (𝐶 ∈ V → ({⟨𝐴, 𝐵⟩} = ⟨𝐶, 𝐷⟩ ↔ (𝐴 = 𝐵𝐶 = 𝐷𝐶 = {𝐴})))
32 opprc1 4820 . . . . 5 𝐶 ∈ V → ⟨𝐶, 𝐷⟩ = ∅)
3332eqeq2d 2832 . . . 4 𝐶 ∈ V → ({⟨𝐴, 𝐵⟩} = ⟨𝐶, 𝐷⟩ ↔ {⟨𝐴, 𝐵⟩} = ∅))
3433, 19syl6bi 255 . . 3 𝐶 ∈ V → ({⟨𝐴, 𝐵⟩} = ⟨𝐶, 𝐷⟩ → (𝐴 = 𝐵𝐶 = 𝐷𝐶 = {𝐴})))
35 eleq1 2900 . . . . . . 7 (𝐶 = {𝐴} → (𝐶 ∈ V ↔ {𝐴} ∈ V))
3635notbid 320 . . . . . 6 (𝐶 = {𝐴} → (¬ 𝐶 ∈ V ↔ ¬ {𝐴} ∈ V))
37 snex 5323 . . . . . . 7 {𝐴} ∈ V
3837pm2.24i 153 . . . . . 6 (¬ {𝐴} ∈ V → {⟨𝐴, 𝐵⟩} = ⟨𝐶, 𝐷⟩)
3936, 38syl6bi 255 . . . . 5 (𝐶 = {𝐴} → (¬ 𝐶 ∈ V → {⟨𝐴, 𝐵⟩} = ⟨𝐶, 𝐷⟩))
40393ad2ant3 1131 . . . 4 ((𝐴 = 𝐵𝐶 = 𝐷𝐶 = {𝐴}) → (¬ 𝐶 ∈ V → {⟨𝐴, 𝐵⟩} = ⟨𝐶, 𝐷⟩))
4140com12 32 . . 3 𝐶 ∈ V → ((𝐴 = 𝐵𝐶 = 𝐷𝐶 = {𝐴}) → {⟨𝐴, 𝐵⟩} = ⟨𝐶, 𝐷⟩))
4234, 41impbid 214 . 2 𝐶 ∈ V → ({⟨𝐴, 𝐵⟩} = ⟨𝐶, 𝐷⟩ ↔ (𝐴 = 𝐵𝐶 = 𝐷𝐶 = {𝐴})))
4331, 42pm2.61i 184 1 ({⟨𝐴, 𝐵⟩} = ⟨𝐶, 𝐷⟩ ↔ (𝐴 = 𝐵𝐶 = 𝐷𝐶 = {𝐴}))
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wi 4  wb 208  wa 398  w3a 1083   = wceq 1533  wcel 2110  wne 3016  Vcvv 3494  c0 4290  {csn 4560  cop 4566
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1792  ax-4 1806  ax-5 1907  ax-6 1966  ax-7 2011  ax-8 2112  ax-9 2120  ax-10 2141  ax-11 2157  ax-12 2173  ax-ext 2793  ax-sep 5195  ax-nul 5202  ax-pr 5321
This theorem depends on definitions:  df-bi 209  df-an 399  df-or 844  df-3an 1085  df-tru 1536  df-ex 1777  df-nf 1781  df-sb 2066  df-clab 2800  df-cleq 2814  df-clel 2893  df-nfc 2963  df-ne 3017  df-v 3496  df-dif 3938  df-un 3940  df-in 3942  df-ss 3951  df-nul 4291  df-if 4467  df-sn 4561  df-pr 4563  df-op 4567
This theorem is referenced by:  snopeqopsnid  5391  funopsn  6904
  Copyright terms: Public domain W3C validator