 reserve n for Nat;

theorem AxiomA10: :: Axiom A10 -- Axiom of Euclid
  for a,b,c,d,t being Element of TarskiEuclid2Space st
    between a,d,t & between b,d,c & a <> d holds
      ex x,y being Element of TarskiEuclid2Space st
        between a,b,x & between a,c,y & between x,t,y
  proof
    let a,b,c,d,t be Element of TarskiEuclid2Space;
    assume that
A1: between a,d,t and
A2: between b,d,c and
A3: a <> d;
G0: Tn2TR d in LSeg(Tn2TR a, Tn2TR t ) by A1,ThConv6;
    set v = Tn2TR a, w = Tn2TR t;
    consider jj being Real such that
G2: 0 <= jj & jj <= 1 & Tn2TR d = (1-jj)*v + jj*w by RLTOPSP1:76,G0;
g1: Tn2TR d - Tn2TR a = (1-jj)*v - v + jj*w by RVSUM_1:15,G2
           .= (1-jj + (-1)) * v + jj*w by RVSUM_1:50
           .= jj*w + (jj * (-1))*v
           .= jj*w + jj * ((-1)*v) by RVSUM_1:49
           .= jj * (w - v) by RVSUM_1:51;
    set jt = 1 / jj;
JJ: jj <> 0
    proof
      assume jj = 0; then
      Tn2TR d - Tn2TR a = 0.TOP-REAL 2 by g1,RLVECT_1:10;
      hence thesis by A3,RLVECT_1:21;
    end;
    set xxx = jt * (Tn2TR b - Tn2TR a) + Tn2TR a;
ww: the MetrStruct of TarskiEuclid2Space = the MetrStruct of Euclid 2 by
      GTARSKI1:def 13; then
    reconsider xx = xxx as Element of TarskiEuclid2Space by EUCLID:22;
    jj * (xxx - Tn2TR a) =
      jj * (jt * (Tn2TR b - Tn2TR a) + (Tn2TR a - Tn2TR a)) by RLVECT_1:28
      .= jj * ((1 / jj) * (Tn2TR b - Tn2TR a) + 0.TOP-REAL 2) by RLVECT_1:15
      .= (jj * (1 / jj)) * (Tn2TR b - Tn2TR a) by RLVECT_1:def 7
      .= 1 * (Tn2TR b - Tn2TR a) by XCMPLX_0:def 7,JJ
      .= Tn2TR b - Tn2TR a by RVSUM_1:52; then
    Tn2TR b in LSeg (Tn2TR a, Tn2TR xx) by G2,ThConvAGI; then
T1: between a,b,xx by ThConv6;
    set yyy = jt * (Tn2TR c - Tn2TR a) + Tn2TR a;
    reconsider yy = yyy as Element of TarskiEuclid2Space by ww,EUCLID:22;
    jj * (yyy - Tn2TR a) = jj * (jt * (Tn2TR c - Tn2TR a) +
      (Tn2TR a - Tn2TR a)) by RLVECT_1:28
      .= jj * (jt * (Tn2TR c - Tn2TR a) + 0.TOP-REAL 2) by RLVECT_1:15
      .= (jj * jt) * (Tn2TR c - Tn2TR a) by RLVECT_1:def 7
      .= 1 * (Tn2TR c - Tn2TR a) by XCMPLX_0:def 7,JJ
      .= (Tn2TR c - Tn2TR a) by RVSUM_1:52; then
    Tn2TR c in LSeg (Tn2TR a, Tn2TR yy) by G2,ThConvAGI; then
T2: between a,c,yy by ThConv6;
    Tn2TR d in LSeg (Tn2TR b, Tn2TR c) by A2,ThConv6; then
    consider kk being Real such that
Y1: 0 <= kk & kk <= 1 & Tn2TR d - Tn2TR b = kk * (Tn2TR c - Tn2TR b)
      by ThConvAG;
    jt * (Tn2TR d - Tn2TR a) = (1 / jj) * jj * (Tn2TR t - Tn2TR a)
      by g1,RLVECT_1:def 7
        .= 1 * (Tn2TR t - Tn2TR a) by JJ,XCMPLX_0:def 7
        .= Tn2TR t - Tn2TR a by RVSUM_1:52; then
w1: jt * (Tn2TR d - Tn2TR a) + Tn2TR a =
      Tn2TR t + (- Tn2TR a + Tn2TR a) by RLVECT_1:def 3
                  .= Tn2TR t + 0.TOP-REAL 2 by RLVECT_1:5;
W2: Tn2TR yy - Tn2TR xx =
      (1 / jj) * (Tn2TR c - Tn2TR a) + Tn2TR a -
        Tn2TR a - (1 / jj) * (Tn2TR b - Tn2TR a)
        by RLVECT_1:27
      .= jt * (Tn2TR c - Tn2TR a) + (Tn2TR a - Tn2TR a) -
        (1 / jj) * (Tn2TR b - Tn2TR a)
        by RLVECT_1:28
      .= jt * (Tn2TR c - Tn2TR a) + 0.TOP-REAL 2 -
        (1 / jj) * (Tn2TR b - Tn2TR a)
        by RLVECT_1:15
      .= jt * ((Tn2TR c - Tn2TR a) - (Tn2TR b - Tn2TR a)) by RLVECT_1:34
      .= jt * (Tn2TR c - Tn2TR b) by ThWW;
    Tn2TR t - Tn2TR xx = jt * (Tn2TR d - Tn2TR a) + Tn2TR a -
      Tn2TR a - (1 / jj) * (Tn2TR b - Tn2TR a)
         by RLVECT_1:27,w1
      .= jt * (Tn2TR d - Tn2TR a) + (Tn2TR a - Tn2TR a) -
        (1 / jj) * (Tn2TR b - Tn2TR a)
         by RLVECT_1:def 3
      .= jt * (Tn2TR d - Tn2TR a) + 0.TOP-REAL 2 - (1 / jj) *
        (Tn2TR b - Tn2TR a) by RLVECT_1:5
      .= jt * ((Tn2TR d - Tn2TR a) - (Tn2TR b - Tn2TR a)) by RLVECT_1:34
      .= jt * (Tn2TR d - Tn2TR b) by ThWW
      .= jt * kk * (Tn2TR c - Tn2TR b) by RLVECT_1:def 7,Y1
      .= kk * (Tn2TR yy - Tn2TR xx) by W2,RLVECT_1:def 7; then
    Tn2TR t in LSeg (Tn2TR xx, Tn2TR yy) by Y1,ThConvAGI; then
    between xx,t,yy by ThConv6;
    hence thesis by T1,T2;
  end;
