Metamath Proof Explorer


Theorem affineequivne

Description: Equivalence between two ways of expressing A as an affine combination of B and C if B and C are not equal. (Contributed by AV, 22-Jan-2023)

Ref Expression
Hypotheses affineequiv.a ( 𝜑𝐴 ∈ ℂ )
affineequiv.b ( 𝜑𝐵 ∈ ℂ )
affineequiv.c ( 𝜑𝐶 ∈ ℂ )
affineequiv.d ( 𝜑𝐷 ∈ ℂ )
affineequivne.d ( 𝜑𝐵𝐶 )
Assertion affineequivne ( 𝜑 → ( 𝐴 = ( ( ( 1 − 𝐷 ) · 𝐵 ) + ( 𝐷 · 𝐶 ) ) ↔ 𝐷 = ( ( 𝐴𝐵 ) / ( 𝐶𝐵 ) ) ) )

Proof

Step Hyp Ref Expression
1 affineequiv.a ( 𝜑𝐴 ∈ ℂ )
2 affineequiv.b ( 𝜑𝐵 ∈ ℂ )
3 affineequiv.c ( 𝜑𝐶 ∈ ℂ )
4 affineequiv.d ( 𝜑𝐷 ∈ ℂ )
5 affineequivne.d ( 𝜑𝐵𝐶 )
6 1 2 3 4 affineequiv3 ( 𝜑 → ( 𝐴 = ( ( ( 1 − 𝐷 ) · 𝐵 ) + ( 𝐷 · 𝐶 ) ) ↔ ( 𝐴𝐵 ) = ( 𝐷 · ( 𝐶𝐵 ) ) ) )
7 1 2 subcld ( 𝜑 → ( 𝐴𝐵 ) ∈ ℂ )
8 3 2 subcld ( 𝜑 → ( 𝐶𝐵 ) ∈ ℂ )
9 5 necomd ( 𝜑𝐶𝐵 )
10 3 2 9 subne0d ( 𝜑 → ( 𝐶𝐵 ) ≠ 0 )
11 7 4 8 10 divmul3d ( 𝜑 → ( ( ( 𝐴𝐵 ) / ( 𝐶𝐵 ) ) = 𝐷 ↔ ( 𝐴𝐵 ) = ( 𝐷 · ( 𝐶𝐵 ) ) ) )
12 eqcom ( ( ( 𝐴𝐵 ) / ( 𝐶𝐵 ) ) = 𝐷𝐷 = ( ( 𝐴𝐵 ) / ( 𝐶𝐵 ) ) )
13 11 12 bitr3di ( 𝜑 → ( ( 𝐴𝐵 ) = ( 𝐷 · ( 𝐶𝐵 ) ) ↔ 𝐷 = ( ( 𝐴𝐵 ) / ( 𝐶𝐵 ) ) ) )
14 6 13 bitrd ( 𝜑 → ( 𝐴 = ( ( ( 1 − 𝐷 ) · 𝐵 ) + ( 𝐷 · 𝐶 ) ) ↔ 𝐷 = ( ( 𝐴𝐵 ) / ( 𝐶𝐵 ) ) ) )