reserve a,b,r for non unit non zero Real;
reserve X for non empty set,
        x for Tuple of 4,X;
reserve V             for RealLinearSpace,
        A,B,C,P,Q,R,S for Element of V;
reserve x           for Tuple of 4,the carrier of V,
        P9,Q9,R9,S9 for Element of V;

theorem
  x = <* P,Q,R,S *> & P,Q,R,S are_mutually_distinct &
  P,Q,R,S are_collinear implies
  cross-ratio-tuple(pi_3124(x)) = 1 / (1 - cross-ratio-tuple(x)) &
  cross-ratio-tuple(pi_2431(x)) = 1 / (1 - cross-ratio-tuple(x)) &
  cross-ratio-tuple(pi_1342(x)) = 1 / (1 - cross-ratio-tuple(x)) &
  cross-ratio-tuple(pi_4213(x)) = 1 / (1 - cross-ratio-tuple(x))
  proof
    assume that
A1: x = <* P,Q,R,S *> and
A2: P,Q,R,S are_mutually_distinct and
A3: P,Q,R,S are_collinear;
A4: P <> R & P <> S & R <> Q & S <> Q & S <> R & P <> Q
      by A2,ZFMISC_1:def 6;
A7: cross-ratio-tuple(pi_1243(pi_3142(x))) = 1 / cross-ratio-tuple(pi_3142(x))
      by Th39;
    hence cross-ratio-tuple(pi_3124(x)) = 1 / (1 - cross-ratio-tuple(x))
      by A2,A3,A1,Th41;
A8: pi_3124(x) = <* R,P,Q,S *> & R,P,Q,S are_collinear by A3,A1;
    now
      thus cross-ratio-tuple(pi_3412(pi_3124(x)))
        = cross-ratio-tuple(pi_3124(x)) by A8,Th37,A4
       .= 1 / (1 - cross-ratio-tuple(x)) by A3,A7,A1,A2,Th41;
      thus cross-ratio-tuple(pi_2143(pi_3124(x)))
        = cross-ratio-tuple(pi_3124(x)) by A8,A4,Th38
       .= 1 / (1 - cross-ratio-tuple(x))
         by A3,A7,A1,A2,Th41;
      thus cross-ratio-tuple(pi_4321(pi_3124(x)))
        = cross-ratio-tuple(pi_3124(x)) by A4,A8,Th38
       .= 1 / (1 - cross-ratio-tuple(x)) by A3,A7,A1,A2,Th41;
    end;
    hence thesis;
  end;
