theorem Th64:
  F is having_a_unity & F is associative & F is having_an_inverseOp &
  (F.(d,d1) = F.(d,d2) or F.(d1,d) = F.(d2,d)) implies d1 = d2
proof
  assume that
A1: F is having_a_unity and
A2: F is associative and
A3: F is having_an_inverseOp and
A4: F.(d,d1) = F.(d,d2) or F.(d1,d) = F.(d2,d);
  set e = the_unity_wrt F, u = the_inverseOp_wrt F;
  per cases by A4;
  suppose
A5: F.(d,d1) = F.(d,d2);
    thus d1 = F.(e,d1) by A1,SETWISEO:15
      .= F.(F.(u.d,d),d1) by A1,A2,A3,Th59
      .= F.(u.d,F.(d,d2)) by A2,A5
      .= F.(F.(u.d,d),d2) by A2
      .= F.(e,d2) by A1,A2,A3,Th59
      .= d2 by A1,SETWISEO:15;
  end;
  suppose
A6: F.(d1,d) = F.(d2,d);
    thus d1 = F.(d1,e) by A1,SETWISEO:15
      .= F.(d1,F.(d,u.d)) by A1,A2,A3,Th59
      .= F.(F.(d2,d),u.d) by A2,A6
      .= F.(d2,F.(d,u.d)) by A2
      .= F.(d2,e) by A1,A2,A3,Th59
      .= d2 by A1,SETWISEO:15;
  end;
end;
