(*For positive bi*)
Clear[f,a,c,d,b1,z,b2,b3,b4,b5,btail,i]

f[1,{1}]=c;
f[1,{2}]=d;
f[1,{b1_}]:=f[1,{b1}]=f[1,{b1-2}]-z (a^(1-b1)-f[1,{b1-1}])

f[2,{1,1}]:=d;
f[2,{1,2}]:=f[2,{1,2}]=a^(-1)-z (d-a^2);
f[2,{2,1}]:=f[2,{2,1}]=a-z a^(-2)+z (f[2,{1,1}]);
f[2,{1,b2_}]:=f[2,{1,b2}]=f[2,{1,b2-2}]-z (f[2,{1,b2-1}]-a^b2);
f[2,{2,b2_}]:=f[2,{2,b2}]=a^b2-z (a^(-1) f[2,{1,b2-1}]-f[2,{1,b2}]);
f[2,{b1_,1}]:=f[2,{b1,1}]=f[1,{b1+1}];
f[2,{b1_,b2_}]:=f[2,{b1,b2}]=f[2,{b1-2,b2}]-z (a^(1-b1) f[2,{1,b2-1}]-f[2,{b1-1,b2}])

f[3,{1,1,b3_}]:=f[3,{1,1,b3}]=a^(-b3)-z (f[1,{b3+1}]-a f[1,{b3}]);
f[3,{1,2,b3_}]:=f[3,{1,2,b3}]=f[1,{b3+1}]-z (f[3,{1,1,b3}]-a^2 f[1,{b3}]);
f[3,{2,1,b3_}]:=f[3,{2,1,b3}]=a f[1,{b3}]-z (a^(-1) f[1,{b3+1}]-f[3,{1,1,b3}]);
f[3,{1,b2_,b3_}]:=f[3,{1,b2,b3}]=f[3,{1,b2-2,b3}]-z (f[3,{1,b2-1,b3}]-a^b2 f[1,{b3}]);
f[3,{2,b2_,b3_}]:=f[3,{2,b2,b3}]=a^b2 f[1,{b3}]-z (a^(-1) f[3,{1,b2-1,b3}]-f[3,{1,b2,b3}]);
f[3,{b1_,1,b3_}]:=f[3,{b1,1,b3}]=f[3,{b1-2,1,b3}]-z (a^(1-b1) f[1,{b3+1}]-f[3,{b1-1,1,b3}]);
f[3,{b1_,b2_,b3_}]:=f[3,{b1,b2,b3}]=f[3,{b1-2,b2,b3}]-z (a^(-b1+1) f[3,{1,b2-1,b3}]-f[3,{b1-1,b2,b3}])

f[4,{1,1,b3_,1}]:=f[4,{1,1,b3,1}]=a^(-1-b3)-z (f[2,{b3+1,1}]-a f[2,{b3,1}]);
f[4,{1,1,b3_,b4_}]:=f[4,{1,1,b3,b4}]=a^(-b3) f[2,{1,b4-1}]-z (f[2,{b3+1,b4}]-a f[2,{b3,b4}]);
f[4,{2,1,b3_,b4_}]:=f[4,{2,1,b3,b4}]=a f[2,{b3,b4}]-z (a^(-1) f[2,{b3+1,b4}]-f[4,{1,1,b3,b4}]);
f[4,{1,2,b3_,b4_}]:=f[4,{1,2,b3,b4}]=f[2,{b3+1,b4}]-z (f[4,{1,1,b3,b4}]-a^2 f[2,{b3,b4}]);
f[4,{1,b2_,b3_,b4_}]:=f[4,{1,b2,b3,b4}]=f[4,{1,b2-2,b3,b4}]-z (f[4,{1,b2-1,b3,b4}]-a^b2 f[2,{b3,b4}]);
f[4,{2,b2_,b3_,b4_}]:=f[4,{2,b2,b3,b4}]=a^b2 f[2,{b3,b4}]-z (a^(-1) f[4,{1,b2-1,b3,b4}]-f[4,{1,b2,b3,b4}]);
f[4,{b1_,1,b3_,b4_}]:=f[4,{b1,1,b3,b4}]=f[4,{b1-2,1,b3,b4}]-z (a^(1-b1) f[2,{b3+1,b4}]-f[4,{b1-1,1,b3,b4}]);
f[4,{b1_,b2_,b3_,b4_}]:=f[4,{b1,b2,b3,b4}]=f[4,{b1-2,b2,b3,b4}]-z (a^(-b1+1) f[4,{1,b2-1,b3,b4}]-f[4,{b1-1,b2,b3,b4}])

