001    /*
002     * $Id: PseudoReduction.java 3423 2010-12-24 10:56:50Z kredel $
003     */
004    
005    package edu.jas.gbufd;
006    
007    
008    import java.util.List;
009    
010    import edu.jas.gb.Reduction;
011    import edu.jas.poly.GenPolynomial;
012    import edu.jas.structure.RingElem;
013    
014    
015    /**
016     * Polynomial pseudo reduction interface. Defines additionaly normalformFactor.
017     * @param <C> coefficient type.
018     * @author Heinz Kredel
019     */
020    
021    public interface PseudoReduction<C extends RingElem<C>> extends Reduction<C> {
022    
023    
024        /**
025         * Normalform with multiplication factor.
026         * @param Pp polynomial list.
027         * @param Ap polynomial.
028         * @return ( nf(Ap), mf ) with respect to Pp and mf as multiplication factor
029         *         for Ap.
030         */
031        public PseudoReductionEntry<C> normalformFactor(List<GenPolynomial<C>> Pp, GenPolynomial<C> Ap);
032    
033    }