let V be finite-dimensional RealUnitarySpace; :: thesis: for W1, W2 being Subspace of V st V is_the_direct_sum_of W1,W2 holds

dim V = (dim W1) + (dim W2)

let W1, W2 be Subspace of V; :: thesis: ( V is_the_direct_sum_of W1,W2 implies dim V = (dim W1) + (dim W2) )

assume A1: V is_the_direct_sum_of W1,W2 ; :: thesis: dim V = (dim W1) + (dim W2)

then A2: UNITSTR(# the carrier of V, the ZeroF of V, the addF of V, the Mult of V, the scalar of V #) = W1 + W2 by RUSUB_2:def 4;

W1 /\ W2 = (0). V by A1, RUSUB_2:def 4;

then (Omega). (W1 /\ W2) = (0). V by RUSUB_1:def 3

.= (0). (W1 /\ W2) by RUSUB_1:30 ;

then dim (W1 /\ W2) = 0 by Th12;

then (dim W1) + (dim W2) = (dim (W1 + W2)) + 0 by Th15

.= dim ((Omega). V) by A2, RUSUB_1:def 3

.= dim V by Th10 ;

hence dim V = (dim W1) + (dim W2) ; :: thesis: verum

dim V = (dim W1) + (dim W2)

let W1, W2 be Subspace of V; :: thesis: ( V is_the_direct_sum_of W1,W2 implies dim V = (dim W1) + (dim W2) )

assume A1: V is_the_direct_sum_of W1,W2 ; :: thesis: dim V = (dim W1) + (dim W2)

then A2: UNITSTR(# the carrier of V, the ZeroF of V, the addF of V, the Mult of V, the scalar of V #) = W1 + W2 by RUSUB_2:def 4;

W1 /\ W2 = (0). V by A1, RUSUB_2:def 4;

then (Omega). (W1 /\ W2) = (0). V by RUSUB_1:def 3

.= (0). (W1 /\ W2) by RUSUB_1:30 ;

then dim (W1 /\ W2) = 0 by Th12;

then (dim W1) + (dim W2) = (dim (W1 + W2)) + 0 by Th15

.= dim ((Omega). V) by A2, RUSUB_1:def 3

.= dim V by Th10 ;

hence dim V = (dim W1) + (dim W2) ; :: thesis: verum