reserve x for set;
reserve i,j for Integer;
reserve n,n1,n2,n3 for Nat;
reserve K,K1,K2,K3 for Field;
reserve SK1,SK2 for Subfield of K;
reserve ek,ek1,ek2 for Element of K;
reserve p for Prime;
reserve a,b,c for Element of GF(p);
reserve F for FinSequence of GF(p);
reserve Px,Py,Pz for Element of GF(p);

theorem Th50:
  for p be Prime, a, b be Element of GF(p), x be set st
  p > 3 & Disc(a,b,p) <> 0.GF(p)
  & x in Class (R_EllCur(a,b,p)) holds
  ( ex P be Element of ProjCo(GF(p)) st P in EC_SetProjCo(a,b,p) & P=[0,1,0]
  & x = Class(R_EllCur(a,b,p),P) ) or
  ex P be Element of ProjCo(GF(p)), X,Y be Element of GF(p)
  st P in EC_SetProjCo(a,b,p) & P=[X,Y,1]
  & x = Class(R_EllCur(a,b,p),P)
  proof
    let p be Prime, a, b be Element of GF(p), x be set;
    assume A1: p > 3 & Disc(a,b,p) <> 0.GF(p)
    & x in Class (R_EllCur(a,b,p)); then
    consider y0 be Element of EC_SetProjCo(a,b,p) such that
A2: x = Class(R_EllCur(a,b,p),y0) by EQREL_1:36;
    reconsider w=y0 as Element of ProjCo(GF(p));
    per cases;
    suppose w`3_3 = 0; then
      consider y be Element of ProjCo(GF(p)) such that
  A3: y in EC_SetProjCo(a,b,p) & y _EQ_ w
      & y`1_3 = 0 & y`2_3= 1 & y`3_3= 0 by A1,Th49;
      [y,w] in R_EllCur(a,b,p) by A1,Th47,A3; then
      x = Class(R_EllCur(a,b,p),y) by A2,A3,EQREL_1:35;
      hence thesis by A3,AA;
    end;
    suppose w`3_3 <> 0; then
      consider y be Element of ProjCo(GF(p)) such that
      A4: y in EC_SetProjCo(a,b,p) & y _EQ_ w & y`3_3 = 1 by A1,Th48;
      set e=y`1_3;
      set f=y`2_3;
      A5: y = [e,f,1] by A4,AA;
      [y,w] in R_EllCur(a,b,p) by A1,Th47,A4; then
      x = Class(R_EllCur(a,b,p),y) by A2,A4,EQREL_1:35;
      hence thesis by A5,A4;
    end;
  end;
