001/*
002 * $Id$
003 */
004
005package edu.jas.gb;
006
007
008import edu.jas.structure.RingElem;
009
010
011/**
012 * E-Groebner Base sequential algorithm. Nearly empty class, only the
013 * e-reduction is used instead of d-reduction. <b>Note:</b> Minimal reduced GBs
014 * are again unique. see BWK, section 10.1.
015 * @param <C> coefficient type
016 * @author Heinz Kredel
017 */
018
019public class EGroebnerBaseSeq<C extends RingElem<C>> extends DGroebnerBaseSeq<C> {
020
021
022    //private static final Logger logger = LogManager.getLogger(EGroebnerBaseSeq.class);
023    //private static final boolean debug = logger.isDebugEnabled();
024
025
026    /**
027     * Reduction engine.
028     */
029    protected EReduction<C> ered; // shadow super.red ??
030
031
032    /**
033     * Constructor.
034     */
035    public EGroebnerBaseSeq() {
036        this(new EReductionSeq<C>());
037    }
038
039
040    /**
041     * Constructor.
042     * @param ered E-Reduction engine
043     */
044    public EGroebnerBaseSeq(EReductionSeq<C> ered) {
045        super(ered);
046        this.ered = ered;
047        assert this.ered == super.red;
048    }
049
050
051}