reserve x,y for set;
reserve C,C9,D,D9,E for non empty set;
reserve c for Element of C;
reserve c9 for Element of C9;
reserve d,d1,d2,d3,d4,e for Element of D;
reserve d9 for Element of D9;
reserve i,j for natural Number;
reserve F for Function of [:D,D9:],E;
reserve p,q for FinSequence of D,
  p9,q9 for FinSequence of D9;
reserve f,f9 for Function of C,D,
  h for Function of D,E;
reserve T,T1,T2,T3 for Tuple of i,D;
reserve T9 for Tuple of i, D9;
reserve S for Tuple of j, D;
reserve S9 for Tuple of j, D9;
reserve F,G for BinOp of D;
reserve u for UnOp of D;
reserve H for BinOp of E;

theorem Th71:
  F is having_a_unity & F is associative & F is having_an_inverseOp
  implies F.:(f,(the_inverseOp_wrt F)*f) = C-->the_unity_wrt F &
  F.:((the_inverseOp_wrt F)*f,f) = C-->the_unity_wrt F
proof
  set u = the_inverseOp_wrt F;
  reconsider g = C-->the_unity_wrt F as Function of C,D;
  assume
A1: F is having_a_unity & F is associative & F is having_an_inverseOp;
  now
    let c;
    thus (F.:(f,u*f)).c = F.(f.c,(u*f).c) by FUNCOP_1:37
      .= F.(f.c,u.(f.c)) by FUNCT_2:15
      .= the_unity_wrt F by A1,Th59
      .= g.c;
  end;
  hence F.:(f,(the_inverseOp_wrt F)*f) = C-->the_unity_wrt F by FUNCT_2:63;
  now
    let c;
    thus (F.:(u*f,f)).c = F.((u*f).c,f.c) by FUNCOP_1:37
      .= F.(u.(f.c),f.c) by FUNCT_2:15
      .= the_unity_wrt F by A1,Th59
      .= g.c;
  end;
  hence thesis by FUNCT_2:63;
end;
