reserve A for Tolerance_Space,
  X, Y for Subset of A;
reserve A for Approximation_Space,
  X for Subset of A;
reserve A for finite Tolerance_Space,
  X for Subset of A,
  x for Element of A;
reserve A for finite Approximation_Space,
  X, Y for Subset of A,
  x for Element of A;

theorem Th53:
  for X being FinSequence of bool the carrier of A,
      x being Element of A, y being Subset of A holds
    FinSeqM (x, X^<*y*>) = FinSeqM (x, X) ^ <* MemberFunc (y, A).x *>
proof
  let X be FinSequence of bool the carrier of A, x be Element of A,
      y be Subset of A;
  set p = FinSeqM (x, X^<*y*>);
  set q = FinSeqM (x, X) ^ <* MemberFunc (y, A).x *>;
  dom X = dom FinSeqM (x, X) by Def10;
  then Seg len X = dom FinSeqM (x, X) by FINSEQ_1:def 3
    .= Seg len FinSeqM (x, X) by FINSEQ_1:def 3;
  then
A1: len X = len FinSeqM (x, X) by FINSEQ_1:6;
A2: dom p = dom (X^<*y*>) by Def10
    .= Seg (len X + len <* y *>) by FINSEQ_1:def 7
    .= Seg (len X + 1) by FINSEQ_1:39;
A3: for k being Nat st k in dom p holds p.k = q.k
  proof
    let k be Nat;
    assume
A4: k in dom p;
    then reconsider k as Element of NAT;
A5: 1 <= k by A4,FINSEQ_3:25;
    k in dom (X^<*y*>) by A4,Def10;
    then
A6: p.k = MemberFunc ((X^<*y*>).k, A).x by Def10;
A7: k <= len X + 1 by A2,A4,FINSEQ_1:1;
    per cases by A7,NAT_1:8;
    suppose
A8:   k <= len X; then
A9:   k in dom X by A5,FINSEQ_3:25;
      k in dom FinSeqM (x, X) by A1,A5,A8,FINSEQ_3:25;
      then q.k = FinSeqM (x, X).k by FINSEQ_1:def 7
        .= MemberFunc (X.k, A).x by A9,Def10;
      hence thesis by A6,A9,FINSEQ_1:def 7;
    end;
    suppose
A10:  k = len X + 1;
      then q.k = MemberFunc (y, A).x by A1,FINSEQ_1:42;
      hence thesis by A6,A10,FINSEQ_1:42;
    end;
  end;
  dom q = Seg (len FinSeqM (x, X) + len <* MemberFunc (y, A).x *>)
    by FINSEQ_1:def 7
    .= Seg (len X + 1) by A1,FINSEQ_1:39;
  hence thesis by A2,A3,FINSEQ_1:13;
end;
