print(`Version of june 29, 1995`): print(`This is LUC, a small Maple package that computes the Jack poly.`): print(`In terms of the monomial symmetric functions m[lambda]`): print(`according to an amazing explicit formula derived by Luc Vinet`): print(`and his student Luc Lapointe.`): print(`Their amazing formula immediately implies a weak form`): print(`of Stanley's conjecture 8.1, i.e. that they are polynomials`): print(`in the parameter alpha (here denoted by b)`): print(`To use it just type jacklv([partition]).`): print(`For example jacklv([2,1,1]) `): with(combinat): dunkl:=proc(f,N,i) local j,gu: gu:=diff(f,z[i]): for j from 1 to N do if j<>i then gu:=gu+ b*normal((f-subs({z[i]=z[j],z[j]=z[i]},f) )/(z[i]-z[j])): fi: od: gu: end: Dv:=proc(f,N,i): normal(z[i]*dunkl(f,N,i)): end: Dmv:=proc(f,N,J) local gu,r,lis: lis:=sort(J): gu:=f: for r from nops(lis) by -1 to 1 do gu:=Dv(gu,N,op(r,lis))+r*b*gu: od: gu:=expand(gu): end: B:=proc(f,N,i) local gu,lisg,r,lis,mono,i1: lisg:=choose(N,i): gu:=0: for r from 1 to nops(lisg) do lis:=op(r,lisg): mono:=product(z[op(i1,lis)],i1=1..i): gu:=gu+mono*Dmv(f,N,lis): od: expand(gu): end: vinet:=proc(N,lambda) local gu,r,lu: gu:=1: lu:=sum(op(r,lambda),r=1..nops(lambda)): for i from 1 to nops(lambda)-1 do for r from 1 to op(i,lambda)-op(i+1,lambda) do gu:=B(gu,N,i): od: od: for r from 1 to op(nops(lambda),lambda) do gu:=B(gu,N,nops(lambda)): od: expand(b^lu*subs(b=1/b,gu)): end: mek:=proc(gu,mu) local i,N,coe: N:=nops(mu): coe:=gu: for i from 1 to N do coe:=coeff(coe,z[i],op(i,mu)): od: factor(coe): end: jacklv:=proc(lambda) local lu,gu,resh,i,mu,n,N,m: N:=nops(lambda): n:=convert(lambda,`+`): resh:=partition(n): gu:=vinet(n,lambda): lu:=0: for i from 1 to nops(resh) do mu:=op(i,resh): lu:=lu+mek(gu,mu)*m[mu]: od: lu: end: