reserve a,b,c,d,e,f for Real,
        k,m for Nat,
        D for non empty set,
        V for non trivial RealLinearSpace,
        u,v,w for Element of V,
        p,q,r for Element of ProjectiveSpace(V);
reserve o,p,q,r,s,t for Point of TOP-REAL 3,
        M for Matrix of 3,F_Real;

theorem Th43:
  p is not zero & q is not zero &
  p <X> q = 0.TOP-REAL 3 implies are_Prop p,q
  proof
    assume that
A1: p is not zero and
A2: q is not zero and
A3: p <X> q = 0.TOP-REAL 3;
A4: |[ (p`2 * q`3) - (p`3 * q`2) , (p`3 * q`1) - (p`1 * q`3) ,
      (p`1 * q`2) - (p`2 * q`1) ]| = |[0,0,0]|
      by A3,EUCLID_5:def 4,EUCLID_5:4; then
A5: (p`2 * q`3) - (p`3 * q`2) = |[0,0,0]|`1 &
      (p`3 * q`1) - (p`1 * q`3) = |[0,0,0]|`2 &
      (p`1 * q`2) - (p`2 * q`1) = |[0,0,0]|`3 by EUCLID_5:14; then
A6: (p`2 * q`3) - (p`3 * q`2) = 0 & (p`3 * q`1) - (p`1 * q`3) = 0 &
    (p`1 * q`2) - (p`2 * q`1) = 0 by EUCLID_5:14;
    per cases;
    suppose
A7:   p`1 <> 0 & p`2 <> 0 & p`3 <> 0;
A8:   q`1 <> 0 & q`2 <> 0 & q`3 <> 0
      proof
        assume q`1 = 0 or q`2 = 0 or q`3 = 0;
        then per cases;
        suppose
A9:       q`1 = 0; then
A10:      q`3 = 0 by A6,A7,XCMPLX_1:6;
          q`2 = 0 by A9,A6,A7,XCMPLX_1:6;
          hence thesis by A9,A10,EUCLID_5:3,EUCLID_5:4,A2;
        end;
        suppose
A11:      q`2 = 0;
          then p`2 * q`3 = 0 by A5,EUCLID_5:14; then
A12:      q`3 = 0 by A7,XCMPLX_1:6;
          then p`3 * q`1 = 0 by A5,EUCLID_5:14;
          then q`1 = 0 by A7,XCMPLX_1:6;
          hence thesis by A2,A11,A12,EUCLID_5:3,EUCLID_5:4;
        end;
        suppose
A13:      q`3 = 0;
          then p`3 * q`1 = 0 by A5,EUCLID_5:14; then
A14:      q`1 = 0 by A7,XCMPLX_1:6;
          then p`1 * q`2 = 0 by A5,EUCLID_5:14;
          then q`2 = 0 by A7,XCMPLX_1:6;
          hence thesis by A2,A13,A14,EUCLID_5:3,EUCLID_5:4;
        end;
      end;
      reconsider l = p`2 / q`2 as Real;
      p = l * q
      proof
A15:    p`1 = p`3 * q`1 / q`3 by A8,A6,XCMPLX_1:89
           .= (p`3 / q`3)* q`1 by XCMPLX_1:74;
