```(* ----------------------------------------------------------------------------
* \$Id: SACEXT6.mi,v 1.3 1992/10/15 16:28:58 kredel Exp \$
* ----------------------------------------------------------------------------
* This file is part of MAS.
* ----------------------------------------------------------------------------
* Copyright (c) 1989 - 1992 Universitaet Passau
* ----------------------------------------------------------------------------
* \$Log: SACEXT6.mi,v \$
* Revision 1.3  1992/10/15  16:28:58  kredel
* Changed rcsid variable
*
* Revision 1.2  1992/02/12  17:34:52  pesch
* Moved CONST definition to the right place
*
* Revision 1.1  1992/01/22  15:16:02  kredel
* Initial revision
*
* ----------------------------------------------------------------------------
*)

IMPLEMENTATION MODULE SACEXT6;

(* SAC Extensions 6 Implementation Module. *)

(* Import lists and declarations. *)

FROM MASSTOR IMPORT LIST, SIL, BETA,

FROM SACLIST IMPORT CONC;

FROM SACEXT5 IMPORT IPCSFB;

FROM SACPFAC IMPORT ISFPF;

CONST rcsidi = "\$Id: SACEXT6.mi,v 1.3 1992/10/15 16:28:58 kredel Exp \$";

PROCEDURE IPFSFB(RL,A: LIST): LIST;
(*Integral polynomial finest squarefree basis.  A eq (A sub 1 , ...,
A sub n ), n ge 0, is a list of positive primitive integral
polynomials in r variables, r ge 1, each of which is of positive
degree in its main variable.  B is a finest squarefree basis for A.*)
VAR  B, B1, BP, BS, L: LIST;
BEGIN
(*1*) (*get coarsest squarefree basis for a.*) BS:=IPCSFB(RL,A);
(*2*) (*factor each basis element.*) B:=BETA;
WHILE BS <> SIL DO ADV(BS, B1,BS); L:=ISFPF(RL,B1);
BP:=CONC(L,B); B:=BP; END;
RETURN(B);
(*5*) END IPFSFB;

END SACEXT6.
(* -EOF- *)
```