| Step | Hyp | Ref | Expression | 
						
							| 1 |  | prjcrvfval.h |  |-  H = ( ( 0 ... N ) mHomP K ) | 
						
							| 2 |  | prjcrvfval.e |  |-  E = ( ( 0 ... N ) eval K ) | 
						
							| 3 |  | prjcrvfval.p |  |-  P = ( N PrjSpn K ) | 
						
							| 4 |  | prjcrvfval.0 |  |-  .0. = ( 0g ` K ) | 
						
							| 5 |  | prjcrvfval.n |  |-  ( ph -> N e. NN0 ) | 
						
							| 6 |  | prjcrvfval.k |  |-  ( ph -> K e. Field ) | 
						
							| 7 |  | oveq2 |  |-  ( n = N -> ( 0 ... n ) = ( 0 ... N ) ) | 
						
							| 8 |  | oveq12 |  |-  ( ( ( 0 ... n ) = ( 0 ... N ) /\ k = K ) -> ( ( 0 ... n ) mHomP k ) = ( ( 0 ... N ) mHomP K ) ) | 
						
							| 9 | 7 8 | sylan |  |-  ( ( n = N /\ k = K ) -> ( ( 0 ... n ) mHomP k ) = ( ( 0 ... N ) mHomP K ) ) | 
						
							| 10 | 9 1 | eqtr4di |  |-  ( ( n = N /\ k = K ) -> ( ( 0 ... n ) mHomP k ) = H ) | 
						
							| 11 | 10 | rneqd |  |-  ( ( n = N /\ k = K ) -> ran ( ( 0 ... n ) mHomP k ) = ran H ) | 
						
							| 12 | 11 | unieqd |  |-  ( ( n = N /\ k = K ) -> U. ran ( ( 0 ... n ) mHomP k ) = U. ran H ) | 
						
							| 13 |  | oveq12 |  |-  ( ( n = N /\ k = K ) -> ( n PrjSpn k ) = ( N PrjSpn K ) ) | 
						
							| 14 | 13 3 | eqtr4di |  |-  ( ( n = N /\ k = K ) -> ( n PrjSpn k ) = P ) | 
						
							| 15 |  | id |  |-  ( k = K -> k = K ) | 
						
							| 16 | 7 15 | oveqan12d |  |-  ( ( n = N /\ k = K ) -> ( ( 0 ... n ) eval k ) = ( ( 0 ... N ) eval K ) ) | 
						
							| 17 | 16 2 | eqtr4di |  |-  ( ( n = N /\ k = K ) -> ( ( 0 ... n ) eval k ) = E ) | 
						
							| 18 | 17 | fveq1d |  |-  ( ( n = N /\ k = K ) -> ( ( ( 0 ... n ) eval k ) ` f ) = ( E ` f ) ) | 
						
							| 19 | 18 | imaeq1d |  |-  ( ( n = N /\ k = K ) -> ( ( ( ( 0 ... n ) eval k ) ` f ) " p ) = ( ( E ` f ) " p ) ) | 
						
							| 20 |  | fveq2 |  |-  ( k = K -> ( 0g ` k ) = ( 0g ` K ) ) | 
						
							| 21 | 20 4 | eqtr4di |  |-  ( k = K -> ( 0g ` k ) = .0. ) | 
						
							| 22 | 21 | adantl |  |-  ( ( n = N /\ k = K ) -> ( 0g ` k ) = .0. ) | 
						
							| 23 | 22 | sneqd |  |-  ( ( n = N /\ k = K ) -> { ( 0g ` k ) } = { .0. } ) | 
						
							| 24 | 19 23 | eqeq12d |  |-  ( ( n = N /\ k = K ) -> ( ( ( ( ( 0 ... n ) eval k ) ` f ) " p ) = { ( 0g ` k ) } <-> ( ( E ` f ) " p ) = { .0. } ) ) | 
						
							| 25 | 14 24 | rabeqbidv |  |-  ( ( n = N /\ k = K ) -> { p e. ( n PrjSpn k ) | ( ( ( ( 0 ... n ) eval k ) ` f ) " p ) = { ( 0g ` k ) } } = { p e. P | ( ( E ` f ) " p ) = { .0. } } ) | 
						
							| 26 | 12 25 | mpteq12dv |  |-  ( ( n = N /\ k = K ) -> ( f e. U. ran ( ( 0 ... n ) mHomP k ) |-> { p e. ( n PrjSpn k ) | ( ( ( ( 0 ... n ) eval k ) ` f ) " p ) = { ( 0g ` k ) } } ) = ( f e. U. ran H |-> { p e. P | ( ( E ` f ) " p ) = { .0. } } ) ) | 
						
							| 27 |  | df-prjcrv |  |-  PrjCrv = ( n e. NN0 , k e. Field |-> ( f e. U. ran ( ( 0 ... n ) mHomP k ) |-> { p e. ( n PrjSpn k ) | ( ( ( ( 0 ... n ) eval k ) ` f ) " p ) = { ( 0g ` k ) } } ) ) | 
						
							| 28 | 1 | ovexi |  |-  H e. _V | 
						
							| 29 | 28 | rnex |  |-  ran H e. _V | 
						
							| 30 | 29 | uniex |  |-  U. ran H e. _V | 
						
							| 31 | 30 | mptex |  |-  ( f e. U. ran H |-> { p e. P | ( ( E ` f ) " p ) = { .0. } } ) e. _V | 
						
							| 32 | 26 27 31 | ovmpoa |  |-  ( ( N e. NN0 /\ K e. Field ) -> ( N PrjCrv K ) = ( f e. U. ran H |-> { p e. P | ( ( E ` f ) " p ) = { .0. } } ) ) | 
						
							| 33 | 5 6 32 | syl2anc |  |-  ( ph -> ( N PrjCrv K ) = ( f e. U. ran H |-> { p e. P | ( ( E ` f ) " p ) = { .0. } } ) ) |