A16:    p`2 = l * q`2 by A8,XCMPLX_1:87;
        p`3 = p`1 * q`3 / q`1 by A8,A6,XCMPLX_1:89
           .= (p`1 / q`1)* q`3 by XCMPLX_1:74; then
A17:    p`3 = l * q`3 by A8,A6,XCMPLX_1:94;
        p = |[p`1,p`2,p`3]| by EUCLID_5:3
         .= |[l*q`1,l*q`2,l*q`3]| by A16,A17,A15,A8,A4,XCMPLX_1:94
         .= l * q by EUCLID_5:7;
        hence thesis;
      end;
      hence thesis by A7,A8,XCMPLX_1:50,ANPROJ_1:1;
    end;
    suppose
A18:  p`1 = 0;
      then per cases by EUCLID_5:3,A1,EUCLID_5:4;
      suppose
A19:    p`2 <> 0;
        then
A20:    q`1 = 0 by A18,A6,XCMPLX_1:6;
A21:    q`2 <> 0
        proof
          assume
A22:      q`2 = 0;
          then p`2 * q`3 = 0 by A5,EUCLID_5:14;
          then q`3 = 0 by A19,XCMPLX_1:6;
          hence thesis by A20,A22,EUCLID_5:3,A2,EUCLID_5:4;
        end;
        set l = p`2 / q`2;
         p = l * q
        proof
          p`3 = p`2 * q`3 / q`2 by A6,A21,XCMPLX_1:89;
          then
A22:      p`3 = l * q`3 by XCMPLX_1:74;
          p = |[p`1,p`2,p`3]| by EUCLID_5:3
           .= |[l*q`1,l*q`2,l*q`3]| by A20,A18,A21,XCMPLX_1:87,A22
           .= l * q by EUCLID_5:7;
          hence thesis;
        end;
        hence thesis by A21,A19,XCMPLX_1:50,ANPROJ_1:1;
      end;
      suppose
A23:    p`3 <> 0;
A24:    q`1 = 0
        proof
          p`3 * q`1 = 0 by A18,A5,EUCLID_5:14;
          hence thesis by A23,XCMPLX_1:6;
        end;
A25:    q`3 <> 0
        proof
          assume
A26:      q`3 = 0;
          then q`2 = 0 by A6,A23,XCMPLX_1:6;
          hence thesis by A24,A26,EUCLID_5:3,A2,EUCLID_5:4;
        end;
        set l = p`3 / q`3;
        p = l * q
        proof
A27:      l * q`2 = p`2 * q`3 / q`3 by A6,XCMPLX_1:74
                 .= p`2 by A25,XCMPLX_1:89;
          p = |[p`1,p`2,p`3]| by EUCLID_5:3
           .= |[l * q`1,l * q`2,l * q`3]| by A24,A18,A27,A25,XCMPLX_1:87
           .= l * q by EUCLID_5:7;
          hence thesis;
        end;
        hence thesis by A23,A25,XCMPLX_1:50,ANPROJ_1:1;
      end;
    end;
    suppose
A28:  p`2 = 0;
      then per cases by A1,EUCLID_5:3,EUCLID_5:4;
      suppose
A29:    p`1 <> 0;
A30:    q`2 = 0
        proof
          p`1 * q`2 = 0 by A28,A5,EUCLID_5:14;
          hence thesis by A29,XCMPLX_1:6;
        end;
A31:    q`1 <> 0
        proof
          assume
A32:      q`1 = 0;
          then q`3 = 0 by A6,A29,XCMPLX_1:6;
          hence thesis by A30,A32,EUCLID_5:3,A2,EUCLID_5:4;
        end;
        set l = p`1 / q`1;
        p = l * q
        proof
          p`3 = p`1 * q`3 / q`1 by A6,A31,XCMPLX_1:89; then
A33:      p`3 = p`1 / q`1 * q`3 by XCMPLX_1:74;
          p = |[p`1,p`2,p`3]| by EUCLID_5:3
           .= |[l*q`1,l*q`2,l*q`3]| by A28,A30,A31,XCMPLX_1:87,A33
           .= l * q by EUCLID_5:7;
          hence thesis;
        end;
        hence thesis by A31,A29,XCMPLX_1:50,ANPROJ_1:1;
      end;
      suppose
A34:    p`3 <> 0;
        then
A35:    q`2 = 0 by A28,A6,XCMPLX_1:6;
A36:    q`3 <> 0
        proof
          assume
A37:      q`3 = 0;
          then p`3 * q`1 = 0 by A5,EUCLID_5:14;
          then q`1 = 0 by A34,XCMPLX_1:6;
          hence thesis by A35,A37,EUCLID_5:3,A2,EUCLID_5:4;
        end;
        set l = p`3 / q`3;
        p = l * q
        proof
A38:      l * q`1 = q`3 * p`1 / q`3 by A6,XCMPLX_1:74
                 .= p`1 by A36,XCMPLX_1:89;
          p = |[p`1,p`2,p`3]| by EUCLID_5:3
           .= |[l * q`1,l * q`2,l * q`3]| by A28,A35,A38,A36,XCMPLX_1:87
           .= l * q by EUCLID_5:7;
          hence thesis;
        end;
        hence thesis by A34,A36,XCMPLX_1:50,ANPROJ_1:1;
      end;
    end;
    suppose
A39:  p`3 = 0;
      then per cases by A1,EUCLID_5:3,EUCLID_5:4;
      suppose
A40:    p`2 <> 0;
A41:    q`3 = 0
        proof
          p`2 * q`3 = 0 by A39,A5,EUCLID_5:14;
          hence thesis by A40,XCMPLX_1:6;
        end;
A42:    q`2 <> 0
        proof
          assume
A43:      q`2 = 0;
          then q`1 = 0 by A6,A40,XCMPLX_1:6;
          hence thesis by A41,A43,EUCLID_5:3,A2,EUCLID_5:4;
        end;
        set l = p`2 / q`2;
        p = l * q
        proof
          p`1 = p`2 * q`1 / q`2 by A6,A42,XCMPLX_1:89; then
A44:      p`1 = l * q`1 by XCMPLX_1:74;
          p = |[p`1,p`2,p`3]| by EUCLID_5:3
           .= |[l*q`1,l*q`2,l*q`3]| by A39,A41,A42,XCMPLX_1:87,A44
           .= l * q by EUCLID_5:7;
          hence thesis;
        end;
        hence thesis by A42,A40,XCMPLX_1:50,ANPROJ_1:1;
      end;
      suppose
A45:    p`1 <> 0;
        then
A46:    q`3 = 0 by A39,A6,XCMPLX_1:6;
A47:    q`1 <> 0
        proof
          assume
A48:      q`1 = 0;
          then p`1 * q`2 = 0 by A5,EUCLID_5:14;
          then q`2 = 0 by A45,XCMPLX_1:6;
          hence thesis by A2,A46,A48,EUCLID_5:3,EUCLID_5:4;
        end;
        set l = p`1 / q`1;
        p = l * q
        proof
A49:      l * q`2 = q`1 * p`2 / q`1 by A6,XCMPLX_1:74
                 .= p`2 by A47,XCMPLX_1:89;
          p = |[p`1,p`2,p`3]| by EUCLID_5:3
           .= |[l * q`1,l * q`2,l * q`3]| by A39,A46,A49,A47,XCMPLX_1:87
           .= l * q by EUCLID_5:7;
          hence thesis;
        end;
        hence thesis by A45,A47,XCMPLX_1:50,ANPROJ_1:1;
      end;
    end;
  end;
