IPINT2() [Ip interpreter subroutine no. 2.] const ASIZE=50; safe r,i^,i,j,C. global I[ASIZE],V[ASIZE],V,r,i^,i,j,C. (1) [Algebraic basis (B command).] if C=='B' then { if length(V[i])~=1|length(V[j])~=2 then { OUNIT=6; print "first arg not univariate or second not bivariate"; return }; M_=I[i]; M=RPMAIP(1,M_); a=PMON(RNINT(1),1); A=IPAFME(2,M,I[j],list1(a)); A=AFPMON(1,M,A); L=AFUPSF(M,A); n=length(L); awrite(n); clout (" squarefree factors"); emptob; A#=(); L'=L; while L'~=() do { adv(L';L1,L'); first2(L1;e,A1); A#=COMP(A1,A#); clout("exponent = "); awrite(e); clout(", factor ="); emptob; rpsw(A1,V[j]) }; B=AFSUPB(M,A#); clout("basis is"); emptob; rplsw(B,V[j]) }; return..