out bb;
%off nat;
%on rounded;

procedure delta(ii,jj);
begin 
if ii eq jj then return 1 else return 0; 
end;

procedure addone(x); rrr:=x+1;

%n:=2;

NN:=tp( mat(( NO(1),NO(2) )) );
RR:=tp( mat(( r(1),r(2) )) );
RN:=tp( mat(( d(1),d(2) )) );

matrix SM(2,2);
FOR ii:=1:2 DO FOR jj:=1:2 DO SM(ii,jj):=S(ii,jj);



sm;
%-------------------------------------

EQQ:=SM*RN - RN;

SOLVE({EQQ(1,1),EQQ(2,1)}, {S(1,2),S(2,1)});

S(1,2):=(D(1)*( - S(1,1) + 1))/D(2);
S(2,1):=(D(2)*( - S(2,2) + 1))/D(1);
SM;




EQQ:=SM*(RR + NN) -  (RR + NN);

SOLVE({EQQ(1,1),EQQ(2,1)}, {NO(1),NO(2)});




NO(1):=( - D(2)*R(1) + D(1)*R(2) + D(1)*ARBCOMPLEX(1))/D(2);
NO(2):=ARBCOMPLEX(1);
NN;
RR+NN;

RN-RR-NN;

RN-NN;

ARBCOMPLEX(1):=d(2)-r(2);

NN;
RR+NN;

RN-RR-NN;

RN-NN;

%-------------------------------------------

matrix SxM(2,2);
FOR ii:=1:2 DO FOR jj:=1:2 DO SxM(ii,jj):=Sx(ii,jj);

SX(1,2):=(R(1)*( - SX(1,1) + 1))/R(2);
SX(2,1):=(R(2)*( - SX(2,2) + 1))/R(1);
SXM;

sxm*rr-rr;
SxM*Rn - rN;

EQQ:=SxM*Rn - rN -  (Sxm*nn - NN);


SOLVE({EQQ(1,1),EQQ(2,1)}, {NO(1),NO(2)});


shut bb;
bye;
end;