reserve r, r1, r2, x, y, z,
        x1, x2, x3, y1, y2, y3 for Real;
reserve R, R1, R2, R3 for Element of 3-tuples_on REAL;
reserve p, q, p1, p2, p3, q1, q2 for Element of REAL 3;
reserve f1, f2, f3, g1, g2, g3, h1, h2, h3 for PartFunc of REAL,REAL;
reserve t, t0, t1, t2 for Real;

theorem
  (r*p1)<X>p2 = r*(p1<X>p2) & (r*p1)<X>p2 = p1<X>(r*p2)
proof
A1: (r*p1)<X>p2 = |[ r*p1.1,r*p1.2,r*p1.3 ]|<X>p2 by Th49
   .= |[ r*p1.1,r*p1.2,r*p1.3 ]|<X>|[ p2.1,p2.2,p2.3 ]|
   .= |[ (r*p1.2*p2.3)-(r*p1.3*p2.2),(r*p1.3*p2.1)-(r*p1.1*p2.3),
      (r*p1.1*p2.2)-(r*p1.2*p2.1) ]|; then
A2: (r*p1)<X>p2 = |[ r*((p1.2*p2.3)-(p1.3*p2.2)),r*((p1.3*p2.1)-(p1.1*p2.3)),
      r*((p1.1*p2.2)-(p1.2*p2.1)) ]|
   .= r*(p1<X>p2) by Th50;
    (r*p1)<X>p2 = |[ p1.2*(r*p2.3)-p1.3*(r*p2.2),p1.3*(r*p2.1)-p1.1*(r*p2.3),
      p1.1*(r*p2.2)-p1.2*(r*p2.1) ]| by A1
   .= |[ p1.1,p1.2,p1.3 ]|<X>|[ r*p2.1,r*p2.2,r*p2.3]|
   .= p1<X>|[ r*p2.1,r*p2.2,r*p2.3 ]|
   .= p1<X>(r*p2) by Th49;
   hence thesis by A2;
end;
