> restart:
> Digits:=20:
> dim:=4;
> assume(t>0);
> Thr:=1.0;
> f:=1/2*sum(x[i]^2,i=0..dim-1):
> g:=sum((x[i]-i)^2,i=0..dim-1)-Thr;
> L:=f+lambda*g:
> vars:=seq(x[i],i=0..dim-1),lambda:
> systeme:=seq(diff(L,vars[i]),i=1..dim+1):
> sol:=solve({systeme},{vars}):
> for j from 1 to 2 do
>   res[j]:=subs(sol[j],[seq(vars[i],i=1..dim)]):
> od:
> if sum(res[1][i]^2,i=1..dim) < sum(res[2][i]^2,i=1..dim) then
>   print([1,res[1]]);
> else
>   print([2,res[2]]);
> fi:

                               dim := 4


                              Thr := 1.0


               2             2             2             2
      g := x[0]  + (x[1] - 1)  + (x[2] - 2)  + (x[3] - 3)  - 1.0


  [1, [0., 0.73273875808757561532, 1.4654775161751512306,

        2.1982162742627268459]]

> expand(subs(allvalues(sol),x[5]));

                                 x[5]

> ifactor(3795/23);
> factor(sum(i^2,i=0..N));

                            (3)  (5)  (11)


                         N (N + 1) (2 N + 1)
                         -------------------
                                  6

> sum(i^2,i=0..dim-1);

                                  14

> 
> ss:=allvalues(sol);

                   (t~ - %1) v[1]                 t~ - %1
  ss := {x[1] = - ----------------, lambda = -1/2 -------,
                     /    t~ - %1\                  t~
                  t~ |1 - -------|
                     \      t~   /

                  (t~ - %1) v[3]             (t~ - %1) v[2]
        x[3] = - ----------------, x[2] = - ----------------,
                    /    t~ - %1\              /    t~ - %1\
                 t~ |1 - -------|           t~ |1 - -------|
                    \      t~   /              \      t~   /

                  (t~ - %1) v[0]                   t~ + %1
        x[0] = - ----------------}, {lambda = -1/2 -------,
                    /    t~ - %1\                    t~
                 t~ |1 - -------|
                    \      t~   /

                  (t~ + %1) v[3]             (t~ + %1) v[2]
        x[3] = - ----------------, x[2] = - ----------------,
                    /    t~ + %1\              /    t~ + %1\
                 t~ |1 - -------|           t~ |1 - -------|
                    \      t~   /              \      t~   /

                  (t~ + %1) v[1]             (t~ + %1) v[0]
        x[1] = - ----------------, x[0] = - ----------------}
                    /    t~ + %1\              /    t~ + %1\
                 t~ |1 - -------|           t~ |1 - -------|
                    \      t~   /              \      t~   /

                2          2          2          2 1/2
  %1 := (t~ v[0]  + t~ v[1]  + t~ v[2]  + t~ v[3] )

> factor(subs(ss[1],x[1]));
> factor(subs(ss[2],x[1]));

                         2       2       2       2  1/2
          (t~ - (t~ (v[0]  + v[1]  + v[2]  + v[3] ))   ) v[1]
        - ---------------------------------------------------
                         2       2       2       2  1/2
                (t~ (v[0]  + v[1]  + v[2]  + v[3] ))


                        2       2       2       2  1/2
         (t~ + (t~ (v[0]  + v[1]  + v[2]  + v[3] ))   ) v[1]
         ---------------------------------------------------
                        2       2       2       2  1/2
               (t~ (v[0]  + v[1]  + v[2]  + v[3] ))

> 
