reserve x,X for set,
        r,r1,r2,s for Real,
        i,j,k,m,n for Nat;
reserve p,q for Point of TOP-REAL n;
reserve f,f1,f2 for homogeneous additive Function of TOP-REAL n,TOP-REAL n;

theorem Th30:
  k in X & k in Seg n implies
    ex f st f is X-support-yielding base_rotation &
           (card (X/\Seg n) > 1 implies f.p.k>=0) &
           for i st i in X/\Seg n & i <> k holds f.p.i = 0
proof
  assume that
  A1: k in X and
  A2: k in Seg n;
  set TR=TOP-REAL n;
  defpred P[Nat] means
  $1<=n implies ex f be base_rotation Function of TR,TR st
    f is(X/\Seg$1)\/{k}-support-yielding &
    (card((X/\Seg$1)\/{k})>1 implies f.p.k>=0) &
    for i st i in X/\Seg $1 & i<>k holds f.p.i=0;
  A3: for z be Nat st P[z] holds P[z+1]
  proof
    let z be Nat;
    set z1=z+1;
    assume A4: P[z];
    A5: Seg z1=Seg z\/{z1} by FINSEQ_1:9;
    A6: Seg z1=Seg z\/{z1} by FINSEQ_1:9;
    A7: z1 in X implies ((X/\Seg z)\/{k})\/{z1,k}=(X/\Seg z1)\/{k}
    proof
      assume z1 in X;
      then A8: X\/{z1}=X by ZFMISC_1:40;
      {z1,k}={z1}\/{k} by ENUMSET1:1;
      hence ((X/\Seg z)\/{k})\/{z1,k}=(X/\Seg z)\/({k}\/({k}\/{z1}))
        by XBOOLE_1:4
      .=(X/\Seg z)\/({k}\/{k}\/{z1}) by XBOOLE_1:4
      .=((X/\Seg z)\/{z1})\/{k} by XBOOLE_1:4
      .=(X/\Seg z1)\/{k} by A6,A8,XBOOLE_1:24;
    end;
    assume A9: z1<=n;
    then consider f be base_rotation Function of TR,TR such that
    A10: f is(X/\Seg z)\/{k}-support-yielding and
    A11: card((X/\Seg z)\/{k})>1 implies f.p.k>=0 and
    A12: for m st m in X/\Seg z & m<>k holds f.p.m=0 by A4,NAT_1:13;
    set z1=z+1;
    per cases by XXREAL_0:1;
    suppose A13: z1=k;
      take f;
      Seg z1\/{z1}=Seg z\/({z1}\/{z1}) by A5,XBOOLE_1:4
      .=Seg z\/{z1};
      then A14: (X/\Seg z1)\/{k}=(X\/{k})/\(Seg z\/{k}) by A13,XBOOLE_1:24
      .=(X/\Seg z)\/{k} by XBOOLE_1:24;
      hence f is (X/\Seg z1)\/{k}-support-yielding by A10;
      thus card((X/\Seg z1)\/{k})>1 implies f.p.k>=0 by A11,A14;
      let m;
      assume that
      A15: m in X/\Seg z1 and
      A16: m<>k;
      A17: m in Seg z1 by A15,XBOOLE_0:def 4;
      A18: m in X by A15,XBOOLE_0:def 4;
      not m in {z1} by A13,A16,TARSKI:def 1;
      then m in Seg z by A5,A17,XBOOLE_0:def 3;
      then m in X/\Seg z by A18,XBOOLE_0:def 4;
      hence f.p.m=0 by A12,A16;
    end;
    suppose A19: not z1 in X;
      take f;
      A20: {z1}misses X by A19,ZFMISC_1:50;
      A21: X/\Seg z1=(X/\Seg z)\/(X/\{z1}) by A5,XBOOLE_1:23
      .=(X/\Seg z)\/{} by A20,XBOOLE_0:def 7
      .=X/\Seg z;
      hence f is(X/\Seg z1)\/{k}-support-yielding by A10;
      thus card((X/\Seg z1)\/{k})>1 implies f.p.k>=0 by A11,A21;
      let m;
      assume that
      A22: m in X/\Seg z1 and
      A23: m<>k;
      A24: m in Seg z1 by A22,XBOOLE_0:def 4;
      A25: m in X by A22,XBOOLE_0:def 4;
      then not m in {z1} by A19,TARSKI:def 1;
      then m in Seg z by A5,A24,XBOOLE_0:def 3;
      then m in X/\Seg z by A25,XBOOLE_0:def 4;
      hence f.p.m=0 by A12,A23;
    end;
    suppose A26: z1<k & z1 in X;
      set fp=f.p;
      set S=(fp.z1)^2+(fp.k)^2;
      A27: z1>=1 & k<=n by A2,FINSEQ_1:1,NAT_1:11;
      A28: (fp.k)^2>=0 & (fp.z1)^2>=0 by XREAL_1:63;
      then A29: (sqrt S)^2=S by SQUARE_1:def 2;
      then consider r such that
      A30: (Mx2Tran Rotation(z1,k,n,r)).fp.k=sqrt S by A26,A27,Th25;
      reconsider M=Mx2Tran Rotation(z1,k,n,r) as
      base_rotation Function of TR,TR by A26,A27,Th28;
      take Mf=M*f;
      A31: M is{z1,k}-support-yielding by A26,A27,Th26;
      hence Mf is(X/\Seg z1)\/{k}-support-yielding by A7,A10,A26;
      A32: dom Mf=the carrier of TR by FUNCT_2:52;
      then A33: fp in dom M by FUNCT_1:11;
      A34: Mf.p=M.fp by A32,FUNCT_1:12;
      hence card((X/\Seg z1)\/{k})>1 implies Mf.p.k>=0
        by A28,A30,SQUARE_1:def 2;
      let i;
      assume that
      A35: i in X/\Seg z1 and
      A36: i<>k;
      A37: i in X by A35,XBOOLE_0:def 4;
      i in Seg z1 by A35,XBOOLE_0:def 4;
      then A38: i in Seg z or i in {z1} by A5,XBOOLE_0:def 3;
      per cases by A38,TARSKI:def 1;
      suppose A39: i in Seg z;
        then A40: i in X/\Seg z by A37,XBOOLE_0:def 4;
        i<=z by A39,FINSEQ_1:1;
        then i<z1 by NAT_1:13;
        then not i in {z1,k} by A36,TARSKI:def 2;
        hence Mf.p.i=fp.i by A31,A33,A34
        .=0 by A12,A36,A40;
      end;
      suppose i=z1;
        then A41: (M.fp.i)*(M.fp.i)+S=S by A26,A27,A29,A30,Lm6;
        thus Mf.p.i=M.fp.i by A32,FUNCT_1:12
        .=0 by A41;
      end;
    end;
    suppose A42: z1>k & z1 in X;
      set fp=f.p;
      set S=(fp.z1)^2+(fp.k)^2;
      A43: 1<=k by A2,FINSEQ_1:1;
      A44: (fp.k)^2>=0 & (fp.z1)^2>=0 by XREAL_1:63;
      then A45: (sqrt S)^2=S by SQUARE_1:def 2;
      then consider r such that
      A46: (Mx2Tran Rotation(k,z1,n,r)).fp.k=sqrt S by A9,A42,A43,Th24;
      reconsider M=Mx2Tran Rotation(k,z1,n,r) as
      base_rotation Function of TR,TR by A9,A42,A43,Th28;
      take Mf=M*f;
      A47: M is{k,z1}-support-yielding by A9,A42,A43,Th26;
      hence Mf is(X/\Seg z1)\/{k}-support-yielding by A7,A10,A42;
      A48: dom Mf=the carrier of TR by FUNCT_2:52;
      then A49: Mf.p=M.fp by FUNCT_1:12;
      hence card((X/\Seg z1)\/{k})>1 implies Mf.p.k>=0
        by A44,A46,SQUARE_1:def 2;
      let i;
      assume that
      A50: i in X/\Seg z1 and
      A51: i<>k;
      A52: i in X by A50,XBOOLE_0:def 4;
      i in Seg z1 by A50,XBOOLE_0:def 4;
      then A53: i in Seg z or i in {z1} by A5,XBOOLE_0:def 3;
      per cases by A53,TARSKI:def 1;
      suppose A54: i in Seg z;
        then i<=z by FINSEQ_1:1;
        then i<z1 by NAT_1:13;
        then A55: not i in {z1,k} by A51,TARSKI:def 2;
        A56: i in X/\Seg z by A52,A54,XBOOLE_0:def 4;
        fp in dom M by A48,FUNCT_1:11;
        hence Mf.p.i=fp.i by A47,A49,A55
        .=0 by A12,A51,A56;
      end;
      suppose i=z1;
        then A57: (M.fp.i)*(M.fp.i)+S=S by A9,A42,A43,A45,A46,Lm6;
        thus Mf.p.i=M.fp.i by A48,FUNCT_1:12
        .=0 by A57;
      end;
    end;
  end;
  A58: P[0]
  proof
    assume 0<=n;
    take f=id TR;
    A59: f is{}-support-yielding
    by FUNCT_1:17;
    thus f is(X/\Seg 0)\/{k}-support-yielding by A59;
    thus card((X/\Seg 0)\/{k})>1 implies f.p.k>=0 by CARD_2:42;
    let m;
    assume m in (X/\Seg 0);
    hence thesis;
  end;
  for z be Nat holds P[z] from NAT_1:sch 2(A58,A3);
  then consider f be base_rotation Function of TR,TR such that
  A60: (f is(X/\Seg n)\/{k}-support-yielding) &
       (card((X/\Seg n)\/{k})>1 implies f.p.k>=0) &
       for i st i in X/\Seg n & i<>k holds f.p.i=0;
  take f;
  A61: (X/\Seg n)c=X by XBOOLE_1:17;
  {k}c=X & {k}c=Seg n by A1,A2,ZFMISC_1:31;
  then (X/\Seg n)\/{k}=X/\Seg n by XBOOLE_1:12,19;
  hence thesis by A60,A61;
end;