f[5,{1,1,b3_,1,b5_}]:=f[5,{1,1,b3,1,b5}]=a^(-b3) f[1,{1+b5}]-z (f[3,{b3+1,1,b5}]-a f[3,{b3,1,b5}]);
f[5,{1,1,b3_,b4_,b5_}]:=f[5,{1,1,b3,b4,b5}]=a^(-b3) f[3,{1,b4-1,b5}]-z (f[3,{b3+1,b4,b5}]-a f[3,{b3,b4,b5}]);
f[5,{2,1,b3_,b4_,b5_}]:=f[5,{2,1,b3,b4,b5}]=a f[3,{b3,b4,b5}]-z (a^(-1) f[3,{b3+1,b4,b5}]-f[5,{1,1,b3,b4,b5}]);
f[5,{1,2,b3_,b4_,b5_}]:=f[5,{1,2,b3,b4,b5}]=f[3,{b3+1,b4,b5}]-z (f[5,{1,1,b3,b4,b5}]-a^2 f[3,{b3,b4,b5}]);
f[5,{1,b2_,b3_,b4_,b5_}]:=f[5,{1,b2,b3,b4,b5}]=f[5,{1,b2-2,b3,b4,b5}]-z (f[5,{1,b2-1,b3,b4,b5}]-a^b2 f[3,{b3,b4,b5}]);
f[5,{2,b2_,b3_,b4_,b5_}]:=f[5,{2,b2,b3,b4,b5}]=a^b2 f[3,{b3,b4,b5}]-z (a^(-1) f[5,{1,b2-1,b3,b4,b5}]-f[5,{1,b2,b3,b4,b5}]);
f[5,{b1_,1,b3_,b4_,b5_}]:=f[5,{b1,1,b3,b4,b5}]=f[5,{b1-2,1,b3,b4,b5}]-z (a^(1-b1) f[3,{b3+1,b4,b5}]-f[5,{b1-1,1,b3,b4,b5}]);
f[5,{b1_,b2_,b3_,b4_,b5_}]:=f[5,{b1,b2,b3,b4,b5}]=f[5,{b1-2,b2,b3,b4,b5}]-z (a^(-b1+1) f[5,{1,b2-1,b3,b4,b5}]-f[5,{b1-1,b2,b3,b4,b5}])

f[i_,{1,1,b3_,1,b5_,btail__}]:=f[i,{1,1,b3,1,b5,btail}]=a^(-b3) f[i-4,{1+b5,btail}]-z (f[i-2,{b3+1,1,b5,btail}]-a f[i-2,{b3,1,b5,btail}]);
f[i_,{1,1,b3_,b4_,btail__}]:=f[i,{1,1,b3,b4,btail}]=a^(-b3) f[i-2,{1,b4-1,btail}]-z (f[i-2,{b3+1,b4,btail}]-a f[i-2,{b3,b4,btail}]);
f[i_,{2,1,b3_,btail__}]:=f[i,{2,1,b3,btail}]=a f[i-2,{b3,btail}]-z (a^(-1) f[i-2,{b3+1,btail}]-f[i,{1,1,b3,btail}]);
f[i_,{1,2,b3_,btail__}]:=f[i,{1,2,b3,btail}]=f[i-2,{b3+1,btail}]-z (f[i,{1,1,b3,btail}]-a^2 f[i-2,{b3,btail}]);
f[i_,{1,b2_,btail__}]:=f[i,{1,b2,btail}]=f[i,{1,b2-2,btail}]-z (f[i,{1,b2-1,btail}]-a^b2 f[i-2,{btail}]);
f[i_,{2,b2_,btail__}]:=f[i,{2,b2,btail}]=a^b2 f[i-2,{btail}]-z (a^(-1) f[i,{1,b2-1,btail}]-f[i,{1,b2,btail}]);
f[i_,{b1_,1,b3_,btail__}]:=f[i,{b1,1,b3,btail}]=f[i,{b1-2,1,b3,btail}]-z (a^(1-b1) f[i-2,{b3+1,btail}]-f[i,{b1-1,1,b3,btail}]);
f[i_,{b1_,b2_,btail__}]:=f[i,{b1,b2,btail}]=f[i,{b1-2,b2,btail}]-z (a^(-b1+1) f[i,{1,b2-1,btail}]-f[i,{b1-1,b2,btail}])

(*For negative b_i:*)

Clear[f,a,c,d,e, b1,z,b2,b3,b4,b5,btail,i]
f[1,{-1}]=e;
f[1,{-2}]=d;
f[1,{b1_}]:=f[1,{b1}]=f[1,{b1+2}]+z (a^(-1-b1)-f[1,{b1+1}])

