Metamath Proof Explorer


Theorem sgnsub

Description: Signum of a difference with a number of opposite sign. (Contributed by Thierry Arnoux, 2-Oct-2018)

Ref Expression
Assertion sgnsub ⊢ A ∈ ℝ ∧ B ∈ ℝ ∧ A ⁢ B < 0 → sgn ⁡ A − B = sgn ⁡ A

Proof

Step Hyp Ref Expression
1 simpll ⊢ A ∈ ℝ ∧ B ∈ ℝ ∧ A ⁢ B < 0 → A ∈ ℝ
2 1 rexrd ⊢ A ∈ ℝ ∧ B ∈ ℝ ∧ A ⁢ B < 0 → A ∈ ℝ *
3 eqeq2 ⊢ sgn ⁡ A = 0 → sgn ⁡ A − B = sgn ⁡ A ↔ sgn ⁡ A − B = 0
4 eqeq2 ⊢ sgn ⁡ A = 1 → sgn ⁡ A − B = sgn ⁡ A ↔ sgn ⁡ A − B = 1
5 eqeq2 ⊢ sgn ⁡ A = − 1 → sgn ⁡ A − B = sgn ⁡ A ↔ sgn ⁡ A − B = − 1
6 simpr ⊢ A ∈ ℝ ∧ B ∈ ℝ ∧ A ⁢ B < 0 ∧ A = 0 → A = 0
7 1 recnd ⊢ A ∈ ℝ ∧ B ∈ ℝ ∧ A ⁢ B < 0 → A ∈ ℂ
8 7 adantr ⊢ A ∈ ℝ ∧ B ∈ ℝ ∧ A ⁢ B < 0 ∧ A = 0 → A ∈ ℂ
9 simplr ⊢ A ∈ ℝ ∧ B ∈ ℝ ∧ A ⁢ B < 0 → B ∈ ℝ
10 9 recnd ⊢ A ∈ ℝ ∧ B ∈ ℝ ∧ A ⁢ B < 0 → B ∈ ℂ
11 10 adantr ⊢ A ∈ ℝ ∧ B ∈ ℝ ∧ A ⁢ B < 0 ∧ A = 0 → B ∈ ℂ
12 simplr ⊢ A ∈ ℝ ∧ B ∈ ℝ ∧ A ⁢ B < 0 ∧ A = 0 → A ⁢ B < 0
13 12 lt0ne0d ⊢ A ∈ ℝ ∧ B ∈ ℝ ∧ A ⁢ B < 0 ∧ A = 0 → A ⁢ B ≠ 0
14 8 11 13 mulne0bad ⊢ A ∈ ℝ ∧ B ∈ ℝ ∧ A ⁢ B < 0 ∧ A = 0 → A ≠ 0
15 6 14 pm2.21ddne ⊢ A ∈ ℝ ∧ B ∈ ℝ ∧ A ⁢ B < 0 ∧ A = 0 → sgn ⁡ A − B = 0
16 simplll ⊢ A ∈ ℝ ∧ B ∈ ℝ ∧ A ⁢ B < 0 ∧ 0 < A → A ∈ ℝ
17 simpllr ⊢ A ∈ ℝ ∧ B ∈ ℝ ∧ A ⁢ B < 0 ∧ 0 < A → B ∈ ℝ
18 16 17 resubcld ⊢ A ∈ ℝ ∧ B ∈ ℝ ∧ A ⁢ B < 0 ∧ 0 < A → A − B ∈ ℝ
19 18 rexrd ⊢ A ∈ ℝ ∧ B ∈ ℝ ∧ A ⁢ B < 0 ∧ 0 < A → A − B ∈ ℝ *
20 0red ⊢ A ∈ ℝ ∧ B ∈ ℝ ∧ A ⁢ B < 0 ∧ 0 < A → 0 ∈ ℝ
21 simpr ⊢ A ∈ ℝ ∧ B ∈ ℝ ∧ A ⁢ B < 0 → A ⁢ B < 0
22 1 9 21 mul2lt0lgt0 ⊢ A ∈ ℝ ∧ B ∈ ℝ ∧ A ⁢ B < 0 ∧ 0 < A → B < 0
23 simpr ⊢ A ∈ ℝ ∧ B ∈ ℝ ∧ A ⁢ B < 0 ∧ 0 < A → 0 < A
24 17 20 16 22 23 lttrd ⊢ A ∈ ℝ ∧ B ∈ ℝ ∧ A ⁢ B < 0 ∧ 0 < A → B < A
25 simpr ⊢ A ∈ ℝ ∧ B ∈ ℝ → B ∈ ℝ
26 simpl ⊢ A ∈ ℝ ∧ B ∈ ℝ → A ∈ ℝ
27 25 26 posdifd ⊢ A ∈ ℝ ∧ B ∈ ℝ → B < A ↔ 0 < A − B
28 27 biimpa ⊢ A ∈ ℝ ∧ B ∈ ℝ ∧ B < A → 0 < A − B
29 16 17 24 28 syl21anc ⊢ A ∈ ℝ ∧ B ∈ ℝ ∧ A ⁢ B < 0 ∧ 0 < A → 0 < A − B
30 sgnp ⊢ A − B ∈ ℝ * ∧ 0 < A − B → sgn ⁡ A − B = 1
31 19 29 30 syl2anc ⊢ A ∈ ℝ ∧ B ∈ ℝ ∧ A ⁢ B < 0 ∧ 0 < A → sgn ⁡ A − B = 1
32 simplll ⊢ A ∈ ℝ ∧ B ∈ ℝ ∧ A ⁢ B < 0 ∧ A < 0 → A ∈ ℝ
33 simpllr ⊢ A ∈ ℝ ∧ B ∈ ℝ ∧ A ⁢ B < 0 ∧ A < 0 → B ∈ ℝ
34 32 33 resubcld ⊢ A ∈ ℝ ∧ B ∈ ℝ ∧ A ⁢ B < 0 ∧ A < 0 → A − B ∈ ℝ
35 34 rexrd ⊢ A ∈ ℝ ∧ B ∈ ℝ ∧ A ⁢ B < 0 ∧ A < 0 → A − B ∈ ℝ *
36 0red ⊢ A ∈ ℝ ∧ B ∈ ℝ ∧ A ⁢ B < 0 ∧ A < 0 → 0 ∈ ℝ
37 7 adantr ⊢ A ∈ ℝ ∧ B ∈ ℝ ∧ A ⁢ B < 0 ∧ A < 0 → A ∈ ℂ
38 37 subid1d ⊢ A ∈ ℝ ∧ B ∈ ℝ ∧ A ⁢ B < 0 ∧ A < 0 → A − 0 = A
39 simpr ⊢ A ∈ ℝ ∧ B ∈ ℝ ∧ A ⁢ B < 0 ∧ A < 0 → A < 0
40 1 9 21 mul2lt0llt0 ⊢ A ∈ ℝ ∧ B ∈ ℝ ∧ A ⁢ B < 0 ∧ A < 0 → 0 < B
41 32 36 33 39 40 lttrd ⊢ A ∈ ℝ ∧ B ∈ ℝ ∧ A ⁢ B < 0 ∧ A < 0 → A < B
42 38 41 eqbrtrd ⊢ A ∈ ℝ ∧ B ∈ ℝ ∧ A ⁢ B < 0 ∧ A < 0 → A − 0 < B
43 32 36 33 42 ltsub23d ⊢ A ∈ ℝ ∧ B ∈ ℝ ∧ A ⁢ B < 0 ∧ A < 0 → A − B < 0
44 sgnn ⊢ A − B ∈ ℝ * ∧ A − B < 0 → sgn ⁡ A − B = − 1
45 35 43 44 syl2anc ⊢ A ∈ ℝ ∧ B ∈ ℝ ∧ A ⁢ B < 0 ∧ A < 0 → sgn ⁡ A − B = − 1
46 2 3 4 5 15 31 45 sgn3da ⊢ A ∈ ℝ ∧ B ∈ ℝ ∧ A ⁢ B < 0 → sgn ⁡ A − B = sgn ⁡ A