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
  ProjectiveSpace TOP-REAL 3 is CollProjectivePlane
  proof
    set PTR3 = ProjectiveSpace TOP-REAL 3;
    ex u,v,w1 being Element of TOP-REAL 3 st for a,b,c be Real st
    a * u + b * v + c * w1 = 0.TOP-REAL 3 holds a = 0 & b = 0 & c = 0
    proof
      reconsider u = <e1>, v = <e2>, w = <e3> as Element of TOP-REAL 3
        by EUCLID:22;
      take u,v,w;
      now
        let a,b,c be Real;
        assume a * <e1> + b * <e2> + c * <e3> = 0.TOP-REAL 3; then
A1:     |[a,b,c]| = |[0,0,0]| by EUCLID_5:4,EUCLID_8:39;
        |[a,b,c]|`1 = a & |[a,b,c]|`2 = b & |[a,b,c]|`3 = c by EUCLID_5:2;
        hence a = 0 & b = 0 & c = 0 by A1,EUCLID_5:2;
      end;
      hence thesis;
    end;
    then TOP-REAL 3 is up-3-dimensional by ANPROJ_2:def 6;
    then reconsider PTR3 as CollProjectiveSpace;
    for p,p1,q,q1 be Element of PTR3 ex r being Element of PTR3 st
      p,p1,r are_collinear & q,q1,r are_collinear
    proof
      let p,p1,q,q1 be Element of PTR3;
      consider up be Element of TOP-REAL 3 such that
A2:   up is not zero and
A3:   p = Dir(up) by ANPROJ_1:26;
      consider up1 be Element of TOP-REAL 3 such that
A4:   up1 is not zero and
A5:   p1 = Dir(up1) by ANPROJ_1:26;
       consider uq be Element of TOP-REAL 3 such that
A6:   uq is not zero and
A7:   q = Dir(uq) by ANPROJ_1:26;
      consider uq1 be Element of TOP-REAL 3 such that
A8:   uq1 is not zero and
A9:   q1 = Dir(uq1) by ANPROJ_1:26;
      ex r being Element of PTR3 st p,p1,r are_collinear & q,q1,r are_collinear
      proof
        set w = (up <X> up1) <X> (uq <X> uq1);
        per cases;
        suppose w is zero;
          then per cases by A4,A6,A8,A2,Th44;
          suppose are_Prop up,up1;
            then
A10:        p = p1 by A3,A5,A2,A4,ANPROJ_1:22;
            take q;
            thus p,p1,q are_collinear by A10,COLLSP:2;
            thus q,q1,q are_collinear by COLLSP:2;
          end;
          suppose are_Prop uq,uq1;
            then
A11:        q = q1 by A6,A7,A8,A9,ANPROJ_1:22;
            take p;
            thus p,p1,p are_collinear by COLLSP:2;
            thus q,q1,p are_collinear by A11,COLLSP:2;
          end;
          suppose
A12:        are_Prop up <X> up1,uq <X> uq1;
            then consider a be Real such that
            a <> 0 and
A13:        uq <X> uq1 = a * (up <X> up1) by ANPROJ_1:1;
            per cases;
            suppose up <X> up1 is zero;
              then are_Prop up,up1 by A2,A4,Th43; then
A14:          p = p1 by A3,A5,A2,A4,ANPROJ_1:22;
              take q;
              thus p,p1,q are_collinear by A14,COLLSP:2;
              thus q,q1,q are_collinear by COLLSP:2;
            end;
            suppose
A15:          up <X> up1 is not zero;
A16:          uq <X> uq1 is not zero
              proof
                assume
A17:            uq <X> uq1 is zero;
                consider a be Real such that
A18:            a <> 0 and
A19:            uq <X> uq1 = a * (up <X> up1) by A12,ANPROJ_1:1;
                set r1 = (up <X> up1)`1,r2 = (up <X> up1)`2,r3=(up <X> up1)`3;
                |[a * r1,a * r2,a * r3]| = a * |[r1,r2,r3]| by EUCLID_5:8
                                        .= |[0,0,0]|
                  by A19,A17,EUCLID_5:3,EUCLID_5:4;
                then a * r1 = 0 & a * r2 = 0 & a * r3 = 0 by FINSEQ_1:78;
                then r1 = 0 & r2 = 0 & r3 = 0 by A18,XCMPLX_1:6;
                hence thesis by A15,EUCLID_5:3,EUCLID_5:4;
              end;
              reconsider r = Dir up as Element of PTR3 by A2,ANPROJ_1:26;
              take r;
              |{up,up1,up}| = 0 by EUCLID_5:31;
              hence p,p1,r are_collinear by A2,A3,A4,A5,Th37,ANPROJ_2:23;
              now
                thus uq <X> uq1 is non zero by A16;
                thus |(uq <X> uq1,uq)| = |{uq,uq,uq1}| by EUCLID_5:def 5
                                      .= 0 by EUCLID_5:31;
                thus |(uq <X> uq1,uq1)| = |{uq1,uq,uq1}| by EUCLID_5:def 5
                                       .= 0 by EUCLID_5:31;
                reconsider rp1 = up <X> up1, rp = up as Element of REAL 3
                  by EUCLID:22;
A20:            a * |(up <X> up1,up)| = |(a * rp1,rp)|
                  by EUCLID_8:68
                                     .= |(a * (up <X> up1),up)|;
                |(up <X> up1,up)| = |{up,up,up1}| by EUCLID_5:def 5
                                 .= 0 by EUCLID_5:31;
                hence |(uq <X> uq1,up)| = 0 by A20,A13;
              end;
              then |{uq,uq1,up}| = 0 by Th47;
              hence q,q1,r are_collinear by A2,A6,A7,A8,A9,Th37,ANPROJ_2:23;
            end;
          end;
        end;
        suppose
A21:      w is not zero;
          then reconsider r = Dir w as Element of PTR3 by ANPROJ_1:26;
          take r;
          thus p,p1,r are_collinear by A2,A3,A4,A5,A21,Th41,ANPROJ_2:23;
          thus q,q1,r are_collinear by A6,A7,A8,A9,A21,Th41,ANPROJ_2:23;
        end;
      end;
      hence thesis;
    end;
    hence thesis by ANPROJ_2:def 14;
  end;