f[2,{-1,-1}]:=d;
f[2,{-1,-2}]:=f[2,{-1,-2}]=a+z (d-a^(-2));
f[2,{-2,-1}]:=f[2,{-2,-1}]=a^(-1)+z (a^2-f[2,{-1,-1}]);
f[2,{-1,b2_}]:=f[2,{-1,b2}]=f[2,{-1,b2+2}]+z (f[2,{-1,b2+1}]-a^b2);
f[2,{-2,b2_}]:=f[2,{-2,b2}]=a^b2+z (a f[2,{-1,b2+1}]-f[2,{-1,b2}]);
f[2,{b1_,-1}]:=f[2,{b1,-1}]=f[1,{b1-1}];
f[2,{b1_,b2_}]:=f[2,{b1,b2}]=f[2,{b1+2,b2}]+z (a^(-1-b1) f[2,{-1,b2+1}]-f[2,{b1+1,b2}])

f[3,{-1,-1,b3_}]:=f[3,{-1,-1,b3}]=a^(-b3)+z (f[1,{b3-1}]-a^(-1) f[1,{b3}]);
f[3,{-1,-2,b3_}]:=f[3,{-1,-2,b3}]=f[1,{b3-1}]+z (f[3,{-1,-1,b3}]-a^(-2) f[1,{b3}]);
f[3,{-2,-1,b3_}]:=f[3,{-2,-1,b3}]=a^(-1) f[1,{b3}]+z (a f[1,{b3-1}]-f[3,{-1,-1,b3}]);
f[3,{-1,b2_,b3_}]:=f[3,{-1,b2,b3}]=f[3,{-1,b2+2,b3}]+z (f[3,{-1,b2+1,b3}]-a^b2 f[1,{b3}]);
f[3,{-2,b2_,b3_}]:=f[3,{-2,b2,b3}]=a^b2 f[1,{b3}]+z (a f[3,{-1,b2+1,b3}]-f[3,{-1,b2,b3}]);
f[3,{b1_,-1,b3_}]:=f[3,{b1,-1,b3}]=f[3,{b1+2,-1,b3}]+z (a^(-1-b1) f[1,{b3-1}]-f[3,{b1+1,-1,b3}]);
f[3,{b1_,b2_,b3_}]:=f[3,{b1,b2,b3}]=f[3,{b1+2,b2,b3}]+z (a^(-b1-1) f[3,{-1,b2+1,b3}]-f[3,{b1+1,b2,b3}])

f[4,{-1,-1,b3_,-1}]:=f[4,{-1,-1,b3,-1}]=a^(1-b3)+z (f[2,{b3-1,-1}]-a^(-1) f[2,{b3,-1}]);
f[4,{-1,-1,b3_,b4_}]:=f[4,{-1,-1,b3,b4}]=a^(-b3) f[2,{-1,b4+1}]+z (f[2,{b3-1,b4}]-a^(-1) f[2,{b3,b4}]);
f[4,{-2,-1,b3_,b4_}]:=f[4,{-2,-1,b3,b4}]=a^(-1) f[2,{b3,b4}]+z (a f[2,{b3-1,b4}]-f[4,{-1,-1,b3,b4}]);
f[4,{-1,-2,b3_,b4_}]:=f[4,{-1,-2,b3,b4}]=f[2,{b3-1,b4}]+z (f[4,{-1,-1,b3,b4}]-a^(-2) f[2,{b3,b4}]);
f[4,{-1,b2_,b3_,b4_}]:=f[4,{-1,b2,b3,b4}]=f[4,{-1,b2+2,b3,b4}]+z (f[4,{-1,b2+1,b3,b4}]-a^b2 f[2,{b3,b4}]);
f[4,{-2,b2_,b3_,b4_}]:=f[4,{-2,b2,b3,b4}]=a^b2 f[2,{b3,b4}]+z (a f[4,{-1,b2+1,b3,b4}]-f[4,{-1,b2,b3,b4}]);
f[4,{b1_,-1,b3_,b4_}]:=f[4,{b1,-1,b3,b4}]=f[4,{b1+2,-1,b3,b4}]+z (a^(-1-b1) f[2,{b3-1,b4}]-f[4,{b1+1,-1,b3,b4}]);
f[4,{b1_,b2_,b3_,b4_}]:=f[4,{b1,b2,b3,b4}]=f[4,{b1+2,b2,b3,b4}]+z (a^(-b1-1) f[4,{-1,b2+1,b3,b4}]-f[4,{b1+1,b2,b3,b4}])

