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

Theorem eceqoveq 7740
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 5072 . . . . . . . 8 ((𝐴𝑆𝐵𝑆) → ⟨𝐴, 𝐵⟩ ∈ (𝑆 × 𝑆))
21ad2antrr 758 . . . . . . 7 ((((𝐴𝑆𝐵𝑆) ∧ 𝐶𝑆) ∧ [⟨𝐴, 𝐵⟩] = [⟨𝐶, 𝐷⟩] ) → ⟨𝐴, 𝐵⟩ ∈ (𝑆 × 𝑆))
3 eceqoveq.5 . . . . . . . . 9 Er (𝑆 × 𝑆)
43a1i 11 . . . . . . . 8 ((((𝐴𝑆𝐵𝑆) ∧ 𝐶𝑆) ∧ [⟨𝐴, 𝐵⟩] = [⟨𝐶, 𝐷⟩] ) → Er (𝑆 × 𝑆))
5 simpr 476 . . . . . . . 8 ((((𝐴𝑆𝐵𝑆) ∧ 𝐶𝑆) ∧ [⟨𝐴, 𝐵⟩] = [⟨𝐶, 𝐷⟩] ) → [⟨𝐴, 𝐵⟩] = [⟨𝐶, 𝐷⟩] )
64, 5ereldm 7677 . . . . . . 7 ((((𝐴𝑆𝐵𝑆) ∧ 𝐶𝑆) ∧ [⟨𝐴, 𝐵⟩] = [⟨𝐶, 𝐷⟩] ) → (⟨𝐴, 𝐵⟩ ∈ (𝑆 × 𝑆) ↔ ⟨𝐶, 𝐷⟩ ∈ (𝑆 × 𝑆)))
72, 6mpbid 221 . . . . . 6 ((((𝐴𝑆𝐵𝑆) ∧ 𝐶𝑆) ∧ [⟨𝐴, 𝐵⟩] = [⟨𝐶, 𝐷⟩] ) → ⟨𝐶, 𝐷⟩ ∈ (𝑆 × 𝑆))
8 opelxp2 5075 . . . . . 6 (⟨𝐶, 𝐷⟩ ∈ (𝑆 × 𝑆) → 𝐷𝑆)
97, 8syl 17 . . . . 5 ((((𝐴𝑆𝐵𝑆) ∧ 𝐶𝑆) ∧ [⟨𝐴, 𝐵⟩] = [⟨𝐶, 𝐷⟩] ) → 𝐷𝑆)
109ex 449 . . . 4 (((𝐴𝑆𝐵𝑆) ∧ 𝐶𝑆) → ([⟨𝐴, 𝐵⟩] = [⟨𝐶, 𝐷⟩] 𝐷𝑆))
11 eceqoveq.9 . . . . . . . 8 ((𝑥𝑆𝑦𝑆) → (𝑥 + 𝑦) ∈ 𝑆)
1211caovcl 6726 . . . . . . 7 ((𝐵𝑆𝐶𝑆) → (𝐵 + 𝐶) ∈ 𝑆)
13 eleq1 2676 . . . . . . 7 ((𝐴 + 𝐷) = (𝐵 + 𝐶) → ((𝐴 + 𝐷) ∈ 𝑆 ↔ (𝐵 + 𝐶) ∈ 𝑆))
1412, 13syl5ibr 235 . . . . . 6 ((𝐴 + 𝐷) = (𝐵 + 𝐶) → ((𝐵𝑆𝐶𝑆) → (𝐴 + 𝐷) ∈ 𝑆))
15 eceqoveq.7 . . . . . . . 8 dom + = (𝑆 × 𝑆)
16 eceqoveq.8 . . . . . . . 8 ¬ ∅ ∈ 𝑆
1715, 16ndmovrcl 6718 . . . . . . 7 ((𝐴 + 𝐷) ∈ 𝑆 → (𝐴𝑆𝐷𝑆))
1817simprd 478 . . . . . 6 ((𝐴 + 𝐷) ∈ 𝑆𝐷𝑆)
1914, 18syl6com 36 . . . . 5 ((𝐵𝑆𝐶𝑆) → ((𝐴 + 𝐷) = (𝐵 + 𝐶) → 𝐷𝑆))
2019adantll 746 . . . 4 (((𝐴𝑆𝐵𝑆) ∧ 𝐶𝑆) → ((𝐴 + 𝐷) = (𝐵 + 𝐶) → 𝐷𝑆))
213a1i 11 . . . . . . 7 (((𝐴𝑆𝐵𝑆) ∧ (𝐶𝑆𝐷𝑆)) → Er (𝑆 × 𝑆))
221adantr 480 . . . . . . 7 (((𝐴𝑆𝐵𝑆) ∧ (𝐶𝑆𝐷𝑆)) → ⟨𝐴, 𝐵⟩ ∈ (𝑆 × 𝑆))
2321, 22erth 7678 . . . . . 6 (((𝐴𝑆𝐵𝑆) ∧ (𝐶𝑆𝐷𝑆)) → (⟨𝐴, 𝐵𝐶, 𝐷⟩ ↔ [⟨𝐴, 𝐵⟩] = [⟨𝐶, 𝐷⟩] ))
24 eceqoveq.10 . . . . . 6 (((𝐴𝑆𝐵𝑆) ∧ (𝐶𝑆𝐷𝑆)) → (⟨𝐴, 𝐵𝐶, 𝐷⟩ ↔ (𝐴 + 𝐷) = (𝐵 + 𝐶)))
2523, 24bitr3d 269 . . . . 5 (((𝐴𝑆𝐵𝑆) ∧ (𝐶𝑆𝐷𝑆)) → ([⟨𝐴, 𝐵⟩] = [⟨𝐶, 𝐷⟩] ↔ (𝐴 + 𝐷) = (𝐵 + 𝐶)))
2625expr 641 . . . 4 (((𝐴𝑆𝐵𝑆) ∧ 𝐶𝑆) → (𝐷𝑆 → ([⟨𝐴, 𝐵⟩] = [⟨𝐶, 𝐷⟩] ↔ (𝐴 + 𝐷) = (𝐵 + 𝐶))))
2710, 20, 26pm5.21ndd 368 . . 3 (((𝐴𝑆𝐵𝑆) ∧ 𝐶𝑆) → ([⟨𝐴, 𝐵⟩] = [⟨𝐶, 𝐷⟩] ↔ (𝐴 + 𝐷) = (𝐵 + 𝐶)))
2827an32s 842 . 2 (((𝐴𝑆𝐶𝑆) ∧ 𝐵𝑆) → ([⟨𝐴, 𝐵⟩] = [⟨𝐶, 𝐷⟩] ↔ (𝐴 + 𝐷) = (𝐵 + 𝐶)))
29 eqcom 2617 . . . 4 (∅ = [⟨𝐶, 𝐷⟩] ↔ [⟨𝐶, 𝐷⟩] = ∅)
30 erdm 7639 . . . . . . . . . . . 12 ( Er (𝑆 × 𝑆) → dom = (𝑆 × 𝑆))
313, 30ax-mp 5 . . . . . . . . . . 11 dom = (𝑆 × 𝑆)
3231eleq2i 2680 . . . . . . . . . 10 (⟨𝐶, 𝐷⟩ ∈ dom ↔ ⟨𝐶, 𝐷⟩ ∈ (𝑆 × 𝑆))
33 ecdmn0 7676 . . . . . . . . . 10 (⟨𝐶, 𝐷⟩ ∈ dom ↔ [⟨𝐶, 𝐷⟩] ≠ ∅)
34 opelxp 5070 . . . . . . . . . 10 (⟨𝐶, 𝐷⟩ ∈ (𝑆 × 𝑆) ↔ (𝐶𝑆𝐷𝑆))
3532, 33, 343bitr3i 289 . . . . . . . . 9 ([⟨𝐶, 𝐷⟩] ≠ ∅ ↔ (𝐶𝑆𝐷𝑆))
3635simplbi2 653 . . . . . . . 8 (𝐶𝑆 → (𝐷𝑆 → [⟨𝐶, 𝐷⟩] ≠ ∅))
3736ad2antlr 759 . . . . . . 7 (((𝐴𝑆𝐶𝑆) ∧ ¬ 𝐵𝑆) → (𝐷𝑆 → [⟨𝐶, 𝐷⟩] ≠ ∅))
3837necon2bd 2798 . . . . . 6 (((𝐴𝑆𝐶𝑆) ∧ ¬ 𝐵𝑆) → ([⟨𝐶, 𝐷⟩] = ∅ → ¬ 𝐷𝑆))
39 simpr 476 . . . . . . . 8 ((𝐴𝑆𝐷𝑆) → 𝐷𝑆)
4039con3i 149 . . . . . . 7 𝐷𝑆 → ¬ (𝐴𝑆𝐷𝑆))
4115ndmov 6716 . . . . . . 7 (¬ (𝐴𝑆𝐷𝑆) → (𝐴 + 𝐷) = ∅)
4240, 41syl 17 . . . . . 6 𝐷𝑆 → (𝐴 + 𝐷) = ∅)
4338, 42syl6 34 . . . . 5 (((𝐴𝑆𝐶𝑆) ∧ ¬ 𝐵𝑆) → ([⟨𝐶, 𝐷⟩] = ∅ → (𝐴 + 𝐷) = ∅))
44 eleq1 2676 . . . . . . 7 ((𝐴 + 𝐷) = ∅ → ((𝐴 + 𝐷) ∈ 𝑆 ↔ ∅ ∈ 𝑆))
4516, 44mtbiri 316 . . . . . 6 ((𝐴 + 𝐷) = ∅ → ¬ (𝐴 + 𝐷) ∈ 𝑆)
4635simprbi 479 . . . . . . . 8 ([⟨𝐶, 𝐷⟩] ≠ ∅ → 𝐷𝑆)
4711caovcl 6726 . . . . . . . . . 10 ((𝐴𝑆𝐷𝑆) → (𝐴 + 𝐷) ∈ 𝑆)
4847ex 449 . . . . . . . . 9 (𝐴𝑆 → (𝐷𝑆 → (𝐴 + 𝐷) ∈ 𝑆))
4948ad2antrr 758 . . . . . . . 8 (((𝐴𝑆𝐶𝑆) ∧ ¬ 𝐵𝑆) → (𝐷𝑆 → (𝐴 + 𝐷) ∈ 𝑆))
5046, 49syl5 33 . . . . . . 7 (((𝐴𝑆𝐶𝑆) ∧ ¬ 𝐵𝑆) → ([⟨𝐶, 𝐷⟩] ≠ ∅ → (𝐴 + 𝐷) ∈ 𝑆))
5150necon1bd 2800 . . . . . 6 (((𝐴𝑆𝐶𝑆) ∧ ¬ 𝐵𝑆) → (¬ (𝐴 + 𝐷) ∈ 𝑆 → [⟨𝐶, 𝐷⟩] = ∅))
5245, 51syl5 33 . . . . 5 (((𝐴𝑆𝐶𝑆) ∧ ¬ 𝐵𝑆) → ((𝐴 + 𝐷) = ∅ → [⟨𝐶, 𝐷⟩] = ∅))
5343, 52impbid 201 . . . 4 (((𝐴𝑆𝐶𝑆) ∧ ¬ 𝐵𝑆) → ([⟨𝐶, 𝐷⟩] = ∅ ↔ (𝐴 + 𝐷) = ∅))
5429, 53syl5bb 271 . . 3 (((𝐴𝑆𝐶𝑆) ∧ ¬ 𝐵𝑆) → (∅ = [⟨𝐶, 𝐷⟩] ↔ (𝐴 + 𝐷) = ∅))
5531eleq2i 2680 . . . . . . . 8 (⟨𝐴, 𝐵⟩ ∈ dom ↔ ⟨𝐴, 𝐵⟩ ∈ (𝑆 × 𝑆))
56 ecdmn0 7676 . . . . . . . 8 (⟨𝐴, 𝐵⟩ ∈ dom ↔ [⟨𝐴, 𝐵⟩] ≠ ∅)
57 opelxp 5070 . . . . . . . 8 (⟨𝐴, 𝐵⟩ ∈ (𝑆 × 𝑆) ↔ (𝐴𝑆𝐵𝑆))
5855, 56, 573bitr3i 289 . . . . . . 7 ([⟨𝐴, 𝐵⟩] ≠ ∅ ↔ (𝐴𝑆𝐵𝑆))
5958simprbi 479 . . . . . 6 ([⟨𝐴, 𝐵⟩] ≠ ∅ → 𝐵𝑆)
6059necon1bi 2810 . . . . 5 𝐵𝑆 → [⟨𝐴, 𝐵⟩] = ∅)
6160adantl 481 . . . 4 (((𝐴𝑆𝐶𝑆) ∧ ¬ 𝐵𝑆) → [⟨𝐴, 𝐵⟩] = ∅)
6261eqeq1d 2612 . . 3 (((𝐴𝑆𝐶𝑆) ∧ ¬ 𝐵𝑆) → ([⟨𝐴, 𝐵⟩] = [⟨𝐶, 𝐷⟩] ↔ ∅ = [⟨𝐶, 𝐷⟩] ))
63 simpl 472 . . . . . . 7 ((𝐵𝑆𝐶𝑆) → 𝐵𝑆)
6463con3i 149 . . . . . 6 𝐵𝑆 → ¬ (𝐵𝑆𝐶𝑆))
6515ndmov 6716 . . . . . 6 (¬ (𝐵𝑆𝐶𝑆) → (𝐵 + 𝐶) = ∅)
6664, 65syl 17 . . . . 5 𝐵𝑆 → (𝐵 + 𝐶) = ∅)
6766adantl 481 . . . 4 (((𝐴𝑆𝐶𝑆) ∧ ¬ 𝐵𝑆) → (𝐵 + 𝐶) = ∅)
6867eqeq2d 2620 . . 3 (((𝐴𝑆𝐶𝑆) ∧ ¬ 𝐵𝑆) → ((𝐴 + 𝐷) = (𝐵 + 𝐶) ↔ (𝐴 + 𝐷) = ∅))
6954, 62, 683bitr4d 299 . 2 (((𝐴𝑆𝐶𝑆) ∧ ¬ 𝐵𝑆) → ([⟨𝐴, 𝐵⟩] = [⟨𝐶, 𝐷⟩] ↔ (𝐴 + 𝐷) = (𝐵 + 𝐶)))
7028, 69pm2.61dan 828 1 ((𝐴𝑆𝐶𝑆) → ([⟨𝐴, 𝐵⟩] = [⟨𝐶, 𝐷⟩] ↔ (𝐴 + 𝐷) = (𝐵 + 𝐶)))
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wi 4  wb 195  wa 383   = wceq 1475  wcel 1977  wne 2780  c0 3874  cop 4131   class class class wbr 4583   × cxp 5036  dom cdm 5038  (class class class)co 6549   Er wer 7626  [cec 7627
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1713  ax-4 1728  ax-5 1827  ax-6 1875  ax-7 1922  ax-8 1979  ax-9 1986  ax-10 2006  ax-11 2021  ax-12 2034  ax-13 2234  ax-ext 2590  ax-sep 4709  ax-nul 4717  ax-pow 4769  ax-pr 4833
This theorem depends on definitions:  df-bi 196  df-or 384  df-an 385  df-3an 1033  df-tru 1478  df-ex 1696  df-nf 1701  df-sb 1868  df-eu 2462  df-mo 2463  df-clab 2597  df-cleq 2603  df-clel 2606  df-nfc 2740  df-ne 2782  df-ral 2901  df-rex 2902  df-rab 2905  df-v 3175  df-sbc 3403  df-dif 3543  df-un 3545  df-in 3547  df-ss 3554  df-nul 3875  df-if 4037  df-sn 4126  df-pr 4128  df-op 4132  df-uni 4373  df-br 4584  df-opab 4644  df-xp 5044  df-rel 5045  df-cnv 5046  df-co 5047  df-dm 5048  df-rn 5049  df-res 5050  df-ima 5051  df-iota 5768  df-fv 5812  df-ov 6552  df-er 7629  df-ec 7631
This theorem is referenced by: (None)
  Copyright terms: Public domain W3C validator