A symmetric chain decomposition of L(5,n)

Nine parallel chains of L(5,n)

chain1

In[]:=
chain1[n_,i_,k_,j_,p_]:=Join[​​Table[{p,k,j+k+t,1+i+j+2k,1+i+2j+2k},{t,0,1+i+p}],​​Table[{p,k+t,1+i+j+k+p,1+i+j+2k,1+i+2j+2k},{t,1,1+i+j}],​​Table[{p+t,1+i+j+k,1+i+j+k+p,1+i+j+2k,1+i+2j+2k},{t,1,1+i+k-p}],​​Table[{1+i+k,1+i+j+k,1+i+j+k+p,1+i+j+2k,1+i+2j+2k+t},{t,1,-1-i-2j-3k+n+p}],​​Table[{1+i+k,1+i+j+k,1+i+j+k+p,1+i+j+2k+t,-k+n+p},{t,1,-1-i-j-3k+n}],​​Table[{1+i+k,1+i+j+k,1+i+j+k+p+t,-k+n,-k+n+p},{t,1,-1-i-2j-2k+n-p}],​​Table[{1+i+k,1+i+j+k+t,-j-k+n,-k+n,-k+n+p},{t,1,k-2(1+i+j+2k)+n}],​​Table[{1+i+k+t,-1-i-j-2k+n,-j-k+n,-k+n,-k+n+p},{t,1,k-2(1+i+j+2k)+n}]​​];​​parallelChain1[n_,i_,k_,j_]:=Table[chain1[n,i,k,j,p],{p,0,k}];​​allParallelChain1[n_]:=Flatten[Table[parallelChain1[n,i,k,j],{i,0,Floor[(n-2)/2]},{j,0,Floor[(n-2-2i)/2]},{k,0,Floor[(n-2-2i-2j)/3]}],2];

chain2

In[]:=
chain2[n_,i_,k_,j_,p_]:=Join[​​Table[{k-p,k,j+k,1+i+j+2k,1+i+2j+2k+t},{t,1,k-2(1+i+j+2k)+n}],​​Table[{k-p,k,j+k,1+i+j+2k+t,-1-i-k+n},{t,1,k-2(1+i+j+2k)+n}],​​Table[{k-p,k,j+k+t,-1-i-j-k+n,-1-i-k+n},{t,1,-1-i-2j-2k+n-p}],​​Table[{k-p,k+t,-1-i-j-k+n-p,-1-i-j-k+n,-1-i-k+n},{t,1,-1-i-j-3k+n}],​​Table[{k-p+t,-1-i-j-2k+n,-1-i-j-k+n-p,-1-i-j-k+n,-1-i-k+n},{t,1,-1-i-2j-3k+n+p}],​​Table[{-1-i-2j-2k+n,-1-i-j-2k+n,-1-i-j-k+n-p,-1-i-j-k+n,-1-i-k+n+t},{t,1,1+i+k-p}],​​Table[{-1-i-2j-2k+n,-1-i-j-2k+n,-1-i-j-k+n-p,-1-i-j-k+n+t,n-p},{t,1,1+i+j}],​​Table[{-1-i-2j-2k+n,-1-i-j-2k+n,-1-i-j-k+n-p+t,-k+n,n-p},{t,1,i+p}]​​];​​parallelChain2[n_,i_,k_,j_]:=(Table[chain2[n,i,k,j,p],{p,k,0,-1}]);​​allParallelChain2[n_]:=Flatten[Table[parallelChain2[n,i,k,j],{i,0,Floor[(n-3)/2]},{j,0,Floor[(n-3-2i)/2]},{k,0,Floor[(n-3-2i-2j)/3]}],2];

chain3

