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

Theorem prnebg 4819
Description: A (proper) pair is not equal to another (maybe improper) pair if and only if an element of the first pair is not contained in the second pair. (Contributed by Alexander van der Vekens, 16-Jan-2018.)
Assertion
Ref Expression
prnebg (((𝐴𝑈𝐵𝑉) ∧ (𝐶𝑋𝐷𝑌) ∧ 𝐴𝐵) → (((𝐴𝐶𝐴𝐷) ∨ (𝐵𝐶𝐵𝐷)) ↔ {𝐴, 𝐵} ≠ {𝐶, 𝐷}))

Proof of Theorem prnebg
StepHypRef Expression
1 prneimg 4817 . . 3 (((𝐴𝑈𝐵𝑉) ∧ (𝐶𝑋𝐷𝑌)) → (((𝐴𝐶𝐴𝐷) ∨ (𝐵𝐶𝐵𝐷)) → {𝐴, 𝐵} ≠ {𝐶, 𝐷}))
213adant3 1150 . 2 (((𝐴𝑈𝐵𝑉) ∧ (𝐶𝑋𝐷𝑌) ∧ 𝐴𝐵) → (((𝐴𝐶𝐴𝐷) ∨ (𝐵𝐶𝐵𝐷)) → {𝐴, 𝐵} ≠ {𝐶, 𝐷}))
3 ioran 999 . . . . 5 (¬ ((𝐴𝐶𝐴𝐷) ∨ (𝐵𝐶𝐵𝐷)) ↔ (¬ (𝐴𝐶𝐴𝐷) ∧ ¬ (𝐵𝐶𝐵𝐷)))
4 ianor 997 . . . . . . 7 (¬ (𝐴𝐶𝐴𝐷) ↔ (¬ 𝐴𝐶 ∨ ¬ 𝐴𝐷))
5 nne 2961 . . . . . . . 8 𝐴𝐶𝐴 = 𝐶)
6 nne 2961 . . . . . . . 8 𝐴𝐷𝐴 = 𝐷)
75, 6orbi12i 928 . . . . . . 7 ((¬ 𝐴𝐶 ∨ ¬ 𝐴𝐷) ↔ (𝐴 = 𝐶𝐴 = 𝐷))
84, 7bitri 278 . . . . . 6 (¬ (𝐴𝐶𝐴𝐷) ↔ (𝐴 = 𝐶𝐴 = 𝐷))
9 ianor 997 . . . . . . 7 (¬ (𝐵𝐶𝐵𝐷) ↔ (¬ 𝐵𝐶 ∨ ¬ 𝐵𝐷))
10 nne 2961 . . . . . . . 8 𝐵𝐶𝐵 = 𝐶)
11 nne 2961 . . . . . . . 8 𝐵𝐷𝐵 = 𝐷)
1210, 11orbi12i 928 . . . . . . 7 ((¬ 𝐵𝐶 ∨ ¬ 𝐵𝐷) ↔ (𝐵 = 𝐶𝐵 = 𝐷))
139, 12bitri 278 . . . . . 6 (¬ (𝐵𝐶𝐵𝐷) ↔ (𝐵 = 𝐶𝐵 = 𝐷))
148, 13anbi12i 640 . . . . 5 ((¬ (𝐴𝐶𝐴𝐷) ∧ ¬ (𝐵𝐶𝐵𝐷)) ↔ ((𝐴 = 𝐶𝐴 = 𝐷) ∧ (𝐵 = 𝐶𝐵 = 𝐷)))
153, 14bitri 278 . . . 4 (¬ ((𝐴𝐶𝐴𝐷) ∨ (𝐵𝐶𝐵𝐷)) ↔ ((𝐴 = 𝐶𝐴 = 𝐷) ∧ (𝐵 = 𝐶𝐵 = 𝐷)))
16 anddi 1028 . . . . 5 (((𝐴 = 𝐶𝐴 = 𝐷) ∧ (𝐵 = 𝐶𝐵 = 𝐷)) ↔ (((𝐴 = 𝐶𝐵 = 𝐶) ∨ (𝐴 = 𝐶𝐵 = 𝐷)) ∨ ((𝐴 = 𝐷𝐵 = 𝐶) ∨ (𝐴 = 𝐷𝐵 = 𝐷))))
17 eqtr3 2784 . . . . . . . . . 10 ((𝐴 = 𝐶𝐵 = 𝐶) → 𝐴 = 𝐵)
18 eqneqall 2968 . . . . . . . . . 10 (𝐴 = 𝐵 → (𝐴𝐵 → {𝐴, 𝐵} = {𝐶, 𝐷}))
1917, 18syl 18 . . . . . . . . 9 ((𝐴 = 𝐶𝐵 = 𝐶) → (𝐴𝐵 → {𝐴, 𝐵} = {𝐶, 𝐷}))
20 preq12 4699 . . . . . . . . . 10 ((𝐴 = 𝐶𝐵 = 𝐷) → {𝐴, 𝐵} = {𝐶, 𝐷})
2120a1d 26 . . . . . . . . 9 ((𝐴 = 𝐶𝐵 = 𝐷) → (𝐴𝐵 → {𝐴, 𝐵} = {𝐶, 𝐷}))
2219, 21jaoi 871 . . . . . . . 8 (((𝐴 = 𝐶𝐵 = 𝐶) ∨ (𝐴 = 𝐶𝐵 = 𝐷)) → (𝐴𝐵 → {𝐴, 𝐵} = {𝐶, 𝐷}))
23 preq12 4699 . . . . . . . . . . 11 ((𝐴 = 𝐷𝐵 = 𝐶) → {𝐴, 𝐵} = {𝐷, 𝐶})
24 prcom 4696 . . . . . . . . . . 11 {𝐷, 𝐶} = {𝐶, 𝐷}
2523, 24eqtrdi 2813 . . . . . . . . . 10 ((𝐴 = 𝐷𝐵 = 𝐶) → {𝐴, 𝐵} = {𝐶, 𝐷})
2625a1d 26 . . . . . . . . 9 ((𝐴 = 𝐷𝐵 = 𝐶) → (𝐴𝐵 → {𝐴, 𝐵} = {𝐶, 𝐷}))
27 eqtr3 2784 . . . . . . . . . 10 ((𝐴 = 𝐷𝐵 = 𝐷) → 𝐴 = 𝐵)
2827, 18syl 18 . . . . . . . . 9 ((𝐴 = 𝐷𝐵 = 𝐷) → (𝐴𝐵 → {𝐴, 𝐵} = {𝐶, 𝐷}))
2926, 28jaoi 871 . . . . . . . 8 (((𝐴 = 𝐷𝐵 = 𝐶) ∨ (𝐴 = 𝐷𝐵 = 𝐷)) → (𝐴𝐵 → {𝐴, 𝐵} = {𝐶, 𝐷}))
3022, 29jaoi 871 . . . . . . 7 ((((𝐴 = 𝐶𝐵 = 𝐶) ∨ (𝐴 = 𝐶𝐵 = 𝐷)) ∨ ((𝐴 = 𝐷𝐵 = 𝐶) ∨ (𝐴 = 𝐷𝐵 = 𝐷))) → (𝐴𝐵 → {𝐴, 𝐵} = {𝐶, 𝐷}))
3130com12 33 . . . . . 6 (𝐴𝐵 → ((((𝐴 = 𝐶𝐵 = 𝐶) ∨ (𝐴 = 𝐶𝐵 = 𝐷)) ∨ ((𝐴 = 𝐷𝐵 = 𝐶) ∨ (𝐴 = 𝐷𝐵 = 𝐷))) → {𝐴, 𝐵} = {𝐶, 𝐷}))
32313ad2ant3 1153 . . . . 5 (((𝐴𝑈𝐵𝑉) ∧ (𝐶𝑋𝐷𝑌) ∧ 𝐴𝐵) → ((((𝐴 = 𝐶𝐵 = 𝐶) ∨ (𝐴 = 𝐶𝐵 = 𝐷)) ∨ ((𝐴 = 𝐷𝐵 = 𝐶) ∨ (𝐴 = 𝐷𝐵 = 𝐷))) → {𝐴, 𝐵} = {𝐶, 𝐷}))
3316, 32biimtrid 245 . . . 4 (((𝐴𝑈𝐵𝑉) ∧ (𝐶𝑋𝐷𝑌) ∧ 𝐴𝐵) → (((𝐴 = 𝐶𝐴 = 𝐷) ∧ (𝐵 = 𝐶𝐵 = 𝐷)) → {𝐴, 𝐵} = {𝐶, 𝐷}))
3415, 33biimtrid 245 . . 3 (((𝐴𝑈𝐵𝑉) ∧ (𝐶𝑋𝐷𝑌) ∧ 𝐴𝐵) → (¬ ((𝐴𝐶𝐴𝐷) ∨ (𝐵𝐶𝐵𝐷)) → {𝐴, 𝐵} = {𝐶, 𝐷}))
3534necon1ad 2974 . 2 (((𝐴𝑈𝐵𝑉) ∧ (𝐶𝑋𝐷𝑌) ∧ 𝐴𝐵) → ({𝐴, 𝐵} ≠ {𝐶, 𝐷} → ((𝐴𝐶𝐴𝐷) ∨ (𝐵𝐶𝐵𝐷))))
362, 35impbid 215 1 (((𝐴𝑈𝐵𝑉) ∧ (𝐶𝑋𝐷𝑌) ∧ 𝐴𝐵) → (((𝐴𝐶𝐴𝐷) ∨ (𝐵𝐶𝐵𝐷)) ↔ {𝐴, 𝐵} ≠ {𝐶, 𝐷}))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  ¬ wn 3  wi 4  wb 209  wa 401  wo 861  w3a 1103   = wceq 1570  wcel 2145  wne 2957  {cpr 4589
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1828  ax-4 1842  ax-5 1943  ax-6 2000  ax-7 2041  ax-8 2147  ax-9 2155  ax-ext 2734
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3an 1105  df-tru 1573  df-ex 1813  df-sb 2100  df-clab 2741  df-cleq 2754  df-clel 2837  df-ne 2958  df-v 3455  df-un 3907  df-sn 4588  df-pr 4590
This theorem is used by:  zlmodzxznm  49429
  Copyright terms: Public domain W3C validator