Metamath Proof Explorer


Theorem bhmafibid1cn

Description: The Brahmagupta-Fibonacci identity for complex numbers. Express the product of two sums of two squares as a sum of two squares. First result. (Contributed by Thierry Arnoux, 1-Feb-2020) Generalization for complex numbers proposed by GL. (Revised by AV, 8-Jun-2023)

Ref Expression
Assertion bhmafibid1cn ABCDA2+B2C2+D2=ACBD2+AD+BC2

Proof

Step Hyp Ref Expression
1 simpll ABCDA
2 1 sqcld ABCDA2
3 simprl ABCDC
4 3 sqcld ABCDC2
5 2 4 mulcld ABCDA2C2
6 simprr ABCDD
7 6 sqcld ABCDD2
8 simplr ABCDB
9 8 sqcld ABCDB2
10 7 9 mulcld ABCDD2B2
11 2 7 mulcld ABCDA2D2
12 4 9 mulcld ABCDC2B2
13 5 10 11 12 add4d ABCDA2C2+D2B2+A2D2+C2B2=A2C2+A2D2+D2B2+C2B2
14 7 9 mulcomd ABCDD2B2=B2D2
15 4 9 mulcomd ABCDC2B2=B2C2
16 14 15 oveq12d ABCDD2B2+C2B2=B2D2+B2C2
17 16 oveq2d ABCDA2C2+A2D2+D2B2+C2B2=A2C2+A2D2+B2D2+B2C2
18 13 17 eqtrd ABCDA2C2+D2B2+A2D2+C2B2=A2C2+A2D2+B2D2+B2C2
19 2 9 4 7 muladdd ABCDA2+B2C2+D2=A2C2+D2B2+A2D2+C2B2
20 1 3 mulcld ABCDAC
21 8 6 mulcld ABCDBD
22 binom2sub ACBDACBD2=AC2-2ACBD+BD2
23 20 21 22 syl2anc ABCDACBD2=AC2-2ACBD+BD2
24 1 6 mulcld ABCDAD
25 8 3 mulcld ABCDBC
26 binom2 ADBCAD+BC2=AD2+2ADBC+BC2
27 24 25 26 syl2anc ABCDAD+BC2=AD2+2ADBC+BC2
28 23 27 oveq12d ABCDACBD2+AD+BC2=AC22ACBD+BD2+AD2+2ADBC+BC2
29 20 sqcld ABCDAC2
30 2cnd ABCD2
31 20 21 mulcld ABCDACBD
32 30 31 mulcld ABCD2ACBD
33 29 32 subcld ABCDAC22ACBD
34 21 sqcld ABCDBD2
35 24 sqcld ABCDAD2
36 24 25 mulcld ABCDADBC
37 30 36 mulcld ABCD2ADBC
38 35 37 addcld ABCDAD2+2ADBC
39 25 sqcld ABCDBC2
40 33 34 38 39 add4d ABCDAC22ACBD+BD2+AD2+2ADBC+BC2=AC22ACBD+AD2+2ADBC+BD2+BC2
41 mul4r ACBDACBD=ADBC
42 41 an4s ABCDACBD=ADBC
43 42 oveq2d ABCD2ACBD=2ADBC
44 43 oveq2d ABCDAC22ACBD=AC22ADBC
45 44 oveq1d ABCDAC22ACBD+AD2+2ADBC=AC22ADBC+AD2+2ADBC
46 29 37 35 nppcan3d ABCDAC22ADBC+AD2+2ADBC=AC2+AD2
47 45 46 eqtrd ABCDAC22ACBD+AD2+2ADBC=AC2+AD2
48 8 6 sqmuld ABCDBD2=B2D2
49 8 3 sqmuld ABCDBC2=B2C2
50 48 49 oveq12d ABCDBD2+BC2=B2D2+B2C2
51 47 50 oveq12d ABCDAC22ACBD+AD2+2ADBC+BD2+BC2=AC2+AD2+B2D2+B2C2
52 1 3 sqmuld ABCDAC2=A2C2
53 1 6 sqmuld ABCDAD2=A2D2
54 52 53 oveq12d ABCDAC2+AD2=A2C2+A2D2
55 54 oveq1d ABCDAC2+AD2+B2D2+B2C2=A2C2+A2D2+B2D2+B2C2
56 51 55 eqtrd ABCDAC22ACBD+AD2+2ADBC+BD2+BC2=A2C2+A2D2+B2D2+B2C2
57 28 40 56 3eqtrd ABCDACBD2+AD+BC2=A2C2+A2D2+B2D2+B2C2
58 18 19 57 3eqtr4d ABCDA2+B2C2+D2=ACBD2+AD+BC2