out ss;
%off nat;
load "algint";
procedure fi(ii,x); rrr:=d(ii)*e**(c(ii)*x);
procedure integ(f,x,a,b); rrr:=sub(x=b,int(f,x)) - sub(x=a,int(f,x));





fi(1,s);

int(fi(2,t1),t1);

int((x**2/2)*e**x,x);

sub(x=3,x**2);

integ(x,x,1,2);

integ(fi(1,x),x,c,s);

integ(integ(fi(1,x),x,c,s),s,c,zp);

%-----------------------------------------
XP1:=mat((0,1,0),(0,0,0),(0,0,0));
XP2:=mat((0,0,0),(0,0,1),(0,0,0));
XP3:=mat((0,0,1),(0,0,0),(0,0,0));

XM1:=TP(XP1);
XM2:=TP(XP2);
XM3:=TP(XP3);
%-----------------------------------------
ONE:=mat((1,0,0),(0,1,0),(0,0,1));

MP:=ONE + AP1*XP1 + AP2*XP2 +AP12*XP3;
MM:=ONE + AM1*XM1 + AM2*XM2 +AM12*XM3;

v1:=mat((1),(0),(0));
v2:=mat((0),(1),(0));

KK:=(MP**-1)*MM;

GG1:=TP(V1)*KK*V1;
GG2:=TP(V2)*KK*V2;

%-----------------------------------------
C(1):=1;
C(2):=1;
C(-1):=1;
C(-2):=1;
D(1):=1;
D(2):=1;
D(-1):=1;
D(-2):=1;


AP1:=integ(fi(1,x),x,CC,ZP);
AP2:=integ(fi(2,x),x,CC,ZP);

AP12:=integ(fi(1,s)*integ(fi(2,x),x,CC,s),s,CC,zp);


AM1:=integ(fi(-1,x),x,CC,ZM);
AM2:=integ(fi(-2,x),x,CC,ZM);

AM12:=integ(fi(-2,s)*integ(fi(-1,x),x,CC,s),s,CC,zM);


AP1:=E**ZP;
AP2:=E**ZP;
%AP12:=E**(2*ZP);
AP12:=0;
AM1:=E**ZM;
AM2:=E**ZM;
%AM12:=E**(2*ZM);
AM12:=0;

MP;
MM;
KK;
%-----------------------------------------

%C:=0;

GG1;
AM12;
AM12;

E**(C*C(1)+C(-1));

GG1:=TP(V1)*KK*V1;
GG2:=TP(V2)*KK*V2;


RO(1):=LOG(-DF(LOG(GG1(1,1)),ZP,ZM));
RO(2):=LOG(-DF(LOG(GG2(1,1)),ZP,ZM));

DF(RO(1),ZP,ZM) -2*EXP(RO(1)) + EXP(RO(2));


shut ss;
bye;
end;