reserve x for Real;
reserve p,q for Point of TOP-REAL 2;

theorem Th28:
  for p holds (p=0.TOP-REAL 2 implies Sq_Circ".p=0.TOP-REAL 2) & (
  (p`2<=p`1 & -p`1<=p`2 or p`2>=p`1 & p`2<=-p`1) & p<>0.TOP-REAL 2 implies
Sq_Circ".p=|[p`1*sqrt(1+(p`2/p`1)^2),p`2*sqrt(1+(p`2/p`1)^2)]|)& (not(p`2<=p`1
& -p`1<=p`2 or p`2>=p`1 & p`2<=-p`1) implies Sq_Circ".p=|[p`1*sqrt(1+(p`1/p`2)
  ^2),p`2*sqrt(1+(p`1/p`2)^2)]|)
proof
  let p;
  set q=p;
  set px=|[q`1*sqrt(1+(q`1/q`2)^2),q`2*sqrt(1+(q`1/q`2)^2)]|;
A1: px`2 = q`2*sqrt(1+(q`1/q`2)^2) by EUCLID:52;
A2: dom Sq_Circ=the carrier of TOP-REAL 2 by FUNCT_2:def 1;
  hereby
    assume
A3: p=0.TOP-REAL 2;
    then Sq_Circ.p=p by Def1;
    hence Sq_Circ".p=0.TOP-REAL 2 by A2,A3,FUNCT_1:34;
  end;
  hereby
A4: dom Sq_Circ=the carrier of TOP-REAL 2 by FUNCT_2:def 1;
    set q=p;
    assume that
A5: p`2<=p`1 & -p`1<=p`2 or p`2>=p`1 & p`2<=-p`1 and
A6: p<>0.TOP-REAL 2;
    set px=|[q`1*sqrt(1+(q`2/q`1)^2),q`2*sqrt(1+(q`2/q`1)^2)]|;
A7: px`1 = q`1*sqrt(1+(q`2/q`1)^2) by EUCLID:52;
A8: sqrt(1+(q`2/q`1)^2)>0 by Lm1,SQUARE_1:25;
A9: px`2 = q`2*sqrt(1+(q`2/q`1)^2) by EUCLID:52;
    then
A10: px`2/px`1=q`2/q`1 by A7,A8,XCMPLX_1:91;
    then
A11: px`2/sqrt(1+(px`2/px`1)^2)=q`2 by A9,A8,XCMPLX_1:89;
A12: now
      assume px`1=0 & px`2=0;
      then q`1=0 & q`2=0 by A7,A9,A8,XCMPLX_1:6;
      hence contradiction by A6,EUCLID:53,54;
    end;
    q`2<=q`1 & -q`1<=q`2 or q`2>=q`1 & q`2*sqrt(1+(q`2/q`1)^2) <= (-q`1)*
    sqrt(1+(q`2/q`1)^2) by A5,A8,XREAL_1:64;
    then q`2<=q`1 & (-q`1)*sqrt(1+(q`2/q`1)^2) <= q`2*sqrt(1+(q`2/q`1)^2) or
    px`2>=px`1 & px`2<=-px`1 by A7,A9,A8,XREAL_1:64;
    then q`2*sqrt(1+(q`2/q`1)^2) <= q`1*sqrt(1+(q`2/q`1)^2) & -px`1<=px`2 or
    px`2>=px`1 & px`2<=-px`1 by A7,A8,EUCLID:52,XREAL_1:64;
    then
A13: Sq_Circ.px=|[px`1/sqrt(1+(px`2/px`1)^2),px`2/sqrt(1+(px`2/px`1)^2 )
    ]| by A7,A9,A12,Def1,JGRAPH_2:3;
    px`1/sqrt(1+(px`2/px`1)^2)=q`1 by A7,A8,A10,XCMPLX_1:89;
    then q=Sq_Circ.px by A13,A11,EUCLID:53;
    hence (Sq_Circ").p=|[p`1*sqrt(1+(p`2/p`1)^2),p`2*sqrt(1+(p`2/p`1)^2)]| by
A4,FUNCT_1:34;
  end;
A14: dom Sq_Circ=the carrier of TOP-REAL 2 by FUNCT_2:def 1;
A15: sqrt(1+(q`1/q`2)^2)>0 by Lm1,SQUARE_1:25;
A16: px`1 = q`1*sqrt(1+(q`1/q`2)^2) by EUCLID:52;
  then
A17: px`1/px`2=q`1/q`2 by A1,A15,XCMPLX_1:91;
  then
A18: px`1/sqrt(1+(px`1/px`2)^2)=q`1 by A16,A15,XCMPLX_1:89;
  assume
A19: not(p`2<=p`1 & -p`1<=p`2 or p`2>=p`1 & p`2<=-p`1);
A20: now
    assume that
A21: px`2=0 and
    px`1=0;
    q`2=0 by A1,A15,A21,XCMPLX_1:6;
    hence contradiction by A19;
  end;
  p`1<=p`2 & -p`2<=p`1 or p`1>=p`2 & p`1<=-p`2 by A19,JGRAPH_2:13;
  then q`1<=q`2 & -q`2<=q`1 or q`1>=q`2 & q`1*sqrt(1+(q`1/q`2)^2) <= (-q`2)*
  sqrt(1+(q`1/q`2)^2) by A15,XREAL_1:64;
  then q`1<=q`2 & (-q`2)*sqrt(1+(q`1/q`2)^2) <= q`1*sqrt(1+(q`1/q`2)^2) or px
  `1>=px`2 & px`1<=-px`2 by A1,A16,A15,XREAL_1:64;
  then q`1*sqrt(1+(q`1/q`2)^2) <= q`2*sqrt(1+(q`1/q`2)^2) & -px`2<=px`1 or px
  `1>=px`2 & px`1<=-px`2 by A1,A15,EUCLID:52,XREAL_1:64;
  then
A22: Sq_Circ.px=|[px`1/sqrt(1+(px`1/px`2)^2),px`2/sqrt(1+(px`1/px`2)^2) ]|
  by A1,A16,A20,Th4,JGRAPH_2:3;
  px`2/sqrt(1+(px`1/px`2)^2)=q`2 by A1,A15,A17,XCMPLX_1:89;
  then q=Sq_Circ.px by A22,A18,EUCLID:53;
  hence thesis by A14,FUNCT_1:34;
end;
