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), NO(3) )) );
RR:=tp( mat(( r(1),r(2), r(3) )) );
RN:=tp( mat(( d(1),d(2), d(3) )) );

matrix SM(3,3);
FOR ii:=1:2 DO FOR jj:=1:2 DO SM(ii,jj):=S(ii,jj);
SM(3,3):=1;

matrix SXM(3,3);
FOR ii:=2:3 DO FOR jj:=2:3 DO SXM(ii,jj):=SX(ii,jj);
SXM(1,1):=1;


sm;
sxM;
%-------------------------------------

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:=SXM*RN - RN;

SOLVE({EQQ(2,1),EQQ(3,1)}, {SX(2,3),SX(3,2)});

SX(2,3):=(D(2)*( - SX(2,2) + 1))/D(3);
SX(3,2):=(D(3)*( - SX(3,3) + 1))/D(2);

SXM;



EQQ:=SM*(RR + NN) -  (RR + NN);

SOLVE({EQQ(1,1),EQQ(2,1)}, {NO(1),NO(2)});



EQQ:=SXM*(RR + NN) -  (RR + NN);

SOLVE({EQQ(2,1),EQQ(3,1)}, {NO(2),NO(3)});


%------------------------------------------

NO(1):=( - D(2)*R(1) + D(1)*R(2) + D(1)*ARBCOMPLEX(1))/D(2);
NO(2):=ARBCOMPLEX(1);

ARBCOMPLEX(1):=( - D(3)*R(2) + D(2)*R(3) + D(2)*ARBCOMPLEX(2))/D(3);
NO(3):=ARBCOMPLEX(2);

NN;
RR+NN;

RN-RR-NN;

RN-NN;


shut bb;
bye;
end;