Step |
Hyp |
Ref |
Expression |
1 |
|
prjspner01.e |
|- .~ = { <. x , y >. | ( ( x e. B /\ y e. B ) /\ E. l e. S x = ( l .x. y ) ) } |
2 |
|
prjspner01.f |
|- F = ( b e. B |-> if ( ( b ` 0 ) = .0. , b , ( ( I ` ( b ` 0 ) ) .x. b ) ) ) |
3 |
|
prjspner01.b |
|- B = ( ( Base ` W ) \ { ( 0g ` W ) } ) |
4 |
|
prjspner01.w |
|- W = ( K freeLMod ( 0 ... N ) ) |
5 |
|
prjspner01.t |
|- .x. = ( .s ` W ) |
6 |
|
prjspner01.s |
|- S = ( Base ` K ) |
7 |
|
prjspner01.0 |
|- .0. = ( 0g ` K ) |
8 |
|
prjspner01.i |
|- I = ( invr ` K ) |
9 |
|
prjspner01.k |
|- ( ph -> K e. DivRing ) |
10 |
|
prjspner01.n |
|- ( ph -> N e. NN0 ) |
11 |
|
prjspner01.x |
|- ( ph -> X e. B ) |
12 |
1 4 3 6 5 9
|
prjspner |
|- ( ph -> .~ Er B ) |
13 |
12 11
|
erref |
|- ( ph -> X .~ X ) |
14 |
13
|
adantr |
|- ( ( ph /\ ( X ` 0 ) = .0. ) -> X .~ X ) |
15 |
12
|
adantr |
|- ( ( ph /\ -. ( X ` 0 ) = .0. ) -> .~ Er B ) |
16 |
9
|
adantr |
|- ( ( ph /\ -. ( X ` 0 ) = .0. ) -> K e. DivRing ) |
17 |
11
|
adantr |
|- ( ( ph /\ -. ( X ` 0 ) = .0. ) -> X e. B ) |
18 |
|
ovexd |
|- ( ph -> ( 0 ... N ) e. _V ) |
19 |
11 3
|
eleqtrdi |
|- ( ph -> X e. ( ( Base ` W ) \ { ( 0g ` W ) } ) ) |
20 |
19
|
eldifad |
|- ( ph -> X e. ( Base ` W ) ) |
21 |
|
eqid |
|- ( Base ` W ) = ( Base ` W ) |
22 |
4 6 21
|
frlmbasf |
|- ( ( ( 0 ... N ) e. _V /\ X e. ( Base ` W ) ) -> X : ( 0 ... N ) --> S ) |
23 |
18 20 22
|
syl2anc |
|- ( ph -> X : ( 0 ... N ) --> S ) |
24 |
|
0elfz |
|- ( N e. NN0 -> 0 e. ( 0 ... N ) ) |
25 |
10 24
|
syl |
|- ( ph -> 0 e. ( 0 ... N ) ) |
26 |
23 25
|
ffvelrnd |
|- ( ph -> ( X ` 0 ) e. S ) |
27 |
|
neqne |
|- ( -. ( X ` 0 ) = .0. -> ( X ` 0 ) =/= .0. ) |
28 |
6 7 8
|
drnginvrcl |
|- ( ( K e. DivRing /\ ( X ` 0 ) e. S /\ ( X ` 0 ) =/= .0. ) -> ( I ` ( X ` 0 ) ) e. S ) |
29 |
9 26 27 28
|
syl2an3an |
|- ( ( ph /\ -. ( X ` 0 ) = .0. ) -> ( I ` ( X ` 0 ) ) e. S ) |
30 |
6 7 8
|
drnginvrn0 |
|- ( ( K e. DivRing /\ ( X ` 0 ) e. S /\ ( X ` 0 ) =/= .0. ) -> ( I ` ( X ` 0 ) ) =/= .0. ) |
31 |
9 26 27 30
|
syl2an3an |
|- ( ( ph /\ -. ( X ` 0 ) = .0. ) -> ( I ` ( X ` 0 ) ) =/= .0. ) |
32 |
1 4 3 6 5 7 16 17 29 31
|
prjspnvs |
|- ( ( ph /\ -. ( X ` 0 ) = .0. ) -> ( ( I ` ( X ` 0 ) ) .x. X ) .~ X ) |
33 |
15 32
|
ersym |
|- ( ( ph /\ -. ( X ` 0 ) = .0. ) -> X .~ ( ( I ` ( X ` 0 ) ) .x. X ) ) |
34 |
14 33
|
ifpimpda |
|- ( ph -> if- ( ( X ` 0 ) = .0. , X .~ X , X .~ ( ( I ` ( X ` 0 ) ) .x. X ) ) ) |
35 |
|
brif2 |
|- ( X .~ if ( ( X ` 0 ) = .0. , X , ( ( I ` ( X ` 0 ) ) .x. X ) ) <-> if- ( ( X ` 0 ) = .0. , X .~ X , X .~ ( ( I ` ( X ` 0 ) ) .x. X ) ) ) |
36 |
34 35
|
sylibr |
|- ( ph -> X .~ if ( ( X ` 0 ) = .0. , X , ( ( I ` ( X ` 0 ) ) .x. X ) ) ) |
37 |
|
fveq1 |
|- ( b = X -> ( b ` 0 ) = ( X ` 0 ) ) |
38 |
37
|
eqeq1d |
|- ( b = X -> ( ( b ` 0 ) = .0. <-> ( X ` 0 ) = .0. ) ) |
39 |
|
id |
|- ( b = X -> b = X ) |
40 |
37
|
fveq2d |
|- ( b = X -> ( I ` ( b ` 0 ) ) = ( I ` ( X ` 0 ) ) ) |
41 |
40 39
|
oveq12d |
|- ( b = X -> ( ( I ` ( b ` 0 ) ) .x. b ) = ( ( I ` ( X ` 0 ) ) .x. X ) ) |
42 |
38 39 41
|
ifbieq12d |
|- ( b = X -> if ( ( b ` 0 ) = .0. , b , ( ( I ` ( b ` 0 ) ) .x. b ) ) = if ( ( X ` 0 ) = .0. , X , ( ( I ` ( X ` 0 ) ) .x. X ) ) ) |
43 |
|
ovexd |
|- ( ph -> ( ( I ` ( X ` 0 ) ) .x. X ) e. _V ) |
44 |
11 43
|
ifexd |
|- ( ph -> if ( ( X ` 0 ) = .0. , X , ( ( I ` ( X ` 0 ) ) .x. X ) ) e. _V ) |
45 |
2 42 11 44
|
fvmptd3 |
|- ( ph -> ( F ` X ) = if ( ( X ` 0 ) = .0. , X , ( ( I ` ( X ` 0 ) ) .x. X ) ) ) |
46 |
36 45
|
breqtrrd |
|- ( ph -> X .~ ( F ` X ) ) |