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

theorem Th21:
  for x,y,z being Element of [:REAL,REAL:] holds taxi_dist2.(x,z)
  <= taxi_dist2.(x,y) + taxi_dist2.(y,z)
proof
  let x,y,z be Element of [:REAL,REAL:];
  reconsider x1 = x`1, x2 = x`2, y1 = y`1, y2 = y`2, z1 = z`1, z2 = z`2 as
  Element of REAL;
A1: y = [y1,y2];
  set d5 = real_dist.(x2,y2), d6 = real_dist.(y2,z2);
  set d3 = real_dist.(y1,z1), d4 = real_dist.(x2,z2);
  set d1 = real_dist.(x1,z1), d2 = real_dist.(x1,y1);
A2: z = [z1,z2];
A3: x = [x1,x2];
  then
A4: taxi_dist2.(x,z) = d1 + d4 by A2,Def16;
A5: d1 <= d2 + d3 & d4 <= d5 + d6 by METRIC_1:10;
  (d2 + d3) + (d5 + d6) = (d2 + d5) + (d3 + d6)
    .= taxi_dist2.(x,y) + (d3 +d6) by A3,A1,Def16
    .= taxi_dist2.(x,y) + taxi_dist2.(y,z) by A1,A2,Def16;
  hence thesis by A5,A4,XREAL_1:7;
end;