f[5,{-1,-1,b3_,-1,b5_}]:=f[5,{-1,-1,b3,-1,b5}]=a^(-b3) f[1,{b5-1}]+z (f[3,{b3-1,-1,b5}]-a^(-1) f[3,{b3,-1,b5}]);
f[5,{-1,-1,b3_,b4_,b5_}]:=f[5,{-1,-1,b3,b4,b5}]=a^(-b3) f[3,{-1,b4+1,b5}]+z (f[3,{b3-1,b4,b5}]-a^(-1) f[3,{b3,b4,b5}]);
f[5,{-2,-1,b3_,b4_,b5_}]:=f[5,{-2,-1,b3,b4,b5}]=a^(-1) f[3,{b3,b4,b5}]+z (a f[3,{b3-1,b4,b5}]-f[5,{-1,-1,b3,b4,b5}]);
f[5,{-1,-2,b3_,b4_,b5_}]:=f[5,{-1,-2,b3,b4,b5}]=f[3,{b3-1,b4,b5}]+z (f[5,{-1,-1,b3,b4,b5}]-a^(-2) f[3,{b3,b4,b5}]);
f[5,{-1,b2_,b3_,b4_,b5_}]:=f[5,{-1,b2,b3,b4,b5}]=f[5,{-1,b2+2,b3,b4,b5}]+z (f[5,{-1,b2+1,b3,b4,b5}]-a^b2 f[3,{b3,b4,b5}]);
f[5,{-2,b2_,b3_,b4_,b5_}]:=f[5,{-2,b2,b3,b4,b5}]=a^b2 f[3,{b3,b4,b5}]+z (a f[5,{-1,b2+1,b3,b4,b5}]-f[5,{-1,b2,b3,b4,b5}]);
f[5,{b1_,-1,b3_,b4_,b5_}]:=f[5,{b1,-1,b3,b4,b5}]=f[5,{b1+2,-1,b3,b4,b5}]+z (a^(-1-b1) f[3,{b3-1,b4,b5}]-f[5,{b1+1,-1,b3,b4,b5}]);
f[5,{b1_,b2_,b3_,b4_,b5_}]:=f[5,{b1,b2,b3,b4,b5}]=f[5,{b1+2,b2,b3,b4,b5}]+z (a^(-b1-1) f[5,{-1,b2+1,b3,b4,b5}]-f[5,{b1+1,b2,b3,b4,b5}])

f[i_,{-1,-1,b3_,-1,b5_,btail__}]:=f[i,{-1,-1,b3,-1,b5,btail}]=a^(-b3) f[i-4,{b5-1,btail}]+z (f[i-2,{b3-1,-1,b5,btail}]-a^(-1) f[i-2,{b3,-1,b5,btail}]);
f[i_,{-1,-1,b3_,b4_,btail__}]:=f[i,{-1,-1,b3,b4,btail}]=a^(-b3) f[i-2,{-1,b4+1,btail}]+z (f[i-2,{b3-1,b4,btail}]-a^(-1) f[i-2,{b3,b4,btail}]);
f[i_,{-2,-1,b3_,btail__}]:=f[i,{-2,-1,b3,btail}]=a^(-1) f[i-2,{b3,btail}]+z (a f[i-2,{b3-1,btail}]-f[i,{-1,-1,b3,btail}]);
f[i_,{-1,-2,b3_,btail__}]:=f[i,{-1,-2,b3,btail}]=f[i-2,{b3-1,btail}]+z (f[i,{-1,-1,b3,btail}]-a^(-2) f[i-2,{b3,btail}]);
f[i_,{-1,b2_,btail__}]:=f[i,{-1,b2,btail}]=f[i,{-1,b2+2,btail}]+z (f[i,{-1,b2+1,btail}]-a^b2 f[i-2,{btail}]);
f[i_,{-2,b2_,btail__}]:=f[i,{-2,b2,btail}]=a^b2 f[i-2,{btail}]+z (a f[i,{-1,b2+1,btail}]-f[i,{-1,b2,btail}]);
f[i_,{b1_,-1,b3_,btail__}]:=f[i,{b1,-1,b3,btail}]=f[i,{b1+2,-1,b3,btail}]+z (a^(-1-b1) f[i-2,{b3-1,btail}]-f[i,{b1+1,-1,b3,btail}]);
f[i_,{b1_,b2_,btail__}]:=f[i,{b1,b2,btail}]=f[i,{b1+2,b2,btail}]+z (a^(-b1-1) f[i,{-1,b2+1,btail}]-f[i,{b1+1,b2,btail}])

(* For a polynomial only in terms of the variables a and z*)

c:=a;
e:=a^(-1);
d:= z^(-1) a-z^(-1) a^(-1)+1-z a^(-1)+z a;