```(* ----------------------------------------------------------------------------
* \$Id: DIPIIB.md,v 1.1 1995/10/12 14:44:56 pesch Exp \$
* ----------------------------------------------------------------------------
* This file is part of MAS.
* ----------------------------------------------------------------------------
* Copyright (c) 1995 Universitaet Passau
* ----------------------------------------------------------------------------
* \$Log: DIPIIB.md,v \$
* Revision 1.1  1995/10/12 14:44:56  pesch
* Diplomarbeit Rainer Grosse-Gehling.
* Involutive Bases.
* Slightly edited.
*
* ----------------------------------------------------------------------------
*)

DEFINITION MODULE DIPIIB;

(* DIP Integral Polynomial System Definition Module in the sense of Janet. *)

(* Import lists and declarations. *)

FROM MASSTOR IMPORT LIST;

CONST rcsid = "\$Id: DIPIIB.md,v 1.1 1995/10/12 14:44:56 pesch Exp \$";

PROCEDURE DIIPPR2(A,B: LIST): LIST;
(*Distributive integral polynomial product.
A and B are distributive integral polynomials.
Unlike procedure DIIPPR (in modul DIPI) B consists of one monomial.
C=A*B.*)

PROCEDURE DIIPNFJ(P,RPP,S: LIST): LIST;
(*Distributive integral polynomial normal form in the sense of Janet.
P is a list of non zero polynomials in distributive integral
representation in r variables. RPP and S are distributive integral
polynomials. R is a polynomial such that S is reducible to R
modulo P and R is in normalform with respect to p. *)

PROCEDURE DIILISJ(P: LIST): LIST;
(*Distributive integral polynomial list irreducible set.
P is a list of distributive integral polynomials,
The result is a set such that each p element of P modulo P-(p)
is in Janet-normalform *)

PROCEDURE DIIPCOM(F: LIST): LIST;
(* Distributive integral polynomial complete system.
Subalgorithm for computing Invbase.
Input: Distributive polynomial list F.
Output: G: complete system, such that Ideal(G) = Ideal(F). *)

PROCEDURE DIIPIB3(F: LIST): LIST;
(* Distributive integral polynomial involutive base.
Algorithm for computing the involutive Base for a given F.
Input: Distributiv Integral Polynomial List F.
Output: Equivalent involutive system G.*)

PROCEDURE DIIPIB2(F: LIST): LIST;
(* Distributive integral polynomial involutive base.
Mainalgorithm for computing Invbase.
Input: Distributive polynomial list F.
Output: G: involutive system, such that Ideal(G) = Ideal(F). *)

PROCEDURE DIIPIB(F: LIST): LIST;
(* Distributive integral involutive base.
Algorithm for computing the involutive Base for a given F.
Input: Distributiv Integral Polynomial List F.
Output: Equivalent involutive system G.*)

(*** Initialization and setting of options **********************************)

PROCEDURE InitDIPIIB;
(* Init distributive integral involutive base.
Initialization of the DIPIIB options *)

PROCEDURE SetDIPIIBSelect(SEL: INTEGER);
(* Set Distributive integral polynomial Select.
Set polynom selection strategy *)

END DIPIIB.

(* -EOF- *)
```