Metamath Proof Explorer


Theorem pjch

Description: Projection of a vector in the projection subspace. Lemma 4.4(ii) of Beran p. 111. (Contributed by NM, 30-Oct-1999) (New usage is discouraged.)

Ref Expression
Assertion pjch
|- ( ( H e. CH /\ A e. ~H ) -> ( A e. H <-> ( ( projh ` H ) ` A ) = A ) )

Proof

Step Hyp Ref Expression
1 eleq2
 |-  ( H = if ( H e. CH , H , ~H ) -> ( A e. H <-> A e. if ( H e. CH , H , ~H ) ) )
2 fveq2
 |-  ( H = if ( H e. CH , H , ~H ) -> ( projh ` H ) = ( projh ` if ( H e. CH , H , ~H ) ) )
3 2 fveq1d
 |-  ( H = if ( H e. CH , H , ~H ) -> ( ( projh ` H ) ` A ) = ( ( projh ` if ( H e. CH , H , ~H ) ) ` A ) )
4 3 eqeq1d
 |-  ( H = if ( H e. CH , H , ~H ) -> ( ( ( projh ` H ) ` A ) = A <-> ( ( projh ` if ( H e. CH , H , ~H ) ) ` A ) = A ) )
5 1 4 bibi12d
 |-  ( H = if ( H e. CH , H , ~H ) -> ( ( A e. H <-> ( ( projh ` H ) ` A ) = A ) <-> ( A e. if ( H e. CH , H , ~H ) <-> ( ( projh ` if ( H e. CH , H , ~H ) ) ` A ) = A ) ) )
6 eleq1
 |-  ( A = if ( A e. ~H , A , 0h ) -> ( A e. if ( H e. CH , H , ~H ) <-> if ( A e. ~H , A , 0h ) e. if ( H e. CH , H , ~H ) ) )
7 fveq2
 |-  ( A = if ( A e. ~H , A , 0h ) -> ( ( projh ` if ( H e. CH , H , ~H ) ) ` A ) = ( ( projh ` if ( H e. CH , H , ~H ) ) ` if ( A e. ~H , A , 0h ) ) )
8 id
 |-  ( A = if ( A e. ~H , A , 0h ) -> A = if ( A e. ~H , A , 0h ) )
9 7 8 eqeq12d
 |-  ( A = if ( A e. ~H , A , 0h ) -> ( ( ( projh ` if ( H e. CH , H , ~H ) ) ` A ) = A <-> ( ( projh ` if ( H e. CH , H , ~H ) ) ` if ( A e. ~H , A , 0h ) ) = if ( A e. ~H , A , 0h ) ) )
10 6 9 bibi12d
 |-  ( A = if ( A e. ~H , A , 0h ) -> ( ( A e. if ( H e. CH , H , ~H ) <-> ( ( projh ` if ( H e. CH , H , ~H ) ) ` A ) = A ) <-> ( if ( A e. ~H , A , 0h ) e. if ( H e. CH , H , ~H ) <-> ( ( projh ` if ( H e. CH , H , ~H ) ) ` if ( A e. ~H , A , 0h ) ) = if ( A e. ~H , A , 0h ) ) ) )
11 ifchhv
 |-  if ( H e. CH , H , ~H ) e. CH
12 ifhvhv0
 |-  if ( A e. ~H , A , 0h ) e. ~H
13 11 12 pjchi
 |-  ( if ( A e. ~H , A , 0h ) e. if ( H e. CH , H , ~H ) <-> ( ( projh ` if ( H e. CH , H , ~H ) ) ` if ( A e. ~H , A , 0h ) ) = if ( A e. ~H , A , 0h ) )
14 5 10 13 dedth2h
 |-  ( ( H e. CH /\ A e. ~H ) -> ( A e. H <-> ( ( projh ` H ) ` A ) = A ) )