Metamath Proof Explorer


Theorem asinlem

Description: The argument to the logarithm in df-asin is always nonzero. (Contributed by Mario Carneiro, 31-Mar-2015)

Ref Expression
Assertion asinlem
|- ( A e. CC -> ( ( _i x. A ) + ( sqrt ` ( 1 - ( A ^ 2 ) ) ) ) =/= 0 )

Proof

Step Hyp Ref Expression
1 ax-icn
 |-  _i e. CC
2 mulcl
 |-  ( ( _i e. CC /\ A e. CC ) -> ( _i x. A ) e. CC )
3 1 2 mpan
 |-  ( A e. CC -> ( _i x. A ) e. CC )
4 ax-1cn
 |-  1 e. CC
5 sqcl
 |-  ( A e. CC -> ( A ^ 2 ) e. CC )
6 subcl
 |-  ( ( 1 e. CC /\ ( A ^ 2 ) e. CC ) -> ( 1 - ( A ^ 2 ) ) e. CC )
7 4 5 6 sylancr
 |-  ( A e. CC -> ( 1 - ( A ^ 2 ) ) e. CC )
8 7 sqrtcld
 |-  ( A e. CC -> ( sqrt ` ( 1 - ( A ^ 2 ) ) ) e. CC )
9 3 8 subnegd
 |-  ( A e. CC -> ( ( _i x. A ) - -u ( sqrt ` ( 1 - ( A ^ 2 ) ) ) ) = ( ( _i x. A ) + ( sqrt ` ( 1 - ( A ^ 2 ) ) ) ) )
10 8 negcld
 |-  ( A e. CC -> -u ( sqrt ` ( 1 - ( A ^ 2 ) ) ) e. CC )
11 0ne1
 |-  0 =/= 1
12 0cnd
 |-  ( A e. CC -> 0 e. CC )
13 1cnd
 |-  ( A e. CC -> 1 e. CC )
14 subcan2
 |-  ( ( 0 e. CC /\ 1 e. CC /\ ( A ^ 2 ) e. CC ) -> ( ( 0 - ( A ^ 2 ) ) = ( 1 - ( A ^ 2 ) ) <-> 0 = 1 ) )
15 14 necon3bid
 |-  ( ( 0 e. CC /\ 1 e. CC /\ ( A ^ 2 ) e. CC ) -> ( ( 0 - ( A ^ 2 ) ) =/= ( 1 - ( A ^ 2 ) ) <-> 0 =/= 1 ) )
16 12 13 5 15 syl3anc
 |-  ( A e. CC -> ( ( 0 - ( A ^ 2 ) ) =/= ( 1 - ( A ^ 2 ) ) <-> 0 =/= 1 ) )
17 11 16 mpbiri
 |-  ( A e. CC -> ( 0 - ( A ^ 2 ) ) =/= ( 1 - ( A ^ 2 ) ) )
18 sqmul
 |-  ( ( _i e. CC /\ A e. CC ) -> ( ( _i x. A ) ^ 2 ) = ( ( _i ^ 2 ) x. ( A ^ 2 ) ) )
19 1 18 mpan
 |-  ( A e. CC -> ( ( _i x. A ) ^ 2 ) = ( ( _i ^ 2 ) x. ( A ^ 2 ) ) )
20 i2
 |-  ( _i ^ 2 ) = -u 1
21 20 oveq1i
 |-  ( ( _i ^ 2 ) x. ( A ^ 2 ) ) = ( -u 1 x. ( A ^ 2 ) )
22 5 mulm1d
 |-  ( A e. CC -> ( -u 1 x. ( A ^ 2 ) ) = -u ( A ^ 2 ) )
23 21 22 eqtrid
 |-  ( A e. CC -> ( ( _i ^ 2 ) x. ( A ^ 2 ) ) = -u ( A ^ 2 ) )
24 19 23 eqtrd
 |-  ( A e. CC -> ( ( _i x. A ) ^ 2 ) = -u ( A ^ 2 ) )
25 df-neg
 |-  -u ( A ^ 2 ) = ( 0 - ( A ^ 2 ) )
26 24 25 eqtrdi
 |-  ( A e. CC -> ( ( _i x. A ) ^ 2 ) = ( 0 - ( A ^ 2 ) ) )
27 sqneg
 |-  ( ( sqrt ` ( 1 - ( A ^ 2 ) ) ) e. CC -> ( -u ( sqrt ` ( 1 - ( A ^ 2 ) ) ) ^ 2 ) = ( ( sqrt ` ( 1 - ( A ^ 2 ) ) ) ^ 2 ) )
28 8 27 syl
 |-  ( A e. CC -> ( -u ( sqrt ` ( 1 - ( A ^ 2 ) ) ) ^ 2 ) = ( ( sqrt ` ( 1 - ( A ^ 2 ) ) ) ^ 2 ) )
29 7 sqsqrtd
 |-  ( A e. CC -> ( ( sqrt ` ( 1 - ( A ^ 2 ) ) ) ^ 2 ) = ( 1 - ( A ^ 2 ) ) )
30 28 29 eqtrd
 |-  ( A e. CC -> ( -u ( sqrt ` ( 1 - ( A ^ 2 ) ) ) ^ 2 ) = ( 1 - ( A ^ 2 ) ) )
31 17 26 30 3netr4d
 |-  ( A e. CC -> ( ( _i x. A ) ^ 2 ) =/= ( -u ( sqrt ` ( 1 - ( A ^ 2 ) ) ) ^ 2 ) )
32 oveq1
 |-  ( ( _i x. A ) = -u ( sqrt ` ( 1 - ( A ^ 2 ) ) ) -> ( ( _i x. A ) ^ 2 ) = ( -u ( sqrt ` ( 1 - ( A ^ 2 ) ) ) ^ 2 ) )
33 32 necon3i
 |-  ( ( ( _i x. A ) ^ 2 ) =/= ( -u ( sqrt ` ( 1 - ( A ^ 2 ) ) ) ^ 2 ) -> ( _i x. A ) =/= -u ( sqrt ` ( 1 - ( A ^ 2 ) ) ) )
34 31 33 syl
 |-  ( A e. CC -> ( _i x. A ) =/= -u ( sqrt ` ( 1 - ( A ^ 2 ) ) ) )
35 3 10 34 subne0d
 |-  ( A e. CC -> ( ( _i x. A ) - -u ( sqrt ` ( 1 - ( A ^ 2 ) ) ) ) =/= 0 )
36 9 35 eqnetrrd
 |-  ( A e. CC -> ( ( _i x. A ) + ( sqrt ` ( 1 - ( A ^ 2 ) ) ) ) =/= 0 )