out ss;
%off nat;
%load "algint";

%k:=mat((2,-1),(-1,2));
k:=mat((2,-2),(-1,2));
%k:=mat((2,-1),(-2,2));


%procedure fip(ii,x); rrr:=sp(ii)*e**(sss*x);
%procedure fim(ii,x); rrr:=sm(ii)*e**x;
%procedure fip(ii,x); rrr:=x**-n;
%procedure fim(ii,x); rrr:=x**-n;
%procedure fip(ii,x); rrr:=n;
%procedure fim(ii,x); rrr:=n;

%procedure fip(ii,x); rrr:=sp(ii)*x;
%procedure fim(ii,x); rrr:=sm(ii)*x;
procedure fip(ii,x); rrr:=1;
procedure fim(ii,x); rrr:=1;


%procedure integ(f,x,a,b); rrr:=sub(x=b,int(f,x)) - sub(x=a,int(f,x));
procedure integ(f,x,a,b); rrr:=sub(x=b,int(f,x)) ;


for all ii let ap(ii) = integ(fip(ii,t1),t1,c,zp);
for all ii let am(ii) = integ(fim(ii,t1),t1,c,zm);

for all ii,jj let ap(ii,jj) = integ(fip(ii,t2)*integ(fip(jj,t1),t1,c,t2),t2,c,zp);
for all ii,jj let am(ii,jj) = integ(fim(ii,t2)*integ(fim(jj,t1),t1,c,t2),t2,c,zm);

for all i1,i2,i3 let ap(i1,i2,i3) = 
integ(fip(i1,t3)*integ(fip(i2,t2)*integ(fip(i3,t1),t1,c,t2),t2,c,t3),t3,c,zp);

for all i1,i2,i3 let am(i1,i2,i3) = 
integ(fim(i1,t3)*integ(fim(i2,t2)*integ(fim(i3,t1),t1,c,t2),t2,c,t3),t3,c,zm);

for all i1,i2,i3,i4 let ap(i1,i2,i3,i4) = 
integ(fip(i1,t4)
*integ(fip(i2,t3)
*integ(fip(i3,t2)
*integ(fip(i4,t1),t1,c,t2),t2,c,t3),t3,c,t4),t4,c,zp);

for all i1,i2,i3,i4 let am(i1,i2,i3,i4) = 
integ(fim(i1,t4)
*integ(fim(i2,t3)
*integ(fim(i3,t2)
*integ(fim(i4,t1),t1,c,t2),t2,c,t3),t3,c,t4),t4,c,zm);


%---dla A2 wystarczy --------------------------
%gg1:=1 - ap(1)*am(1) - k(1,2)*ap(1,2)*am(1,2);
%gg2:=1 - ap(2)*am(2) - k(2,1)*ap(2,1)*am(2,1);

%--- dla A2, B2 i C2 wystarczy --------------------------
b121121 := K(1,2)*(K(2,1) + 1);
b122221 := 2*K(1,2)*(K(1,2) + 1);
b12211221:=4;
b12211221 := 2*K(1,2)*( - 2*K(2,1)*K(1,2) - 2*K(2,1) - K(1,2) - 1);


gg1:=1 - ap(1)*am(1) - k(1,2)*ap(1,2)*am(1,2)
- K(1,2)*(K(2,1) + 1)*ap(1,2,1)*am(1,2,1) 
- 2*K(1,2)*(K(1,2) + 1)*ap(1,2,2)*am(2,2,1)
+ 2*K(1,2)*( - 2*K(2,1)*K(1,2) - 2*K(2,1) - K(1,2) - 1)*ap(1,2,2,1)*am(1,2,2,1);


%------------
b211112 := 2*K(2,1)*(K(2,1) + 1);
b212212 := K(2,1)*(K(1,2) + 1);
b21122112 := 2*K(2,1)*( - 2*K(2,1)*K(1,2) - K(2,1) - 2*K(1,2) - 1);

gg2:=1 - ap(2)*am(2) - k(2,1)*ap(2,1)*am(2,1)
- 2*K(2,1)*(K(2,1) + 1)*ap(2,1,1)*am(1,1,2) 
- K(2,1)*(K(1,2) + 1)*ap(2,1,2)*am(2,1,2)
+b21122112*ap(2,1,1,2)*am(2,1,1,2);


% ------------solution-------------

ro(1):=log( - df(log(gg1),zp,zm) );
ro(2):=log( - df(log(gg2),zp,zm) );

% ------------TL equation-------------

df(ro(1),zp,zm) - k(1,1)*e**ro(1) - k(1,2)*e**ro(2);
df(ro(2),zp,zm) - k(2,1)*e**ro(1) - k(2,2)*e**ro(2);


ap(1,2);
ap(1);
ap(2);


for i1:=1:2 do for i2:=1:2 do for i3:=1:2 do write ap(i1,i2,i3);
for i1:=1:2 do for i2:=1:2 do for i3:=1:2 do write am(i1,i2,i3);

for i1:=1:2 do for i2:=1:2 do for i3:=1:2 do for i4:=1:2 do write ap(i1,i2,i3,i4);
for i1:=1:2 do for i2:=1:2 do for i3:=1:2 do for i4:=1:2 do write am(i1,i2,i3,i4);


shut ss;
bye;
end;