thus ( len pD = width M implies ex M1 being Matrix of n,m,D st
( len M1 = len M & width M1 = width M & ( for i, j being Nat st [i,j] in Indices M holds
( ( i <> l implies M1 * (i,j) = M * (i,j) ) & ( i = l implies M1 * (l,j) = pD . j ) ) ) ) ) :: thesis: ( not len pD = width M implies ex b1 being Matrix of n,m,D st b1 = M )
proof
reconsider M9 = M as Matrix of len M, width M,D by MATRIX_2:7;
reconsider n1 = n, m1 = m as Element of NAT by ORDINAL1:def 13;
defpred S1[ set , set , set ] means for i, j being Nat st i = $1 & j = $2 holds
( ( i <> l implies $3 = M * (i,j) ) & ( i = l implies $3 = pD . j ) );
assume A1: len pD = width M ; :: thesis: ex M1 being Matrix of n,m,D st
( len M1 = len M & width M1 = width M & ( for i, j being Nat st [i,j] in Indices M holds
( ( i <> l implies M1 * (i,j) = M * (i,j) ) & ( i = l implies M1 * (l,j) = pD . j ) ) ) )

A2: for i, j being Nat st [i,j] in [:(Seg n1),(Seg m1):] holds
ex x being Element of D st S1[i,j,x]
proof
let i, j be Nat; :: thesis: ( [i,j] in [:(Seg n1),(Seg m1):] implies ex x being Element of D st S1[i,j,x] )
assume A3: [i,j] in [:(Seg n1),(Seg m1):] ; :: thesis: ex x being Element of D st S1[i,j,x]
now
per cases ( i = l or i <> l ) ;
case i <> l ; :: thesis: ex x being Element of D st S1[i,j,x]
then S1[i,j,M * (i,j)] ;
hence ex x being Element of D st S1[i,j,x] ; :: thesis: verum
end;
end;
end;
hence ex x being Element of D st S1[i,j,x] ; :: thesis: verum
end;
A7: for i, j being Nat st [i,j] in [:(Seg n1),(Seg m1):] holds
for x1, x2 being Element of D st S1[i,j,x1] & S1[i,j,x2] holds
x1 = x2
proof
let i, j be Nat; :: thesis: ( [i,j] in [:(Seg n1),(Seg m1):] implies for x1, x2 being Element of D st S1[i,j,x1] & S1[i,j,x2] holds
x1 = x2 )

assume [i,j] in [:(Seg n1),(Seg m1):] ; :: thesis: for x1, x2 being Element of D st S1[i,j,x1] & S1[i,j,x2] holds
x1 = x2

let x1, x2 be Element of D; :: thesis: ( S1[i,j,x1] & S1[i,j,x2] implies x1 = x2 )
assume that
A8: S1[i,j,x1] and
A9: S1[i,j,x2] ; :: thesis: x1 = x2
A10: ( i = l implies x1 = pD . j ) by A8;
( i <> l implies x1 = M * (i,j) ) by A8;
hence x1 = x2 by A9, A10; :: thesis: verum
end;
consider M1 being Matrix of n1,m1,D such that
A11: for i, j being Nat st [i,j] in Indices M1 holds
S1[i,j,M1 * (i,j)] from MATRIX_1:sch 2(A7, A2);
reconsider M1 = M1 as Matrix of n,m,D ;
take M1 ; :: thesis: ( len M1 = len M & width M1 = width M & ( for i, j being Nat st [i,j] in Indices M holds
( ( i <> l implies M1 * (i,j) = M * (i,j) ) & ( i = l implies M1 * (l,j) = pD . j ) ) ) )

A12: now end;
Indices M9 = Indices M1 by MATRIX_1:27;
hence ( len M1 = len M & width M1 = width M & ( for i, j being Nat st [i,j] in Indices M holds
( ( i <> l implies M1 * (i,j) = M * (i,j) ) & ( i = l implies M1 * (l,j) = pD . j ) ) ) ) by A11, A12; :: thesis: verum
end;
thus ( not len pD = width M implies ex b1 being Matrix of n,m,D st b1 = M ) ; :: thesis: verum