In[]:=
chain3[n_,i_,j_,u_,k_,p_]:=Join[​​{{2j,i+2j+p,i+2j+2k+u,2i+4j+2k+u,2i+4j+4k+2u}},​​Apply[Join,Table[{{2j+t,i+2j+p,-1+i+2j+2k+t+u,2i+4j+2k+u,2i+4j+4k+2u},​​{2j+t,i+2j+p,i+2j+2k+t+u,2i+4j+2k+u,2i+4j+4k+2u}},{t,1,i}]],​​Table[{i+2j,i+2j+p,2i+2j+2k+u,2i+4j+2k+u,2i+4j+4k+t+2u},{t,1,-2i-6j-4k+n-2u}],​​Table[{i+2j,i+2j+p,2i+2j+2k+u,2i+4j+2k+t+u,-2j+n},{t,1,-3i-6j-4k+n+p-2u}],​​Table[{i+2j,i+2j+p,2i+2j+2k+t+u,-i-2j-2k+n+p-u,-2j+n},{t,1,-3i-4j-4k+n-2u}],​​Table[{i+2j,i+2j+p+t,-i-2j-2k+n-u,-i-2j-2k+n+p-u,-2j+n},{t,1,-3i-6j-2k+n-p-u}],​​Table[{i+2j+t,-2i-4j-2k+n-u,-i-2j-2k+n-u,-i-2j-2k+n+p-u,-2j+n},{t,1,-3i-6j-4k+n-2u}]​​];​​parallelChain3[n_,i_,j_,u_,k_]:=Table[chain3[n,i,j,u,k,p],{p,0,2k+u}];​​allParallelChain3[n_]:=Flatten[Table[parallelChain3[n,i,j,u,k],{u,0,1},{j,0,Floor[(n-2u-1)/6]},{k,0,Floor[(n-2u-6j-1)/4]},{i,0,Floor[(n-2u-1-6j-4k)/3]}],3];

chain4

In[]:=
chain4[n_,i_,j_,u_,k_,p_]:=Join[Apply[Join,​​Table[{{2j+t,1+i+2j+p,i+2j+2k+t+u,2+2i+4j+2k+u,3+2i+4j+4k+2u},​​{2j+t,1+i+2j+p,1+i+2j+2k+t+u,2+2i+4j+2k+u,3+2i+4j+4k+2u}},{t,1,i}]],​​{{1+i+2j,1+i+2j+p,1+2i+2j+2k+u,2+2i+4j+2k+u,3+2i+4j+4k+2u}},​​Table[{1+i+2j,1+i+2j+p,1+2i+2j+2k+u,2+2i+4j+2k+u,3+2i+4j+4k+t+2u},{t,1,-4-2i-6j-4k+n-2u}],​​Table[{1+i+2j,1+i+2j+p,1+2i+2j+2k+u,2+2i+4j+2k+t+u,-1-2j+n},{t,1,-3-3i-6j-4k+n+p-2u}],​​Table[{1+i+2j,1+i+2j+p,1+2i+2j+2k+t+u,-1-i-2j-2k+n+p-u,-1-2j+n},{t,1,-2-3i-4j-4k+n-2u}],​​Table[{1+i+2j,1+i+2j+p+t,-1-i-2j-2k+n-u,-1-i-2j-2k+n+p-u,-1-2j+n},{t,1,-3-3i-6j-2k+n-p-u}],​​Table[{1+i+2j+t,-2-2i-4j-2k+n-u,-1-i-2j-2k+n-u,-1-i-2j-2k+n+p-u,-1-2j+n},{t,1,-4-3i-6j-4k+n-2u}]​​];​​parallelChain4[n_,i_,j_,u_,k_]:=Table[chain4[n,i,j,u,k,p],{p,0,2k+u}];​​allParallelChain4[n_]:=Flatten[Table[parallelChain4[n,i,j,u,k],{u,0,1},{j,0,Floor[(n-2u-4)/6]},{k,0,Floor[(n-2u-6j-4)/4]},{i,0,Floor[(n-2u-4-6j-4k)/3]}],3];

chain5

