function [Aeq,Beq] = permdif(m,n) %global PERMS %PERMS = generate_perms(n); mn = m^n; L = mn; Aeq = zeros(0,mn); Beq = zeros(0,1); MN = repmat([m],[1 n]); rind = 0; for ind1 = 1:mn for ind2 = ind1+1:mn x = ind2coord(ind1,MN); y = ind2coord(ind2,MN); if isperm(x,y) rind = rind+1; Aeq(rind,ind1) = +1; Aeq(rind,ind2) = -1; Beq(rind,1) = 0; end end end return function b = isperm(x,y) Ux = getucnt(x,unique(x)); Uy = getucnt(y,unique(y)); b = veq(Ux,Uy); return function Ucnt = getucnt(U,Uniq) Ucnt = zeros(size(Uniq)); for j=1:length(Uniq) Ucnt(j) = length(find(U==Uniq(j))); end return