let K be Ring; :: thesis: for X, Y being VectorSpace-Sequence of K ex I being Function of [:(),():],(product (X ^ Y)) st
( I is one-to-one & I is onto & ( for x being Vector of ()
for y being Vector of () ex x1, y1 being FinSequence st
( x = x1 & y = y1 & I . (x,y) = x1 ^ y1 ) ) & ( for v, w being Vector of [:(),():] holds I . (v + w) = (I . v) + (I . w) ) & ( for v being Vector of [:(),():]
for r being Element of the carrier of K holds I . (r * v) = r * (I . v) ) & I . (0. [:(),():]) = 0. (product (X ^ Y)) )

let X, Y be VectorSpace-Sequence of K; :: thesis: ex I being Function of [:(),():],(product (X ^ Y)) st
( I is one-to-one & I is onto & ( for x being Vector of ()
for y being Vector of () ex x1, y1 being FinSequence st
( x = x1 & y = y1 & I . (x,y) = x1 ^ y1 ) ) & ( for v, w being Vector of [:(),():] holds I . (v + w) = (I . v) + (I . w) ) & ( for v being Vector of [:(),():]
for r being Element of the carrier of K holds I . (r * v) = r * (I . v) ) & I . (0. [:(),():]) = 0. (product (X ^ Y)) )

reconsider CX = carr X, CY = carr Y as non empty non-empty FinSequence ;
A1: ( len CX = len X & len CY = len Y & len (carr (X ^ Y)) = len (X ^ Y) ) by PRVECT_1:def 11;
consider I being Function of [:(product CX),(product CY):],(product (CX ^ CY)) such that
A2: ( I is one-to-one & I is onto & ( for x, y being FinSequence st x in product CX & y in product CY holds
I . (x,y) = x ^ y ) ) by PRVECT_3:6;
set PX = product X;
set PY = product Y;
( len (carr (X ^ Y)) = (len X) + (len Y) & len (CX ^ CY) = (len X) + (len Y) ) by ;
then A3: dom (carr (X ^ Y)) = dom (CX ^ CY) by FINSEQ_3:29;
A4: for k being Nat st k in dom (carr (X ^ Y)) holds
(carr (X ^ Y)) . k = (CX ^ CY) . k
proof
let k be Nat; :: thesis: ( k in dom (carr (X ^ Y)) implies (carr (X ^ Y)) . k = (CX ^ CY) . k )
assume A5: k in dom (carr (X ^ Y)) ; :: thesis: (carr (X ^ Y)) . k = (CX ^ CY) . k
then reconsider k1 = k as Element of dom (X ^ Y) by ;
A6: (carr (X ^ Y)) . k = the carrier of ((X ^ Y) . k1) by PRVECT_1:def 11;
A7: k in dom (X ^ Y) by ;
per cases ( k in dom X or ex n being Nat st
( n in dom Y & k = (len X) + n ) )
by ;
suppose A8: k in dom X ; :: thesis: (carr (X ^ Y)) . k = (CX ^ CY) . k
then A9: k in dom CX by ;
reconsider k2 = k1 as Element of dom X by A8;
thus (carr (X ^ Y)) . k = the carrier of (X . k2) by
.= CX . k by PRVECT_1:def 11
.= (CX ^ CY) . k by ; :: thesis: verum
end;
suppose ex n being Nat st
( n in dom Y & k = (len X) + n ) ; :: thesis: (carr (X ^ Y)) . k = (CX ^ CY) . k
then consider n being Nat such that
A10: ( n in dom Y & k = (len X) + n ) ;
A11: n in dom CY by ;
reconsider n1 = n as Element of dom Y by A10;
thus (carr (X ^ Y)) . k = the carrier of (Y . n1) by
.= CY . n by PRVECT_1:def 11
.= (CX ^ CY) . k by ; :: thesis: verum
end;
end;
end;
then A12: carr (X ^ Y) = CX ^ CY by ;
reconsider I = I as Function of [:(),():],(product (X ^ Y)) by ;
A13: for x being Vector of ()
for y being Vector of () ex x1, y1 being FinSequence st
( x = x1 & y = y1 & I . (x,y) = x1 ^ y1 )
proof
let x be Vector of (); :: thesis: for y being Vector of () ex x1, y1 being FinSequence st
( x = x1 & y = y1 & I . (x,y) = x1 ^ y1 )

let y be Vector of (); :: thesis: ex x1, y1 being FinSequence st
( x = x1 & y = y1 & I . (x,y) = x1 ^ y1 )

reconsider x1 = x, y1 = y as FinSequence by NDIFF_5:9;
I . (x,y) = x1 ^ y1 by A2;
hence ex x1, y1 being FinSequence st
( x = x1 & y = y1 & I . (x,y) = x1 ^ y1 ) ; :: thesis: verum
end;
A14: for v, w being Vector of [:(),():] holds I . (v + w) = (I . v) + (I . w)
proof
let v, w be Vector of [:(),():]; :: thesis: I . (v + w) = (I . v) + (I . w)
consider x1 being Vector of (), y1 being Vector of () such that
A15: v = [x1,y1] by SUBSET_1:43;
consider x2 being Vector of (), y2 being Vector of () such that
A16: w = [x2,y2] by SUBSET_1:43;
reconsider xx1 = x1, xx2 = x2 as FinSequence by NDIFF_5:9;
reconsider yy1 = y1, yy2 = y2 as FinSequence by NDIFF_5:9;
reconsider xx12 = x1 + x2, yy12 = y1 + y2 as FinSequence by NDIFF_5:9;
A17: ( dom xx1 = dom CX & dom xx2 = dom CX & dom xx12 = dom CX & dom yy1 = dom CY & dom yy2 = dom CY & dom yy12 = dom CY ) by CARD_3:9;
( I . v = I . (x1,y1) & I . w = I . (x2,y2) ) by ;
then A18: ( I . v = xx1 ^ yy1 & I . w = xx2 ^ yy2 ) by A2;
I . (v + w) = I . ((x1 + x2),(y1 + y2)) by ;
then A19: I . (v + w) = xx12 ^ yy12 by A2;
then A20: dom (xx12 ^ yy12) = dom (carr (X ^ Y)) by CARD_3:9;
reconsider Iv = I . v, Iw = I . w as Element of product (carr (X ^ Y)) ;
reconsider Ivw = (I . v) + (I . w) as FinSequence by NDIFF_5:9;
for j0 being Nat st j0 in dom Ivw holds
Ivw . j0 = (xx12 ^ yy12) . j0
proof
let j0 be Nat; :: thesis: ( j0 in dom Ivw implies Ivw . j0 = (xx12 ^ yy12) . j0 )
assume j0 in dom Ivw ; :: thesis: Ivw . j0 = (xx12 ^ yy12) . j0
then reconsider j = j0 as Element of dom (carr (X ^ Y)) by CARD_3:9;
A22: Ivw . j0 = ((addop (X ^ Y)) . j) . ((Iv . j),(Iw . j)) by PRVECT_1:def 8
.= the addF of ((X ^ Y) . j) . ((Iv . j),(Iw . j)) by PRVECT_1:def 12 ;
per cases ( j0 in dom CX or ex n being Nat st
( n in dom CY & j0 = (len CX) + n ) )
by ;
suppose A23: j0 in dom CX ; :: thesis: Ivw . j0 = (xx12 ^ yy12) . j0
then j0 in dom X by ;
then A24: (X ^ Y) . j = X . j0 by FINSEQ_1:def 7;
A25: ( Iv . j = xx1 . j & Iw . j = xx2 . j ) by ;
A26: (xx12 ^ yy12) . j0 = xx12 . j0 by ;
reconsider j1 = j0 as Element of dom (carr X) by A23;
the addF of ((X ^ Y) . j) . ((Iv . j),(Iw . j)) = (() . j1) . ((xx1 . j1),(xx2 . j1)) by
.= (xx12 ^ yy12) . j0 by ;
hence Ivw . j0 = (xx12 ^ yy12) . j0 by A22; :: thesis: verum
end;
suppose ex n being Nat st
( n in dom CY & j0 = (len CX) + n ) ; :: thesis: Ivw . j0 = (xx12 ^ yy12) . j0
then consider n being Nat such that
A27: ( n in dom CY & j0 = (len CX) + n ) ;
A28: ( len CX = len xx1 & len CX = len xx2 & len CX = len xx12 ) by ;
n in dom Y by ;
then A29: (X ^ Y) . j = Y . n by ;
A30: ( Iv . j = yy1 . n & Iw . j = yy2 . n ) by ;
A31: (xx12 ^ yy12) . j0 = yy12 . n by ;
reconsider j1 = n as Element of dom (carr Y) by A27;
the addF of ((X ^ Y) . j) . ((Iv . j),(Iw . j)) = (() . j1) . ((yy1 . j1),(yy2 . j1)) by
.= (xx12 ^ yy12) . j0 by ;
hence Ivw . j0 = (xx12 ^ yy12) . j0 by A22; :: thesis: verum
end;
end;
end;
hence I . (v + w) = (I . v) + (I . w) by ; :: thesis: verum
end;
A32: for v being Vector of [:(),():]
for r being Element of the carrier of K holds I . (r * v) = r * (I . v)
proof
let v be Vector of [:(),():]; :: thesis: for r being Element of the carrier of K holds I . (r * v) = r * (I . v)
let r be Element of the carrier of K; :: thesis: I . (r * v) = r * (I . v)
consider x1 being Vector of (), y1 being Vector of () such that
A33: v = [x1,y1] by SUBSET_1:43;
reconsider xx1 = x1, yy1 = y1 as FinSequence by NDIFF_5:9;
reconsider rxx1 = r * x1, ryy1 = r * y1 as FinSequence by NDIFF_5:9;
A34: ( dom xx1 = dom CX & dom yy1 = dom CY & dom rxx1 = dom CX & dom ryy1 = dom CY ) by CARD_3:9;
A35: I . v = I . (x1,y1) by A33
.= xx1 ^ yy1 by A2 ;
A36: I . (r * v) = I . ((r * x1),(r * y1)) by
.= rxx1 ^ ryy1 by A2 ;
reconsider Iv = I . v as Element of product (carr (X ^ Y)) ;
reconsider rIv = r * (I . v) as FinSequence by NDIFF_5:9;
A37: dom rIv = dom (carr (X ^ Y)) by CARD_3:9;
A38: dom (rxx1 ^ ryy1) = dom (carr (X ^ Y)) by ;
for j0 being Nat st j0 in dom rIv holds
rIv . j0 = (rxx1 ^ ryy1) . j0
proof
let j0 be Nat; :: thesis: ( j0 in dom rIv implies rIv . j0 = (rxx1 ^ ryy1) . j0 )
assume A39: j0 in dom rIv ; :: thesis: rIv . j0 = (rxx1 ^ ryy1) . j0
then reconsider j = j0 as Element of dom (carr (X ^ Y)) by CARD_3:9;
A40: rIv . j0 = ((multop (X ^ Y)) . j) . (r,(Iv . j)) by PRVECT_2:def 2
.= the lmult of ((X ^ Y) . j) . (r,(Iv . j)) by Def8 ;
per cases ( j0 in dom CX or ex n being Nat st
( n in dom CY & j0 = (len CX) + n ) )
by ;
suppose A41: j0 in dom CX ; :: thesis: rIv . j0 = (rxx1 ^ ryy1) . j0
then j0 in dom X by ;
then A42: (X ^ Y) . j = X . j0 by FINSEQ_1:def 7;
A43: Iv . j = xx1 . j by ;
A44: (rxx1 ^ ryy1) . j0 = rxx1 . j0 by ;
reconsider j1 = j0 as Element of dom (carr X) by A41;
the lmult of ((X ^ Y) . j) . (r,(Iv . j)) = (() . j1) . (r,(xx1 . j1)) by
.= (rxx1 ^ ryy1) . j0 by ;
hence rIv . j0 = (rxx1 ^ ryy1) . j0 by A40; :: thesis: verum
end;
suppose ex n being Nat st
( n in dom CY & j0 = (len CX) + n ) ; :: thesis: rIv . j0 = (rxx1 ^ ryy1) . j0
then consider n being Nat such that
A45: ( n in dom CY & j0 = (len CX) + n ) ;
A46: ( len CX = len xx1 & len CX = len rxx1 ) by ;
n in dom Y by ;
then A47: (X ^ Y) . j = Y . n by ;
A48: Iv . j = yy1 . n by ;
A49: (rxx1 ^ ryy1) . j0 = ryy1 . n by ;
reconsider j1 = n as Element of dom (carr Y) by A45;
the lmult of ((X ^ Y) . j) . (r,(Iv . j)) = (() . j1) . (r,(yy1 . j1)) by
.= (rxx1 ^ ryy1) . j0 by ;
hence rIv . j0 = (rxx1 ^ ryy1) . j0 by A40; :: thesis: verum
end;
end;
end;
hence I . (r * v) = r * (I . v) by ; :: thesis: verum
end;
I . (0. [:(),():]) = I . ((0. [:(),():]) + (0. [:(),():]))
.= (I . (0. [:(),():])) + (I . (0. [:(),():])) by A14 ;
then (I . (0. [:(),():])) - (I . (0. [:(),():])) = (I . (0. [:(),():])) + ((I . (0. [:(),():])) - (I . (0. [:(),():]))) by RLVECT_1:28
.= (I . (0. [:(),():])) + (0. (product (X ^ Y))) by RLVECT_1:15
.= I . (0. [:(),():]) ;
hence ex I being Function of [:(),():],(product (X ^ Y)) st
( I is one-to-one & I is onto & ( for x being Vector of ()
for y being Vector of () ex x1, y1 being FinSequence st
( x = x1 & y = y1 & I . (x,y) = x1 ^ y1 ) ) & ( for v, w being Vector of [:(),():] holds I . (v + w) = (I . v) + (I . w) ) & ( for v being Vector of [:(),():]
for r being Element of the carrier of K holds I . (r * v) = r * (I . v) ) & I . (0. [:(),():]) = 0. (product (X ^ Y)) ) by ; :: thesis: verum