In[]:=
chain5[n_,i_,j_,u_,k_,p_]:=Join[​​Table[{2j,1+i+2j+p,1+i+2j+2k+u,2+2i+4j+2k+u,2+2i+4j+4k+t+2u},{t,1,-3-3i-6j-4k+n-2u}],​​Table[{2j,1+i+2j+p,1+i+2j+2k+u,2+2i+4j+2k+t+u,-1-i-2j+n},{t,1,-3-3i-6j-4k+n+p-2u}],​​Table[{2j,1+i+2j+p,1+i+2j+2k+t+u,-1-i-2j-2k+n+p-u,-1-i-2j+n},{t,1,-3-3i-4j-4k+n-2u}],​​Table[{2j,1+i+2j+p+t,-2-2i-2j-2k+n-u,-1-i-2j-2k+n+p-u,-1-i-2j+n},{t,1,-3-3i-6j-2k+n-p-u}],​​Table[{2j+t,-2-2i-4j-2k+n-u,-2-2i-2j-2k+n-u,-1-i-2j-2k+n+p-u,-1-i-2j+n},{t,1,-2-2i-6j-4k+n-2u}],​​Apply[Join,Table[{{-2-2i-4j-4k+n-2u,-2-2i-4j-2k+n-u,-2-2i-2j-2k+n+t-u,-1-i-2j-2k+n+p-u,-2-i-2j+n+t},​​{-2-2i-4j-4k+n-2u,-2-2i-4j-2k+n-u,-2-2i-2j-2k+n+t-u,-1-i-2j-2k+n+p-u,-1-i-2j+n+t}},{t,1,i}]],​​{{-2-2i-4j-4k+n-2u,-2-2i-4j-2k+n-u,-1-i-2j-2k+n-u,-1-i-2j-2k+n+p-u,-1-2j+n}}​​];​​parallelChain5[n_,i_,j_,u_,k_]:=Table[chain5[n,i,j,u,k,p],{p,0,2k+u}];​​allParallelChain5[n_]:=Flatten[Table[parallelChain5[n,i,j,u,k],{u,0,1},{j,0,Floor[(n-2u-4)/6]},{k,0,Floor[(n-2u-6j-4)/4]},{i,0,Floor[(n-2u-4-6j-4k)/3]}],3];

chain6

In[]:=
chain6[n_,i_,j_,u_,k_,p_]:=Join[​​Table[{1+2j,2+i+2j+p,2+i+2j+2k+u,4+2i+4j+2k+u,5+2i+4j+4k+t+2u},{t,1,-7-3i-6j-4k+n-2u}],​​Table[{1+2j,2+i+2j+p,2+i+2j+2k+u,4+2i+4j+2k+t+u,-2-i-2j+n},{t,1,-6-3i-6j-4k+n+p-2u}],​​Table[{1+2j,2+i+2j+p,2+i+2j+2k+t+u,-2-i-2j-2k+n+p-u,-2-i-2j+n},{t,1,-5-3i-4j-4k+n-2u}],​​Table[{1+2j,2+i+2j+p+t,-3-2i-2j-2k+n-u,-2-i-2j-2k+n+p-u,-2-i-2j+n},{t,1,-6-3i-6j-2k+n-p-u}],​​Table[{1+2j+t,-4-2i-4j-2k+n-u,-3-2i-2j-2k+n-u,-2-i-2j-2k+n+p-u,-2-i-2j+n},{t,1,-6-2i-6j-4k+n-2u}],​​Apply[Join,Table[{{-5-2i-4j-4k+n-2u,-4-2i-4j-2k+n-u,-4-2i-2j-2k+n+t-u,-2-i-2j-2k+n+p-u,-2-i-2j+n+t},​​{-5-2i-4j-4k+n-2u,-4-2i-4j-2k+n-u,-3-2i-2j-2k+n+t-u,-2-i-2j-2k+n+p-u,-2-i-2j+n+t}},{t,1,i}]],​​{{-5-2i-4j-4k+n-2u,-4-2i-4j-2k+n-u,-3-i-2j-2k+n-u,-2-i-2j-2k+n+p-u,-1-2j+n}}​​];​​parallelChain6[n_,i_,j_,u_,k_]:=Table[chain6[n,i,j,u,k,p],{p,0,2k+u}];​​allParallelChain6[n_]:=Flatten[Table[parallelChain6[n,i,j,u,k],{u,0,1},{j,0,Floor[(n-2u-7)/6]},{k,0,Floor[(n-2u-6j-7)/4]},{i,0,Floor[(n-2u-7-6j-4k)/3]}],3];

