Proof of Theorem lawcos
| Step | Hyp | Ref
| Expression |
| 1 | | subcl 11507 |
. . . . 5
⊢ ((𝐴 ∈ ℂ ∧ 𝐶 ∈ ℂ) → (𝐴 − 𝐶) ∈ ℂ) |
| 2 | 1 | 3adant2 1132 |
. . . 4
⊢ ((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ∧ 𝐶 ∈ ℂ) → (𝐴 − 𝐶) ∈ ℂ) |
| 3 | 2 | adantr 480 |
. . 3
⊢ (((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ∧ 𝐶 ∈ ℂ) ∧ (𝐴 ≠ 𝐶 ∧ 𝐵 ≠ 𝐶)) → (𝐴 − 𝐶) ∈ ℂ) |
| 4 | | subcl 11507 |
. . . . 5
⊢ ((𝐵 ∈ ℂ ∧ 𝐶 ∈ ℂ) → (𝐵 − 𝐶) ∈ ℂ) |
| 5 | 4 | 3adant1 1131 |
. . . 4
⊢ ((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ∧ 𝐶 ∈ ℂ) → (𝐵 − 𝐶) ∈ ℂ) |
| 6 | 5 | adantr 480 |
. . 3
⊢ (((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ∧ 𝐶 ∈ ℂ) ∧ (𝐴 ≠ 𝐶 ∧ 𝐵 ≠ 𝐶)) → (𝐵 − 𝐶) ∈ ℂ) |
| 7 | | subeq0 11535 |
. . . . . . . 8
⊢ ((𝐴 ∈ ℂ ∧ 𝐶 ∈ ℂ) → ((𝐴 − 𝐶) = 0 ↔ 𝐴 = 𝐶)) |
| 8 | 7 | necon3bid 2985 |
. . . . . . 7
⊢ ((𝐴 ∈ ℂ ∧ 𝐶 ∈ ℂ) → ((𝐴 − 𝐶) ≠ 0 ↔ 𝐴 ≠ 𝐶)) |
| 9 | 8 | bicomd 223 |
. . . . . 6
⊢ ((𝐴 ∈ ℂ ∧ 𝐶 ∈ ℂ) → (𝐴 ≠ 𝐶 ↔ (𝐴 − 𝐶) ≠ 0)) |
| 10 | 9 | 3adant2 1132 |
. . . . 5
⊢ ((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ∧ 𝐶 ∈ ℂ) → (𝐴 ≠ 𝐶 ↔ (𝐴 − 𝐶) ≠ 0)) |
| 11 | 10 | biimpa 476 |
. . . 4
⊢ (((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ∧ 𝐶 ∈ ℂ) ∧ 𝐴 ≠ 𝐶) → (𝐴 − 𝐶) ≠ 0) |
| 12 | 11 | adantrr 717 |
. . 3
⊢ (((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ∧ 𝐶 ∈ ℂ) ∧ (𝐴 ≠ 𝐶 ∧ 𝐵 ≠ 𝐶)) → (𝐴 − 𝐶) ≠ 0) |
| 13 | | subeq0 11535 |
. . . . . . . 8
⊢ ((𝐵 ∈ ℂ ∧ 𝐶 ∈ ℂ) → ((𝐵 − 𝐶) = 0 ↔ 𝐵 = 𝐶)) |
| 14 | 13 | necon3bid 2985 |
. . . . . . 7
⊢ ((𝐵 ∈ ℂ ∧ 𝐶 ∈ ℂ) → ((𝐵 − 𝐶) ≠ 0 ↔ 𝐵 ≠ 𝐶)) |
| 15 | 14 | bicomd 223 |
. . . . . 6
⊢ ((𝐵 ∈ ℂ ∧ 𝐶 ∈ ℂ) → (𝐵 ≠ 𝐶 ↔ (𝐵 − 𝐶) ≠ 0)) |
| 16 | 15 | 3adant1 1131 |
. . . . 5
⊢ ((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ∧ 𝐶 ∈ ℂ) → (𝐵 ≠ 𝐶 ↔ (𝐵 − 𝐶) ≠ 0)) |
| 17 | 16 | biimpa 476 |
. . . 4
⊢ (((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ∧ 𝐶 ∈ ℂ) ∧ 𝐵 ≠ 𝐶) → (𝐵 − 𝐶) ≠ 0) |
| 18 | 17 | adantrl 716 |
. . 3
⊢ (((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ∧ 𝐶 ∈ ℂ) ∧ (𝐴 ≠ 𝐶 ∧ 𝐵 ≠ 𝐶)) → (𝐵 − 𝐶) ≠ 0) |
| 19 | 3, 6, 12, 18 | lawcoslem1 26858 |
. 2
⊢ (((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ∧ 𝐶 ∈ ℂ) ∧ (𝐴 ≠ 𝐶 ∧ 𝐵 ≠ 𝐶)) → ((abs‘((𝐴 − 𝐶) − (𝐵 − 𝐶)))↑2) = ((((abs‘(𝐴 − 𝐶))↑2) + ((abs‘(𝐵 − 𝐶))↑2)) − (2 ·
(((abs‘(𝐴 −
𝐶)) ·
(abs‘(𝐵 − 𝐶))) ·
((ℜ‘((𝐴 −
𝐶) / (𝐵 − 𝐶))) / (abs‘((𝐴 − 𝐶) / (𝐵 − 𝐶)))))))) |
| 20 | | lawcos.4 |
. . . . 5
⊢ 𝑍 = (abs‘(𝐴 − 𝐵)) |
| 21 | | nnncan2 11546 |
. . . . . 6
⊢ ((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ∧ 𝐶 ∈ ℂ) → ((𝐴 − 𝐶) − (𝐵 − 𝐶)) = (𝐴 − 𝐵)) |
| 22 | 21 | fveq2d 6910 |
. . . . 5
⊢ ((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ∧ 𝐶 ∈ ℂ) →
(abs‘((𝐴 −
𝐶) − (𝐵 − 𝐶))) = (abs‘(𝐴 − 𝐵))) |
| 23 | 20, 22 | eqtr4id 2796 |
. . . 4
⊢ ((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ∧ 𝐶 ∈ ℂ) → 𝑍 = (abs‘((𝐴 − 𝐶) − (𝐵 − 𝐶)))) |
| 24 | 23 | oveq1d 7446 |
. . 3
⊢ ((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ∧ 𝐶 ∈ ℂ) → (𝑍↑2) = ((abs‘((𝐴 − 𝐶) − (𝐵 − 𝐶)))↑2)) |
| 25 | 24 | adantr 480 |
. 2
⊢ (((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ∧ 𝐶 ∈ ℂ) ∧ (𝐴 ≠ 𝐶 ∧ 𝐵 ≠ 𝐶)) → (𝑍↑2) = ((abs‘((𝐴 − 𝐶) − (𝐵 − 𝐶)))↑2)) |
| 26 | | lawcos.2 |
. . . . . 6
⊢ 𝑋 = (abs‘(𝐵 − 𝐶)) |
| 27 | 26 | oveq1i 7441 |
. . . . 5
⊢ (𝑋↑2) = ((abs‘(𝐵 − 𝐶))↑2) |
| 28 | | lawcos.3 |
. . . . . 6
⊢ 𝑌 = (abs‘(𝐴 − 𝐶)) |
| 29 | 28 | oveq1i 7441 |
. . . . 5
⊢ (𝑌↑2) = ((abs‘(𝐴 − 𝐶))↑2) |
| 30 | 27, 29 | oveq12i 7443 |
. . . 4
⊢ ((𝑋↑2) + (𝑌↑2)) = (((abs‘(𝐵 − 𝐶))↑2) + ((abs‘(𝐴 − 𝐶))↑2)) |
| 31 | 3 | abscld 15475 |
. . . . . . 7
⊢ (((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ∧ 𝐶 ∈ ℂ) ∧ (𝐴 ≠ 𝐶 ∧ 𝐵 ≠ 𝐶)) → (abs‘(𝐴 − 𝐶)) ∈ ℝ) |
| 32 | 31 | recnd 11289 |
. . . . . 6
⊢ (((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ∧ 𝐶 ∈ ℂ) ∧ (𝐴 ≠ 𝐶 ∧ 𝐵 ≠ 𝐶)) → (abs‘(𝐴 − 𝐶)) ∈ ℂ) |
| 33 | 32 | sqcld 14184 |
. . . . 5
⊢ (((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ∧ 𝐶 ∈ ℂ) ∧ (𝐴 ≠ 𝐶 ∧ 𝐵 ≠ 𝐶)) → ((abs‘(𝐴 − 𝐶))↑2) ∈ ℂ) |
| 34 | 6 | abscld 15475 |
. . . . . . 7
⊢ (((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ∧ 𝐶 ∈ ℂ) ∧ (𝐴 ≠ 𝐶 ∧ 𝐵 ≠ 𝐶)) → (abs‘(𝐵 − 𝐶)) ∈ ℝ) |
| 35 | 34 | recnd 11289 |
. . . . . 6
⊢ (((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ∧ 𝐶 ∈ ℂ) ∧ (𝐴 ≠ 𝐶 ∧ 𝐵 ≠ 𝐶)) → (abs‘(𝐵 − 𝐶)) ∈ ℂ) |
| 36 | 35 | sqcld 14184 |
. . . . 5
⊢ (((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ∧ 𝐶 ∈ ℂ) ∧ (𝐴 ≠ 𝐶 ∧ 𝐵 ≠ 𝐶)) → ((abs‘(𝐵 − 𝐶))↑2) ∈ ℂ) |
| 37 | 33, 36 | addcomd 11463 |
. . . 4
⊢ (((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ∧ 𝐶 ∈ ℂ) ∧ (𝐴 ≠ 𝐶 ∧ 𝐵 ≠ 𝐶)) → (((abs‘(𝐴 − 𝐶))↑2) + ((abs‘(𝐵 − 𝐶))↑2)) = (((abs‘(𝐵 − 𝐶))↑2) + ((abs‘(𝐴 − 𝐶))↑2))) |
| 38 | 30, 37 | eqtr4id 2796 |
. . 3
⊢ (((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ∧ 𝐶 ∈ ℂ) ∧ (𝐴 ≠ 𝐶 ∧ 𝐵 ≠ 𝐶)) → ((𝑋↑2) + (𝑌↑2)) = (((abs‘(𝐴 − 𝐶))↑2) + ((abs‘(𝐵 − 𝐶))↑2))) |
| 39 | 26, 28 | oveq12i 7443 |
. . . . . 6
⊢ (𝑋 · 𝑌) = ((abs‘(𝐵 − 𝐶)) · (abs‘(𝐴 − 𝐶))) |
| 40 | 32, 35 | mulcomd 11282 |
. . . . . 6
⊢ (((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ∧ 𝐶 ∈ ℂ) ∧ (𝐴 ≠ 𝐶 ∧ 𝐵 ≠ 𝐶)) → ((abs‘(𝐴 − 𝐶)) · (abs‘(𝐵 − 𝐶))) = ((abs‘(𝐵 − 𝐶)) · (abs‘(𝐴 − 𝐶)))) |
| 41 | 39, 40 | eqtr4id 2796 |
. . . . 5
⊢ (((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ∧ 𝐶 ∈ ℂ) ∧ (𝐴 ≠ 𝐶 ∧ 𝐵 ≠ 𝐶)) → (𝑋 · 𝑌) = ((abs‘(𝐴 − 𝐶)) · (abs‘(𝐵 − 𝐶)))) |
| 42 | | lawcos.5 |
. . . . . . . . 9
⊢ 𝑂 = ((𝐵 − 𝐶)𝐹(𝐴 − 𝐶)) |
| 43 | 42 | fveq2i 6909 |
. . . . . . . 8
⊢
(cos‘𝑂) =
(cos‘((𝐵 −
𝐶)𝐹(𝐴 − 𝐶))) |
| 44 | | lawcos.1 |
. . . . . . . . . 10
⊢ 𝐹 = (𝑥 ∈ (ℂ ∖ {0}), 𝑦 ∈ (ℂ ∖ {0})
↦ (ℑ‘(log‘(𝑦 / 𝑥)))) |
| 45 | 44, 6, 18, 3, 12 | angvald 26847 |
. . . . . . . . 9
⊢ (((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ∧ 𝐶 ∈ ℂ) ∧ (𝐴 ≠ 𝐶 ∧ 𝐵 ≠ 𝐶)) → ((𝐵 − 𝐶)𝐹(𝐴 − 𝐶)) = (ℑ‘(log‘((𝐴 − 𝐶) / (𝐵 − 𝐶))))) |
| 46 | 45 | fveq2d 6910 |
. . . . . . . 8
⊢ (((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ∧ 𝐶 ∈ ℂ) ∧ (𝐴 ≠ 𝐶 ∧ 𝐵 ≠ 𝐶)) → (cos‘((𝐵 − 𝐶)𝐹(𝐴 − 𝐶))) =
(cos‘(ℑ‘(log‘((𝐴 − 𝐶) / (𝐵 − 𝐶)))))) |
| 47 | 43, 46 | eqtrid 2789 |
. . . . . . 7
⊢ (((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ∧ 𝐶 ∈ ℂ) ∧ (𝐴 ≠ 𝐶 ∧ 𝐵 ≠ 𝐶)) → (cos‘𝑂) =
(cos‘(ℑ‘(log‘((𝐴 − 𝐶) / (𝐵 − 𝐶)))))) |
| 48 | 3, 6, 18 | divcld 12043 |
. . . . . . . . . 10
⊢ (((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ∧ 𝐶 ∈ ℂ) ∧ (𝐴 ≠ 𝐶 ∧ 𝐵 ≠ 𝐶)) → ((𝐴 − 𝐶) / (𝐵 − 𝐶)) ∈ ℂ) |
| 49 | 3, 6, 12, 18 | divne0d 12059 |
. . . . . . . . . 10
⊢ (((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ∧ 𝐶 ∈ ℂ) ∧ (𝐴 ≠ 𝐶 ∧ 𝐵 ≠ 𝐶)) → ((𝐴 − 𝐶) / (𝐵 − 𝐶)) ≠ 0) |
| 50 | 48, 49 | logcld 26612 |
. . . . . . . . 9
⊢ (((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ∧ 𝐶 ∈ ℂ) ∧ (𝐴 ≠ 𝐶 ∧ 𝐵 ≠ 𝐶)) → (log‘((𝐴 − 𝐶) / (𝐵 − 𝐶))) ∈ ℂ) |
| 51 | 50 | imcld 15234 |
. . . . . . . 8
⊢ (((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ∧ 𝐶 ∈ ℂ) ∧ (𝐴 ≠ 𝐶 ∧ 𝐵 ≠ 𝐶)) → (ℑ‘(log‘((𝐴 − 𝐶) / (𝐵 − 𝐶)))) ∈ ℝ) |
| 52 | | recosval 16172 |
. . . . . . . 8
⊢
((ℑ‘(log‘((𝐴 − 𝐶) / (𝐵 − 𝐶)))) ∈ ℝ →
(cos‘(ℑ‘(log‘((𝐴 − 𝐶) / (𝐵 − 𝐶))))) = (ℜ‘(exp‘(i ·
(ℑ‘(log‘((𝐴 − 𝐶) / (𝐵 − 𝐶)))))))) |
| 53 | 51, 52 | syl 17 |
. . . . . . 7
⊢ (((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ∧ 𝐶 ∈ ℂ) ∧ (𝐴 ≠ 𝐶 ∧ 𝐵 ≠ 𝐶)) →
(cos‘(ℑ‘(log‘((𝐴 − 𝐶) / (𝐵 − 𝐶))))) = (ℜ‘(exp‘(i ·
(ℑ‘(log‘((𝐴 − 𝐶) / (𝐵 − 𝐶)))))))) |
| 54 | 47, 53 | eqtrd 2777 |
. . . . . 6
⊢ (((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ∧ 𝐶 ∈ ℂ) ∧ (𝐴 ≠ 𝐶 ∧ 𝐵 ≠ 𝐶)) → (cos‘𝑂) = (ℜ‘(exp‘(i ·
(ℑ‘(log‘((𝐴 − 𝐶) / (𝐵 − 𝐶)))))))) |
| 55 | | efiarg 26649 |
. . . . . . . 8
⊢ ((((𝐴 − 𝐶) / (𝐵 − 𝐶)) ∈ ℂ ∧ ((𝐴 − 𝐶) / (𝐵 − 𝐶)) ≠ 0) → (exp‘(i ·
(ℑ‘(log‘((𝐴 − 𝐶) / (𝐵 − 𝐶)))))) = (((𝐴 − 𝐶) / (𝐵 − 𝐶)) / (abs‘((𝐴 − 𝐶) / (𝐵 − 𝐶))))) |
| 56 | 48, 49, 55 | syl2anc 584 |
. . . . . . 7
⊢ (((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ∧ 𝐶 ∈ ℂ) ∧ (𝐴 ≠ 𝐶 ∧ 𝐵 ≠ 𝐶)) → (exp‘(i ·
(ℑ‘(log‘((𝐴 − 𝐶) / (𝐵 − 𝐶)))))) = (((𝐴 − 𝐶) / (𝐵 − 𝐶)) / (abs‘((𝐴 − 𝐶) / (𝐵 − 𝐶))))) |
| 57 | 56 | fveq2d 6910 |
. . . . . 6
⊢ (((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ∧ 𝐶 ∈ ℂ) ∧ (𝐴 ≠ 𝐶 ∧ 𝐵 ≠ 𝐶)) → (ℜ‘(exp‘(i
· (ℑ‘(log‘((𝐴 − 𝐶) / (𝐵 − 𝐶))))))) = (ℜ‘(((𝐴 − 𝐶) / (𝐵 − 𝐶)) / (abs‘((𝐴 − 𝐶) / (𝐵 − 𝐶)))))) |
| 58 | 48 | abscld 15475 |
. . . . . . 7
⊢ (((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ∧ 𝐶 ∈ ℂ) ∧ (𝐴 ≠ 𝐶 ∧ 𝐵 ≠ 𝐶)) → (abs‘((𝐴 − 𝐶) / (𝐵 − 𝐶))) ∈ ℝ) |
| 59 | 48, 49 | absne0d 15486 |
. . . . . . 7
⊢ (((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ∧ 𝐶 ∈ ℂ) ∧ (𝐴 ≠ 𝐶 ∧ 𝐵 ≠ 𝐶)) → (abs‘((𝐴 − 𝐶) / (𝐵 − 𝐶))) ≠ 0) |
| 60 | 58, 48, 59 | redivd 15268 |
. . . . . 6
⊢ (((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ∧ 𝐶 ∈ ℂ) ∧ (𝐴 ≠ 𝐶 ∧ 𝐵 ≠ 𝐶)) → (ℜ‘(((𝐴 − 𝐶) / (𝐵 − 𝐶)) / (abs‘((𝐴 − 𝐶) / (𝐵 − 𝐶))))) = ((ℜ‘((𝐴 − 𝐶) / (𝐵 − 𝐶))) / (abs‘((𝐴 − 𝐶) / (𝐵 − 𝐶))))) |
| 61 | 54, 57, 60 | 3eqtrd 2781 |
. . . . 5
⊢ (((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ∧ 𝐶 ∈ ℂ) ∧ (𝐴 ≠ 𝐶 ∧ 𝐵 ≠ 𝐶)) → (cos‘𝑂) = ((ℜ‘((𝐴 − 𝐶) / (𝐵 − 𝐶))) / (abs‘((𝐴 − 𝐶) / (𝐵 − 𝐶))))) |
| 62 | 41, 61 | oveq12d 7449 |
. . . 4
⊢ (((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ∧ 𝐶 ∈ ℂ) ∧ (𝐴 ≠ 𝐶 ∧ 𝐵 ≠ 𝐶)) → ((𝑋 · 𝑌) · (cos‘𝑂)) = (((abs‘(𝐴 − 𝐶)) · (abs‘(𝐵 − 𝐶))) · ((ℜ‘((𝐴 − 𝐶) / (𝐵 − 𝐶))) / (abs‘((𝐴 − 𝐶) / (𝐵 − 𝐶)))))) |
| 63 | 62 | oveq2d 7447 |
. . 3
⊢ (((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ∧ 𝐶 ∈ ℂ) ∧ (𝐴 ≠ 𝐶 ∧ 𝐵 ≠ 𝐶)) → (2 · ((𝑋 · 𝑌) · (cos‘𝑂))) = (2 · (((abs‘(𝐴 − 𝐶)) · (abs‘(𝐵 − 𝐶))) · ((ℜ‘((𝐴 − 𝐶) / (𝐵 − 𝐶))) / (abs‘((𝐴 − 𝐶) / (𝐵 − 𝐶))))))) |
| 64 | 38, 63 | oveq12d 7449 |
. 2
⊢ (((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ∧ 𝐶 ∈ ℂ) ∧ (𝐴 ≠ 𝐶 ∧ 𝐵 ≠ 𝐶)) → (((𝑋↑2) + (𝑌↑2)) − (2 · ((𝑋 · 𝑌) · (cos‘𝑂)))) = ((((abs‘(𝐴 − 𝐶))↑2) + ((abs‘(𝐵 − 𝐶))↑2)) − (2 ·
(((abs‘(𝐴 −
𝐶)) ·
(abs‘(𝐵 − 𝐶))) ·
((ℜ‘((𝐴 −
𝐶) / (𝐵 − 𝐶))) / (abs‘((𝐴 − 𝐶) / (𝐵 − 𝐶)))))))) |
| 65 | 19, 25, 64 | 3eqtr4d 2787 |
1
⊢ (((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ∧ 𝐶 ∈ ℂ) ∧ (𝐴 ≠ 𝐶 ∧ 𝐵 ≠ 𝐶)) → (𝑍↑2) = (((𝑋↑2) + (𝑌↑2)) − (2 · ((𝑋 · 𝑌) · (cos‘𝑂))))) |