001/*
002 * $Id$
003 */
004
005package edu.jas.poly;
006
007
008import edu.jas.structure.RingElem;
009
010
011/**
012 * Generate Relation Tables for solvable polynomial rings. Adds the respective
013 * relations to the relation table of the given solvable ring factory. Relations
014 * are of the form x<sub>j</sub> * x<sub>i</sub> = x<sub>i</sub> x<sub>j</sub> +
015 * p<sub>ij</sub> for 1 &le; i &lt; j &le; n = number of variables.
016 * @author Heinz Kredel
017 */
018public interface RelationGenerator<C extends RingElem<C>> {
019
020
021    /**
022     * Generates the relation table of a solvable polynomial ring.
023     * @param ring solvable polynomial ring factory.
024     */
025    public abstract void generate(GenSolvablePolynomialRing<C> ring);
026
027}