chain7

In[]:=
chain7[u_,w_,i_,k_,p_,q_]:=Join[​​Table[{1+i+t,2+2i+p+u+2w,3+3i+k+u+2w,4+4i+k+q+2u+4w,4+4i+2k+2u+4w},{t,0,u+2w}],​​Table[{1+i+u+2w,2+2i+p+u+2w,3+3i+k+t+u+2w,4+4i+k+q+2u+4w,4+4i+2k+2u+4w},{t,1,u+2w}],​​{{1+i+u+2w,2+2i+p+u+2w,3+3i+k+2u+4w,4+4i+k+q+2u+4w,5+4i+2k+2u+4w}},​​Table[{1+i+t+u+2w,2+2i+p+u+2w,3+3i+k+2u+4w,4+4i+k+q+2u+4w,5+4i+2k+2u+4w},{t,1,i}],​​Table[{1+2i+u+2w,2+2i+p+u+2w,3+3i+k+2u+4w,4+4i+k+q+2u+4w,5+4i+2k+t+2u+4w},{t,1,i+u+2w}],​​{{2+2i+u+2w,2+2i+p+u+2w,3+3i+k+2u+4w,4+4i+k+q+2u+4w,5+5i+2k+3u+6w}}​​];​​parallelChain7[u_,w_,i_,k_]:=Table[Join[Table[chain7[u,w,i,k,p+t,p],{t,0,k-2p}],Table[chain7[u,w,i,k,k-p,p+t],{t,1,k-2p}]],{p,0,Floor[k/2]}];​​allParallelChain7[n_]:=Flatten[Table[parallelChain7[Mod[n,2],w,i,Floor[(n-6-3Mod[n,2]-6w-6i)/2]],{w,0,Floor[(n-6-3Mod[n,2])/6]},{i,0,Floor[(n-6-3Mod[n,2]-6w)/6]}],2];

chain8

In[]:=
chain8[u_,w_,i_,k_,p_,q_]:=Join[​​Table[{1+i+t,4+2i+p-u+2w,5+3i+k-u+2w,8+4i+k+q-2u+4w,9+4i+2k-2u+4w},{t,0,2+i-u+2w}],​​Table[{3+2i-u+2w,4+2i+p-u+2w,5+3i+k-u+2w,8+4i+k+q-2u+4w,9+4i+2k+t-2u+4w},{t,1,i}],​​{{4+2i-u+2w,4+2i+p-u+2w,5+3i+k-u+2w,8+4i+k+q-2u+4w,9+5i+2k-2u+4w}},​​Table[{4+2i-u+2w,4+2i+p-u+2w,5+3i+k+t-u+2w,8+4i+k+q-2u+4w,9+5i+2k-2u+4w},{t,1,2-u+2w}],​​Table[{4+2i-u+2w,4+2i+p-u+2w,7+3i+k-2u+4w,8+4i+k+q-2u+4w,9+5i+2k+t-2u+4w},{t,1,1-u+2w}]​​];​​parallelChain8[u_,w_,i_,k_]:=Table[Join[Table[chain8[u,w,i,k,p+t,p],{t,0,k-2p}],Table[chain8[u,w,i,k,k-p,p+t],{t,1,k-2p}]],{p,0,Floor[k/2]}];​​allParallelChain8[n_]:=Flatten[Table[parallelChain8[Mod[n,2],w,i,Floor[(n-12+3Mod[n,2]-6w-6i)/2]],{w,0,Floor[(n-12+3Mod[n,2])/6]},{i,0,Floor[(n-12+3Mod[n,2]-6w)/6]}],2];

chain9

All paralle chains

Convert parallel chains to symmetric chains
Parallel chains form rectangles. The perimeters of a rectangle contains up to 2 symmetric chains(from lowest coordinated corner to the highest coordinated corner). The corner points are in the same chain and they could be in either of the border chains. All symmetric chains are obtained by taking perimeters off rectangles recursively.
Symmetric Chain Decomposition of L(5,n)

SCDL5n[n] gives a sysmmetric chains decomposition of L(5,n)

abbrev version