reserve

  k,n,m,i,j for Element of NAT,
  K for Field;
reserve L for non empty addLoopStr;
reserve G for non empty multLoopStr;

theorem Th42:
  for D being non empty set,m,n,i,j being Element of NAT, A being
  Matrix of m,n,D holds Swap(A,i,j) is Matrix of m,n,D
proof
  let D be non empty set,m,n,i,j being Element of NAT, A be Matrix of m,n,D;
A1: for p being FinSequence of D st p in rng (Swap(A,i,j)) holds len p = n
  proof
    let p be FinSequence of D;
A2: rng (Swap(A,i,j))= rng A by FINSEQ_7:22;
    assume p in rng (Swap(A,i,j));
    hence thesis by A2,MATRIX_0:def 2;
  end;
  rng Swap(A,i,j)=rng A by FINSEQ_7:22;
  then ex n3 being Nat st for x being object st x in rng Swap(A,i,j)
ex p being
  FinSequence of D st x = p & len p = n3 by MATRIX_0:9;
  then
A3: Swap(A,i,j) is Matrix of D by MATRIX_0:9;
  len A=m & len (Swap(A,i,j))=len A by FINSEQ_7:18,MATRIX_0:def 2;
  hence thesis by A3,A1,MATRIX_0:def 2;
end;
