Metamath Proof Explorer


Theorem dochsncom

Description: Swap vectors in an orthocomplement of a singleton. (Contributed by NM, 17-Jun-2015)

Ref Expression
Hypotheses dochsncom.h
|- H = ( LHyp ` K )
dochsncom.o
|- ._|_ = ( ( ocH ` K ) ` W )
dochsncom.u
|- U = ( ( DVecH ` K ) ` W )
dochsncom.v
|- V = ( Base ` U )
dochsncom.k
|- ( ph -> ( K e. HL /\ W e. H ) )
dochsncom.x
|- ( ph -> X e. V )
dochsncom.y
|- ( ph -> Y e. V )
Assertion dochsncom
|- ( ph -> ( X e. ( ._|_ ` { Y } ) <-> Y e. ( ._|_ ` { X } ) ) )

Proof

Step Hyp Ref Expression
1 dochsncom.h
 |-  H = ( LHyp ` K )
2 dochsncom.o
 |-  ._|_ = ( ( ocH ` K ) ` W )
3 dochsncom.u
 |-  U = ( ( DVecH ` K ) ` W )
4 dochsncom.v
 |-  V = ( Base ` U )
5 dochsncom.k
 |-  ( ph -> ( K e. HL /\ W e. H ) )
6 dochsncom.x
 |-  ( ph -> X e. V )
7 dochsncom.y
 |-  ( ph -> Y e. V )
8 eqid
 |-  ( ( DIsoH ` K ) ` W ) = ( ( DIsoH ` K ) ` W )
9 eqid
 |-  ( LSpan ` U ) = ( LSpan ` U )
10 1 3 4 9 8 dihlsprn
 |-  ( ( ( K e. HL /\ W e. H ) /\ X e. V ) -> ( ( LSpan ` U ) ` { X } ) e. ran ( ( DIsoH ` K ) ` W ) )
11 5 6 10 syl2anc
 |-  ( ph -> ( ( LSpan ` U ) ` { X } ) e. ran ( ( DIsoH ` K ) ` W ) )
12 1 3 4 9 8 dihlsprn
 |-  ( ( ( K e. HL /\ W e. H ) /\ Y e. V ) -> ( ( LSpan ` U ) ` { Y } ) e. ran ( ( DIsoH ` K ) ` W ) )
13 5 7 12 syl2anc
 |-  ( ph -> ( ( LSpan ` U ) ` { Y } ) e. ran ( ( DIsoH ` K ) ` W ) )
14 1 8 2 5 11 13 dochord3
 |-  ( ph -> ( ( ( LSpan ` U ) ` { X } ) C_ ( ._|_ ` ( ( LSpan ` U ) ` { Y } ) ) <-> ( ( LSpan ` U ) ` { Y } ) C_ ( ._|_ ` ( ( LSpan ` U ) ` { X } ) ) ) )
15 7 snssd
 |-  ( ph -> { Y } C_ V )
16 1 3 2 4 9 5 15 dochocsp
 |-  ( ph -> ( ._|_ ` ( ( LSpan ` U ) ` { Y } ) ) = ( ._|_ ` { Y } ) )
17 16 sseq2d
 |-  ( ph -> ( ( ( LSpan ` U ) ` { X } ) C_ ( ._|_ ` ( ( LSpan ` U ) ` { Y } ) ) <-> ( ( LSpan ` U ) ` { X } ) C_ ( ._|_ ` { Y } ) ) )
18 6 snssd
 |-  ( ph -> { X } C_ V )
19 1 3 2 4 9 5 18 dochocsp
 |-  ( ph -> ( ._|_ ` ( ( LSpan ` U ) ` { X } ) ) = ( ._|_ ` { X } ) )
20 19 sseq2d
 |-  ( ph -> ( ( ( LSpan ` U ) ` { Y } ) C_ ( ._|_ ` ( ( LSpan ` U ) ` { X } ) ) <-> ( ( LSpan ` U ) ` { Y } ) C_ ( ._|_ ` { X } ) ) )
21 14 17 20 3bitr3d
 |-  ( ph -> ( ( ( LSpan ` U ) ` { X } ) C_ ( ._|_ ` { Y } ) <-> ( ( LSpan ` U ) ` { Y } ) C_ ( ._|_ ` { X } ) ) )
22 eqid
 |-  ( LSubSp ` U ) = ( LSubSp ` U )
23 1 3 5 dvhlmod
 |-  ( ph -> U e. LMod )
24 1 3 4 22 2 dochlss
 |-  ( ( ( K e. HL /\ W e. H ) /\ { Y } C_ V ) -> ( ._|_ ` { Y } ) e. ( LSubSp ` U ) )
25 5 15 24 syl2anc
 |-  ( ph -> ( ._|_ ` { Y } ) e. ( LSubSp ` U ) )
26 4 22 9 23 25 6 lspsnel5
 |-  ( ph -> ( X e. ( ._|_ ` { Y } ) <-> ( ( LSpan ` U ) ` { X } ) C_ ( ._|_ ` { Y } ) ) )
27 1 3 4 22 2 dochlss
 |-  ( ( ( K e. HL /\ W e. H ) /\ { X } C_ V ) -> ( ._|_ ` { X } ) e. ( LSubSp ` U ) )
28 5 18 27 syl2anc
 |-  ( ph -> ( ._|_ ` { X } ) e. ( LSubSp ` U ) )
29 4 22 9 23 28 7 lspsnel5
 |-  ( ph -> ( Y e. ( ._|_ ` { X } ) <-> ( ( LSpan ` U ) ` { Y } ) C_ ( ._|_ ` { X } ) ) )
30 21 26 29 3bitr4d
 |-  ( ph -> ( X e. ( ._|_ ` { Y } ) <-> Y e. ( ._|_ ` { X } ) ) )