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

Theorem eceqoveq 8843
Description: Equality of equivalence relation in terms of an operation. (Contributed by NM, 15-Feb-1996.) (Proof shortened by Mario Carneiro, 12-Aug-2015.)
Hypotheses
Ref Expression
eceqoveq.5 ∼ Er (𝑆 × 𝑆)
eceqoveq.7 dom + = (𝑆 × 𝑆)
eceqoveq.8 ¬ ∅ ∈ 𝑆
eceqoveq.9 ((𝑥 ∈ 𝑆 ∧ 𝑦 ∈ 𝑆) → (𝑥 + 𝑦) ∈ 𝑆)
eceqoveq.10 (((𝐴 ∈ 𝑆 ∧ 𝐵 ∈ 𝑆) ∧ (𝐶 ∈ 𝑆 ∧ 𝐷 ∈ 𝑆)) → (⟨𝐴, 𝐵⟩ ∼ ⟨𝐶, 𝐷⟩ ↔ (𝐴 + 𝐷) = (𝐵 + 𝐶)))
Assertion
Ref Expression
eceqoveq ((𝐴 ∈ 𝑆 ∧ 𝐶 ∈ 𝑆) → ([⟨𝐴, 𝐵⟩] ∼ = [⟨𝐶, 𝐷⟩] ∼ ↔ (𝐴 + 𝐷) = (𝐵 + 𝐶)))
Distinct variable groups:   𝑥,𝑦, +   𝑥,𝑆,𝑦   𝑥,𝐴,𝑦   𝑥,𝐵,𝑦   𝑥,𝐶,𝑦   𝑥,𝐷,𝑦
Allowed substitution hints:   ∼ (𝑥, 𝑦)

