reserve S for non void non empty ManySortedSign,
  U1,U2 for MSAlgebra over S,
  o for OperSymbol of S,
  n for Nat;

theorem Th4:
  for I be set, A,B be ManySortedSet of I for F be
  ManySortedFunction of A, B holds (id B)**F = F
proof
  let I be set;
  let A,B be ManySortedSet of I;
  let F be ManySortedFunction of A, B;
  dom ((id B)**F) = (dom id B) /\ dom F by PBOOLE:def 19
    .= I /\ dom F by PARTFUN1:def 2
    .= I /\ I by PARTFUN1:def 2
    .= I;
  then reconsider G = (id B)**F as ManySortedFunction of I by PARTFUN1:def 2
,RELAT_1:def 18;
  now
    let i be object;
    assume
A1: i in I;
    then reconsider f = F.i as Function of A.i, B.i by PBOOLE:def 15;
    reconsider g = (id B).i as Function of B.i, B.i by A1,PBOOLE:def 15;
    g = id (B.i) & G.i = g * f by A1,Def1,Th2;
    hence G.i = F.i by FUNCT_2:17;
  end;
  hence thesis by PBOOLE:3;
end;
