reserve Q,Q1,Q2 for multLoop;
reserve x,y,z,w,u,v for Element of Q;

theorem Th51:
  for f being Function of Q,Q st f in Mlt (Cent Q) holds
  ex z st z in Cent Q & for x holds f.x = x * z
proof
  set H = Cent Q;
  defpred P[Function of Q,Q] means ex z st z in H & for x holds $1.x = x * z;
  A1: for u being Element of Q st u in H holds
  for f being Function of Q,Q st for x being Element of Q holds
    f.x = x * u holds P[f];
  A2: for u being Element of Q st u in H holds
  for f being Function of Q,Q st for x being Element of Q holds
    f.x = u * x holds P[f]
  proof
    let u;
    assume A3: u in H;
    then A4: u in Comm Q by XBOOLE_0:def 4;
    let f be Function of Q,Q;
    assume A5: for x holds f.x = u * x;
    P[f]
    proof
      take u;
      thus u in Cent Q by A3;
      let x;
      f.x = u * x by A5
      .= x * u by Def25,A4;
      hence thesis;
    end;
    hence thesis;
  end;
  A6: for g,h being Permutation of Q st P[g] & P[h] holds P[g*h]
  proof
    let g,h be Permutation of Q;
    assume A7: P[g] & P[h];
    consider u such that
    A8: u in H & for x holds g.x = x * u by A7;
    consider v such that
    A9: v in H & for x holds h.x = x * v by A7;
    take (v * u);
    u in [#] (lp (Cent Q)) & v in [#] (lp (Cent Q)) by Th25,A8,A9;
    then v * u in [#] (lp (Cent Q)) by Th37;
    hence v * u in H by Th25;
    u in Nucl Q by A8,XBOOLE_0:def 4;
    then A10: u in Nucl_r Q by Th12;
    let x;
    (g*h).x = g.(h.x) by FUNCT_2:15
    .= g.(x * v) by A9
    .= (x * v) * u by A8
    .= x * (v * u) by A10,Def24;
    hence thesis;
  end;
  A11: for g being Permutation of Q st P[g] holds P[g"]
  proof
    let g be Permutation of  Q;
    assume P[g];
    then consider v such that
    A12: v in H & for x holds g.x = x * v;
    v in Nucl Q by A12,XBOOLE_0:def 4;
    then A13: v in Nucl_m Q by Th12;
    P[g"]
    proof
      take (v \ 1.Q);
      A14: 1.Q in [#] (lp (Cent Q)) by Th50;
      v in [#] (lp (Cent Q)) by Th25,A12;
      then v \ 1.Q in [#] (lp (Cent Q)) by Th39,A14;
      hence v \ 1.Q in Cent Q by Th25;
      let x;
      reconsider h = (curry' (the multF of Q)).(v \ 1.Q)
      as Permutation of Q by Th31;
      for y holds (h*g).y = (id Q).y
      proof
        let y;
        (h*g).y = h.(g.y) by FUNCT_2:15
        .= h.(y * v) by A12
        .= (y * v) * (v \ 1.Q) by FUNCT_5:70
        .= y * (v * (v \ 1.Q)) by Def23,A13
        .= y;
        hence thesis;
      end;
      then (g").x = h.x by FUNCT_2:60,def 8
      .= x * (v \ 1.Q) by FUNCT_5:70;
      hence thesis;
    end;
    hence thesis;
  end;
  for f being Function of Q,Q st f in Mlt H holds P[f]
    from MltInd(A1,A2,A6,A11);
  hence thesis;
end;