Proof of Theorem eceqoveq
StepHypRef Expression
1 opelxpi 5687 . . . . . . . 8 ((𝐴 ∈ 𝑆 ∧ 𝐵 ∈ 𝑆) → ⟨𝐴, 𝐵⟩ ∈ (𝑆 × 𝑆))
21ad2antrr 739 . . . . . . 7 ((((𝐴 ∈ 𝑆 ∧ 𝐵 ∈ 𝑆) ∧ 𝐶 ∈ 𝑆) ∧ [⟨𝐴, 𝐵⟩] ∼ = [⟨𝐶, 𝐷⟩] ∼ ) → ⟨𝐴, 𝐵⟩ ∈ (𝑆 × 𝑆))
3 eceqoveq.5 . . . . . . . . 9 ∼ Er (𝑆 × 𝑆)
43a1i 11 . . . . . . . 8 ((((𝐴 ∈ 𝑆 ∧ 𝐵 ∈ 𝑆) ∧ 𝐶 ∈ 𝑆) ∧ [⟨𝐴, 𝐵⟩] ∼ = [⟨𝐶, 𝐷⟩] ∼ ) → ∼ Er (𝑆 × 𝑆))
5 simpr 490 . . . . . . . 8 ((((𝐴 ∈ 𝑆 ∧ 𝐵 ∈ 𝑆) ∧ 𝐶 ∈ 𝑆) ∧ [⟨𝐴, 𝐵⟩] ∼ = [⟨𝐶, 𝐷⟩] ∼ ) → [⟨𝐴, 𝐵⟩] ∼ = [⟨𝐶, 𝐷⟩] ∼ )
64, 5ereldm 8771 . . . . . . 7 ((((𝐴 ∈ 𝑆 ∧ 𝐵 ∈ 𝑆) ∧ 𝐶 ∈ 𝑆) ∧ [⟨𝐴, 𝐵⟩] ∼ = [⟨𝐶, 𝐷⟩] ∼ ) → (⟨𝐴, 𝐵⟩ ∈ (𝑆 × 𝑆) ↔ ⟨𝐶, 𝐷⟩ ∈ (𝑆 × 𝑆)))
72, 6mpbid 235 . . . . . 6 ((((𝐴 ∈ 𝑆 ∧ 𝐵 ∈ 𝑆) ∧ 𝐶 ∈ 𝑆) ∧ [⟨𝐴, 𝐵⟩] ∼ = [⟨𝐶, 𝐷⟩] ∼ ) → ⟨𝐶, 𝐷⟩ ∈ (𝑆 × 𝑆))
8 opelxp2 5693 . . . . . 6 (⟨𝐶, 𝐷⟩ ∈ (𝑆 × 𝑆) → 𝐷 ∈ 𝑆)
97, 8syl 18 . . . . 5 ((((𝐴 ∈ 𝑆 ∧ 𝐵 ∈ 𝑆) ∧ 𝐶 ∈ 𝑆) ∧ [⟨𝐴, 𝐵⟩] ∼ = [⟨𝐶, 𝐷⟩] ∼ ) → 𝐷 ∈ 𝑆)
109ex 418 . . . 4 (((𝐴 ∈ 𝑆 ∧ 𝐵 ∈ 𝑆) ∧ 𝐶 ∈ 𝑆) → ([⟨𝐴, 𝐵⟩] ∼ = [⟨𝐶, 𝐷⟩] ∼ → 𝐷 ∈ 𝑆))
11 eceqoveq.9 . . . . . . . 8 ((𝑥 ∈ 𝑆 ∧ 𝑦 ∈ 𝑆) → (𝑥 + 𝑦) ∈ 𝑆)
1211caovcl 7615 . . . . . . 7 ((𝐵 ∈ 𝑆 ∧ 𝐶 ∈ 𝑆) → (𝐵 + 𝐶) ∈ 𝑆)
13 eleq1 2848 . . . . . . 7 ((𝐴 + 𝐷) = (𝐵 + 𝐶) → ((𝐴 + 𝐷) ∈ 𝑆 ↔ (𝐵 + 𝐶) ∈ 𝑆))
1412, 13imbitrrid 249 . . . . . 6 ((𝐴 + 𝐷) = (𝐵 + 𝐶) → ((𝐵 ∈ 𝑆 ∧ 𝐶 ∈ 𝑆) → (𝐴 + 𝐷) ∈ 𝑆))
15 eceqoveq.7 . . . . . . . 8 dom + = (𝑆 × 𝑆)
16 eceqoveq.8 . . . . . . . 8 ¬ ∅ ∈ 𝑆
1715, 16ndmovrcl 7607 . . . . . . 7 ((𝐴 + 𝐷) ∈ 𝑆 → (𝐴 ∈ 𝑆 ∧ 𝐷 ∈ 𝑆))
1817simprd 501 . . . . . 6 ((𝐴 + 𝐷) ∈ 𝑆 → 𝐷 ∈ 𝑆)
1914, 18syl6com 38 . . . . 5 ((𝐵 ∈ 𝑆 ∧ 𝐶 ∈ 𝑆) → ((𝐴 + 𝐷) = (𝐵 + 𝐶) → 𝐷 ∈ 𝑆))
2019adantll 727 . . . 4 (((𝐴 ∈ 𝑆 ∧ 𝐵 ∈ 𝑆) ∧ 𝐶 ∈ 𝑆) → ((𝐴 + 𝐷) = (𝐵 + 𝐶) → 𝐷 ∈ 𝑆))
213a1i 11 . . . . . . 7 (((𝐴 ∈ 𝑆 ∧ 𝐵 ∈ 𝑆) ∧ (𝐶 ∈ 𝑆 ∧ 𝐷 ∈ 𝑆)) → ∼ Er (𝑆 × 𝑆))
221adantr 486 . . . . . . 7 (((𝐴 ∈ 𝑆 ∧ 𝐵 ∈ 𝑆) ∧ (𝐶 ∈ 𝑆 ∧ 𝐷 ∈ 𝑆)) → ⟨𝐴, 𝐵⟩ ∈ (𝑆 × 𝑆))
2321, 22erth 8772 . . . . . 6 (((𝐴 ∈ 𝑆 ∧ 𝐵 ∈ 𝑆) ∧ (𝐶 ∈ 𝑆 ∧ 𝐷 ∈ 𝑆)) → (⟨𝐴, 𝐵⟩ ∼ ⟨𝐶, 𝐷⟩ ↔ [⟨𝐴, 𝐵⟩] ∼ = [⟨𝐶, 𝐷⟩] ∼ ))
24 eceqoveq.10 . . . . . 6 (((𝐴 ∈ 𝑆 ∧ 𝐵 ∈ 𝑆) ∧ (𝐶 ∈ 𝑆 ∧ 𝐷 ∈ 𝑆)) → (⟨𝐴, 𝐵⟩ ∼ ⟨𝐶, 𝐷⟩ ↔ (𝐴 + 𝐷) = (𝐵 + 𝐶)))
2523, 24bitr3d 284 . . . . 5 (((𝐴 ∈ 𝑆 ∧ 𝐵 ∈ 𝑆) ∧ (𝐶 ∈ 𝑆 ∧ 𝐷 ∈ 𝑆)) → ([⟨𝐴, 𝐵⟩] ∼ = [⟨𝐶, 𝐷⟩] ∼ ↔ (𝐴 + 𝐷) = (𝐵 + 𝐶)))
2625expr 462 . . . 4 (((𝐴 ∈ 𝑆 ∧ 𝐵 ∈ 𝑆) ∧ 𝐶 ∈ 𝑆) → (𝐷 ∈ 𝑆 → ([⟨𝐴, 𝐵⟩] ∼ = [⟨𝐶, 𝐷⟩] ∼ ↔ (𝐴 + 𝐷) = (𝐵 + 𝐶))))
2710, 20, 26pm5.21ndd 382 . . 3 (((𝐴 ∈ 𝑆 ∧ 𝐵 ∈ 𝑆) ∧ 𝐶 ∈ 𝑆) → ([⟨𝐴, 𝐵⟩] ∼ = [⟨𝐶, 𝐷⟩] ∼ ↔ (𝐴 + 𝐷) = (𝐵 + 𝐶)))
2827an32s 665 . 2 (((𝐴 ∈ 𝑆 ∧ 𝐶 ∈ 𝑆) ∧ 𝐵 ∈ 𝑆) → ([⟨𝐴, 𝐵⟩] ∼ = [⟨𝐶, 𝐷⟩] ∼ ↔ (𝐴 + 𝐷) = (𝐵 + 𝐶)))
29 eqcom 2767 . . . 4 (∅ = [⟨𝐶, 𝐷⟩] ∼ ↔ [⟨𝐶, 𝐷⟩] ∼ = ∅)
30 erdm 8728 . . . . . . . . . . . 12 ( ∼ Er (𝑆 × 𝑆) → dom ∼ = (𝑆 × 𝑆))
313, 30ax-mp 5 . . . . . . . . . . 11 dom ∼ = (𝑆 × 𝑆)
3231eleq2i 2852 . . . . . . . . . 10 (⟨𝐶, 𝐷⟩ ∈ dom ∼ ↔ ⟨𝐶, 𝐷⟩ ∈ (𝑆 × 𝑆))
33 ecdmn0 8770 . . . . . . . . . 10 (⟨𝐶, 𝐷⟩ ∈ dom ∼ ↔ [⟨𝐶, 𝐷⟩] ∼ ≠ ∅)
34 opelxp 5686 . . . . . . . . . 10 (⟨𝐶, 𝐷⟩ ∈ (𝑆 × 𝑆) ↔ (𝐶 ∈ 𝑆 ∧ 𝐷 ∈ 𝑆))
3532, 33, 343bitr3i 304 . . . . . . . . 9 ([⟨𝐶, 𝐷⟩] ∼ ≠ ∅ ↔ (𝐶 ∈ 𝑆 ∧ 𝐷 ∈ 𝑆))
3635simplbi2 506 . . . . . . . 8 (𝐶 ∈ 𝑆 → (𝐷 ∈ 𝑆 → [⟨𝐶, 𝐷⟩] ∼ ≠ ∅))
3736ad2antlr 740 . . . . . . 7 (((𝐴 ∈ 𝑆 ∧ 𝐶 ∈ 𝑆) ∧ ¬ 𝐵 ∈ 𝑆) → (𝐷 ∈ 𝑆 → [⟨𝐶, 𝐷⟩] ∼ ≠ ∅))
3837necon2bd 2971 . . . . . 6 (((𝐴 ∈ 𝑆 ∧ 𝐶 ∈ 𝑆) ∧ ¬ 𝐵 ∈ 𝑆) → ([⟨𝐶, 𝐷⟩] ∼ = ∅ → ¬ 𝐷 ∈ 𝑆))
39 simpr 490 . . . . . . 7 ((𝐴 ∈ 𝑆 ∧ 𝐷 ∈ 𝑆) → 𝐷 ∈ 𝑆)
4015ndmov 7605 . . . . . . 7 (¬ (𝐴 ∈ 𝑆 ∧ 𝐷 ∈ 𝑆) → (𝐴 + 𝐷) = ∅)
4139, 40nsyl5 160 . . . . . 6 (¬ 𝐷 ∈ 𝑆 → (𝐴 + 𝐷) = ∅)
4238, 41syl6 36 . . . . 5 (((𝐴 ∈ 𝑆 ∧ 𝐶 ∈ 𝑆) ∧ ¬ 𝐵 ∈ 𝑆) → ([⟨𝐶, 𝐷⟩] ∼ = ∅ → (𝐴 + 𝐷) = ∅))
43 eleq1 2848 . . . . . . 7 ((𝐴 + 𝐷) = ∅ → ((𝐴 + 𝐷) ∈ 𝑆 ↔ ∅ ∈ 𝑆))
4416, 43mtbiri 330 . . . . . 6 ((𝐴 + 𝐷) = ∅ → ¬ (𝐴 + 𝐷) ∈ 𝑆)
4535simprbi 503 . . . . . . . 8 ([⟨𝐶, 𝐷⟩] ∼ ≠ ∅ → 𝐷 ∈ 𝑆)
4611caovcl 7615 . . . . . . . . . 10 ((𝐴 ∈ 𝑆 ∧ 𝐷 ∈ 𝑆) → (𝐴 + 𝐷) ∈ 𝑆)
4746ex 418 . . . . . . . . 9 (𝐴 ∈ 𝑆 → (𝐷 ∈ 𝑆 → (𝐴 + 𝐷) ∈ 𝑆))
4847ad2antrr 739 . . . . . . . 8 (((𝐴 ∈ 𝑆 ∧ 𝐶 ∈ 𝑆) ∧ ¬ 𝐵 ∈ 𝑆) → (𝐷 ∈ 𝑆 → (𝐴 + 𝐷) ∈ 𝑆))
4945, 48syl5 35 . . . . . . 7 (((𝐴 ∈ 𝑆 ∧ 𝐶 ∈ 𝑆) ∧ ¬ 𝐵 ∈ 𝑆) → ([⟨𝐶, 𝐷⟩] ∼ ≠ ∅ → (𝐴 + 𝐷) ∈ 𝑆))
5049necon1bd 2973 . . . . . 6 (((𝐴 ∈ 𝑆 ∧ 𝐶 ∈ 𝑆) ∧ ¬ 𝐵 ∈ 𝑆) → (¬ (𝐴 + 𝐷) ∈ 𝑆 → [⟨𝐶, 𝐷⟩] ∼ = ∅))
5144, 50syl5 35 . . . . 5 (((𝐴 ∈ 𝑆 ∧ 𝐶 ∈ 𝑆) ∧ ¬ 𝐵 ∈ 𝑆) → ((𝐴 + 𝐷) = ∅ → [⟨𝐶, 𝐷⟩] ∼ = ∅))
5242, 51impbid 215 . . . 4 (((𝐴 ∈ 𝑆 ∧ 𝐶 ∈ 𝑆) ∧ ¬ 𝐵 ∈ 𝑆) → ([⟨𝐶, 𝐷⟩] ∼ = ∅ ↔ (𝐴 + 𝐷) = ∅))
5329, 52bitrid 286 . . 3 (((𝐴 ∈ 𝑆 ∧ 𝐶 ∈ 𝑆) ∧ ¬ 𝐵 ∈ 𝑆) → (∅ = [⟨𝐶, 𝐷⟩] ∼ ↔ (𝐴 + 𝐷) = ∅))
5431eleq2i 2852 . . . . . . . 8 (⟨𝐴, 𝐵⟩ ∈ dom ∼ ↔ ⟨𝐴, 𝐵⟩ ∈ (𝑆 × 𝑆))
55 ecdmn0 8770 . . . . . . . 8 (⟨𝐴, 𝐵⟩ ∈ dom ∼ ↔ [⟨𝐴, 𝐵⟩] ∼ ≠ ∅)
56 opelxp 5686 . . . . . . . 8 (⟨𝐴, 𝐵⟩ ∈ (𝑆 × 𝑆) ↔ (𝐴 ∈ 𝑆 ∧ 𝐵 ∈ 𝑆))
5754, 55, 563bitr3i 304 . . . . . . 7 ([⟨𝐴, 𝐵⟩] ∼ ≠ ∅ ↔ (𝐴 ∈ 𝑆 ∧ 𝐵 ∈ 𝑆))
5857simprbi 503 . . . . . 6 ([⟨𝐴, 𝐵⟩] ∼ ≠ ∅ → 𝐵 ∈ 𝑆)
5958necon1bi 2983 . . . . 5 (¬ 𝐵 ∈ 𝑆 → [⟨𝐴, 𝐵⟩] ∼ = ∅)
6059adantl 487 . . . 4 (((𝐴 ∈ 𝑆 ∧ 𝐶 ∈ 𝑆) ∧ ¬ 𝐵 ∈ 𝑆) → [⟨𝐴, 𝐵⟩] ∼ = ∅)
6160eqeq1d 2762 . . 3 (((𝐴 ∈ 𝑆 ∧ 𝐶 ∈ 𝑆) ∧ ¬ 𝐵 ∈ 𝑆) → ([⟨𝐴, 𝐵⟩] ∼ = [⟨𝐶, 𝐷⟩] ∼ ↔ ∅ = [⟨𝐶, 𝐷⟩] ∼ ))
62 simpl 488 . . . . . 6 ((𝐵 ∈ 𝑆 ∧ 𝐶 ∈ 𝑆) → 𝐵 ∈ 𝑆)
6315ndmov 7605 . . . . . 6 (¬ (𝐵 ∈ 𝑆 ∧ 𝐶 ∈ 𝑆) → (𝐵 + 𝐶) = ∅)
6462, 63nsyl5 160 . . . . 5 (¬ 𝐵 ∈ 𝑆 → (𝐵 + 𝐶) = ∅)
6564adantl 487 . . . 4 (((𝐴 ∈ 𝑆 ∧ 𝐶 ∈ 𝑆) ∧ ¬ 𝐵 ∈ 𝑆) → (𝐵 + 𝐶) = ∅)
6665eqeq2d 2771 . . 3 (((𝐴 ∈ 𝑆 ∧ 𝐶 ∈ 𝑆) ∧ ¬ 𝐵 ∈ 𝑆) → ((𝐴 + 𝐷) = (𝐵 + 𝐶) ↔ (𝐴 + 𝐷) = ∅))
6753, 61, 663bitr4d 314 . 2 (((𝐴 ∈ 𝑆 ∧ 𝐶 ∈ 𝑆) ∧ ¬ 𝐵 ∈ 𝑆) → ([⟨𝐴, 𝐵⟩] ∼ = [⟨𝐶, 𝐷⟩] ∼ ↔ (𝐴 + 𝐷) = (𝐵 + 𝐶)))
6828, 67pm2.61dan 825 1 ((𝐴 ∈ 𝑆 ∧ 𝐶 ∈ 𝑆) → ([⟨𝐴, 𝐵⟩] ∼ = [⟨𝐶, 𝐷⟩] ∼ ↔ (𝐴 + 𝐷) = (𝐵 + 𝐶)))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  ¬ wn 3   → wi 4   ↔ wb 209   ∧ wa 401   = wceq 1569   ∈ wcel 2144   ≠ wne 2955  ∅c0 4278  ⟨cop 4589   class class class wbr 5102   × cxp 5648  dom cdm 5650  (class class class)co 7420   Er wer 8714  [cec 8715
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1827  ax-4 1841  ax-5 1942  ax-6 1999  ax-7 2040  ax-8 2146  ax-9 2154  ax-ext 2732  ax-sep 5248  ax-nul 5259  ax-pr 5390
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3an 1105  df-tru 1572  df-fal 1582  df-ex 1812  df-sb 2099  df-mo 2564  df-eu 2594  df-clab 2739  df-cleq 2752  df-clel 2835  df-ne 2956  df-ral 3077  df-rex 3087  df-rab 3413  df-v 3452  df-ss 3896  df-dif 4047  df-in 4091  df-un 4151  df-nul 4279  df-if 4482  df-sn 4584  df-pr 4586  df-op 4590  df-uni 4867  df-br 5103  df-opab 5167  df-xp 5656  df-rel 5657  df-cnv 5658  df-co 5659  df-dm 5660  df-rn 5661  df-res 5662  df-ima 5663  df-iota 6494  df-fv 6546  df-ov 7423  df-er 8717  df-ec 8719
This theorem is used by: (None)
  Copyright terms: Public domain W3C validator