Step |
Hyp |
Ref |
Expression |
1 |
|
df-ne |
|- ( A =/= 0 <-> -. A = 0 ) |
2 |
|
oveq2 |
|- ( ( A .h B ) = 0h -> ( ( 1 / A ) .h ( A .h B ) ) = ( ( 1 / A ) .h 0h ) ) |
3 |
2
|
ad2antlr |
|- ( ( ( ( A e. CC /\ B e. ~H ) /\ ( A .h B ) = 0h ) /\ A =/= 0 ) -> ( ( 1 / A ) .h ( A .h B ) ) = ( ( 1 / A ) .h 0h ) ) |
4 |
|
recid2 |
|- ( ( A e. CC /\ A =/= 0 ) -> ( ( 1 / A ) x. A ) = 1 ) |
5 |
4
|
oveq1d |
|- ( ( A e. CC /\ A =/= 0 ) -> ( ( ( 1 / A ) x. A ) .h B ) = ( 1 .h B ) ) |
6 |
5
|
adantlr |
|- ( ( ( A e. CC /\ B e. ~H ) /\ A =/= 0 ) -> ( ( ( 1 / A ) x. A ) .h B ) = ( 1 .h B ) ) |
7 |
|
reccl |
|- ( ( A e. CC /\ A =/= 0 ) -> ( 1 / A ) e. CC ) |
8 |
7
|
adantlr |
|- ( ( ( A e. CC /\ B e. ~H ) /\ A =/= 0 ) -> ( 1 / A ) e. CC ) |
9 |
|
simpll |
|- ( ( ( A e. CC /\ B e. ~H ) /\ A =/= 0 ) -> A e. CC ) |
10 |
|
simplr |
|- ( ( ( A e. CC /\ B e. ~H ) /\ A =/= 0 ) -> B e. ~H ) |
11 |
|
ax-hvmulass |
|- ( ( ( 1 / A ) e. CC /\ A e. CC /\ B e. ~H ) -> ( ( ( 1 / A ) x. A ) .h B ) = ( ( 1 / A ) .h ( A .h B ) ) ) |
12 |
8 9 10 11
|
syl3anc |
|- ( ( ( A e. CC /\ B e. ~H ) /\ A =/= 0 ) -> ( ( ( 1 / A ) x. A ) .h B ) = ( ( 1 / A ) .h ( A .h B ) ) ) |
13 |
|
ax-hvmulid |
|- ( B e. ~H -> ( 1 .h B ) = B ) |
14 |
13
|
ad2antlr |
|- ( ( ( A e. CC /\ B e. ~H ) /\ A =/= 0 ) -> ( 1 .h B ) = B ) |
15 |
6 12 14
|
3eqtr3d |
|- ( ( ( A e. CC /\ B e. ~H ) /\ A =/= 0 ) -> ( ( 1 / A ) .h ( A .h B ) ) = B ) |
16 |
15
|
adantlr |
|- ( ( ( ( A e. CC /\ B e. ~H ) /\ ( A .h B ) = 0h ) /\ A =/= 0 ) -> ( ( 1 / A ) .h ( A .h B ) ) = B ) |
17 |
|
hvmul0 |
|- ( ( 1 / A ) e. CC -> ( ( 1 / A ) .h 0h ) = 0h ) |
18 |
7 17
|
syl |
|- ( ( A e. CC /\ A =/= 0 ) -> ( ( 1 / A ) .h 0h ) = 0h ) |
19 |
18
|
adantlr |
|- ( ( ( A e. CC /\ B e. ~H ) /\ A =/= 0 ) -> ( ( 1 / A ) .h 0h ) = 0h ) |
20 |
19
|
adantlr |
|- ( ( ( ( A e. CC /\ B e. ~H ) /\ ( A .h B ) = 0h ) /\ A =/= 0 ) -> ( ( 1 / A ) .h 0h ) = 0h ) |
21 |
3 16 20
|
3eqtr3d |
|- ( ( ( ( A e. CC /\ B e. ~H ) /\ ( A .h B ) = 0h ) /\ A =/= 0 ) -> B = 0h ) |
22 |
21
|
ex |
|- ( ( ( A e. CC /\ B e. ~H ) /\ ( A .h B ) = 0h ) -> ( A =/= 0 -> B = 0h ) ) |
23 |
1 22
|
syl5bir |
|- ( ( ( A e. CC /\ B e. ~H ) /\ ( A .h B ) = 0h ) -> ( -. A = 0 -> B = 0h ) ) |
24 |
23
|
orrd |
|- ( ( ( A e. CC /\ B e. ~H ) /\ ( A .h B ) = 0h ) -> ( A = 0 \/ B = 0h ) ) |
25 |
24
|
ex |
|- ( ( A e. CC /\ B e. ~H ) -> ( ( A .h B ) = 0h -> ( A = 0 \/ B = 0h ) ) ) |
26 |
|
ax-hvmul0 |
|- ( B e. ~H -> ( 0 .h B ) = 0h ) |
27 |
|
oveq1 |
|- ( A = 0 -> ( A .h B ) = ( 0 .h B ) ) |
28 |
27
|
eqeq1d |
|- ( A = 0 -> ( ( A .h B ) = 0h <-> ( 0 .h B ) = 0h ) ) |
29 |
26 28
|
syl5ibrcom |
|- ( B e. ~H -> ( A = 0 -> ( A .h B ) = 0h ) ) |
30 |
29
|
adantl |
|- ( ( A e. CC /\ B e. ~H ) -> ( A = 0 -> ( A .h B ) = 0h ) ) |
31 |
|
hvmul0 |
|- ( A e. CC -> ( A .h 0h ) = 0h ) |
32 |
|
oveq2 |
|- ( B = 0h -> ( A .h B ) = ( A .h 0h ) ) |
33 |
32
|
eqeq1d |
|- ( B = 0h -> ( ( A .h B ) = 0h <-> ( A .h 0h ) = 0h ) ) |
34 |
31 33
|
syl5ibrcom |
|- ( A e. CC -> ( B = 0h -> ( A .h B ) = 0h ) ) |
35 |
34
|
adantr |
|- ( ( A e. CC /\ B e. ~H ) -> ( B = 0h -> ( A .h B ) = 0h ) ) |
36 |
30 35
|
jaod |
|- ( ( A e. CC /\ B e. ~H ) -> ( ( A = 0 \/ B = 0h ) -> ( A .h B ) = 0h ) ) |
37 |
25 36
|
impbid |
|- ( ( A e. CC /\ B e. ~H ) -> ( ( A .h B ) = 0h <-> ( A = 0 \/ B = 0h ) ) ) |