reserve k,i for Nat;
reserve D for non empty set;

theorem
  for b being non empty XFinSequence of REAL,m being Nat st b.0 is Nat &
len b=m & b.0 < m holds (ex c being XFinSequence of REAL st m vector_minus_prg
  c,b)& for c being non empty XFinSequence of REAL st m vector_minus_prg c,b
  holds (XFS2FS*(c))= -(XFS2FS*(b))
proof
  let b be non empty XFinSequence of REAL,m be Nat;
  assume that
A1: b.0 is Nat and
A2: len b=m and
A3: b.0 < m;
  reconsider k= b.0 as Nat by A1;
  reconsider c2= -(XFS2FS*(b)) as FinSequence of REAL;
  dom( -(XFS2FS*(b))) = dom (XFS2FS*(b)) by VALUED_1:8;
  then
A4: Seg len ( -(XFS2FS*(b)))= dom (XFS2FS*(b)) by FINSEQ_1:def 3;
A5: b.0 in Segm m by A1,A3,NAT_1:44;
  then len (XFS2FS*(b)) = b.0 by A2,AFINSQ_1:def 11;
  then
A6: len c2 =k by A4,FINSEQ_1:def 3;
  then consider p being XFinSequence of REAL such that
A7: len p=m and
A8: p is_an_xrep_of c2 by A3,Th2,NUMBERS:19;
  reconsider b0 = b.0 as Element of REAL by XREAL_0:def 1;
  reconsider p2=Replace(p,0,b0) as XFinSequence of REAL;
A9: k<>0 implies for i being Nat st 1<=i & i<=k holds p2.i= -(b.i)
  proof
    assume k<>0;
    let i be Nat;
    assume that
A10: 1<=i and
A11: i<=k;
    (XFS2FS*(b)).i= b.i by A2,A5,A10,A11,AFINSQ_1:def 11;
    then
A12: ( -(XFS2FS*(b))).i = -(b.i) by RVSUM_1:17;
    i in NAT & p.i=c2.i by A6,A8,A10,A11,ORDINAL1:def 12;
    hence thesis by A10,A12,AFINSQ_1:44;
  end;
  len p=len p2 & p2.0=b.0 by A1,A3,A7,AFINSQ_1:44;
  then m vector_minus_prg p2,b by A2,A7,A9;
  hence ex c being XFinSequence of REAL st m vector_minus_prg c,b;
A13: 0 < len b;
  thus for c being non empty XFinSequence of REAL st m vector_minus_prg c,b
  holds (XFS2FS*(c))= -(XFS2FS*(b))
  proof
    let c be non empty XFinSequence of REAL;
    assume
A14: m vector_minus_prg c,b;
    then consider n being Integer such that
A15: c.0=b.0 and
A16: n=b.0 and
A17: n<>0 implies for i being Nat st 1<=i & i<=n holds c.i= -(b.i);
A18: len c =m & ex n being Integer st c.0=b.0 & n=b.0 & (n<>0 implies for
    i being Nat st 1<=i & i<=n holds c.i= -(b.i)) by A14;
    then
A19: len (XFS2FS*(c)) = (c.0) by A5,AFINSQ_1:def 11;
    now
      per cases;
      case
A20:    n=0;
        then (XFS2FS*(b))=<*>REAL by A13,A16,AFINSQ_1:64;
        hence thesis by A18,A16,A20,AFINSQ_1:64,RVSUM_1:19;
      end;
      case
        n<>0;
        set p3=(XFS2FS*(c));
        for k3 being Nat st 1 <=k3 & k3 <= len p3 holds p3.k3=c2.k3
        proof
          let k3 be Nat;
A21:      (c.0) in len c by A1,A3,A18,AFINSQ_1:86;
          then
A22:      len p3=n by A15,A16,AFINSQ_1:def 11,A1;
          assume
A23:      1 <=k3 & k3 <= len p3;
          then
A24:      b.k3 = (XFS2FS*b).k3 by A2,A5,A16,A22,AFINSQ_1:def 11;
          p3.k3=c.k3 by A15,A16,A23,A21,A22,AFINSQ_1:def 11
            .= -(b.k3) by A17,A23,A22;
          hence thesis by A24,RVSUM_1:17;
        end;
        hence thesis by A6,A15,A19,FINSEQ_1:14;
      end;
    end;
    hence thesis;
  end;
end;
