reserve X, Y, Z, W for non empty MetrSpace;
reserve X,Y for non empty MetrSpace;
reserve Z for non empty MetrSpace;

theorem Th17: :::
  for a,b,c,d,e,f being Real holds ((a*c) + (b*d) + (e*f))
  ^2 <= (a^2 + b^2 + e^2)*(c^2 + d^2 + f^2)
proof
  let a,b,c,d,e,f be Real;
  (2*(a*d)*(c*b) + 2*(a*f)*(e*c) + 2*(b*f)*(e*d)) <= (((a*d)^2 + (c*b)^2 +
  (a*f)^2 + (e*c)^2 + (b*f)^2) + (e*d)^2) by Th16;
  then
  (e*f)^2 + ((2*(a*b)*(c*d)) + (2*(a*c)*(e*f)) + (2*(b*d)*(e*f))) <= (((a*
  d)^2 + (c*b)^2 + (a*f)^2 + (e*c)^2 + (b*f)^2) + (e*d)^2) + (e*f)^2 by
XREAL_1:6;
  then
  (b*d)^2 + ((e*f)^2 + ((2*(a*b)*(c*d)) + (2*(a*c)*(e*f)) + (2*(b*d)*(e*f)
))) <= ((((a*d)^2 + (c*b)^2 + (a*f)^2 + (e*c)^2 + (b*f)^2) + (e*d)^2) + (e*f)^2
  ) + (b*d)^2 by XREAL_1:6;
  then
  (a*c)^2 + ((b*d)^2 + ((e*f)^2 + ((2*(a*b)*(c*d)) + (2*(a*c)*(e*f) ) + (2
*(b*d)*(e*f))))) <= (((((a*d)^2 + (c*b)^2 + (a*f)^2 + (e*c)^2 + (b*f) ^2) + (e*
  d)^2) + (e*f)^2) + (b*d)^2) + (a*c)^2 by XREAL_1:6;
  hence thesis;
end;
