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

theorem Th30:
  (curry (the multF of Q)).u is Permutation of Q
proof
  set f = curry (the multF of Q).u;
  deffunc G(Element of Q) = u \ $1;
  consider g be Function of Q,Q such that
  A1: for x being Element of Q holds g.x = G(x) from FUNCT_2:sch 4;
  for x being Element of Q holds (g*f).x = (id Q).x
  proof
    let x be Element of Q;
    (g * f).x = g.(f.x) by FUNCT_2:15
    .= g.(u * x) by FUNCT_5:69
    .= G(u * x) by A1
    .= (id Q).x;
    hence thesis;
  end;
  then A2: g * f = id Q by FUNCT_2:def 8;
  A3: for x being Element of Q holds (f*g).x = (id Q).x
  proof
    let x be Element of Q;
    (f * g).x = f.(g.x) by FUNCT_2:15
    .= u * g.x by FUNCT_5:69
    .= u * G(x) by A1
    .= id Q.x;
    hence thesis;
  end;
  rng f = the carrier of Q by A3,FUNCT_2:18,def 8;
  hence thesis by FUNCT_2:57,A2, FUNCT_2:31;
end;
