 reserve x,y,X,Y for set;
reserve G for non empty multMagma,
  D for set,
  a,b,c,r,l for Element of G;
reserve M for non empty multLoopStr;
reserve H for non empty SubStr of G,
  N for non empty MonoidalSubStr of G;

theorem Th31:
  for M being well-unital non empty multLoopStr
  for N being non empty MonoidalSubStr of M holds
    N is well-unital
proof
  let M be well-unital non empty multLoopStr,
      N be non empty MonoidalSubStr of M;
A1: un(M) is_a_unity_wrt op(M) by Def21;
A2: N is SubStr of M & un(N) = un(M) by Def24,Th21;
  now
    let a be Element of N;
    carr(N) c= carr(M) by Th23;
    then reconsider a9 = a as Element of M;
    thus op(N).(un(N),a) = (un(N))*a .= (un(M))*a9 by A2,Th25
      .= a by A1,BINOP_1:3;
    thus op(N).(a,un(N)) = a*(un(N)) .= a9*(un(M)) by A2,Th25
      .= a by A1,BINOP_1:3;
  end;
  hence un(N) is_a_unity_wrt op(N) by BINOP_1:3;
end;
