001/* 002 * $Id: ModSolvableGroebnerBase.java 5265 2015-07-27 17:17:49Z kredel $ 003 */ 004 005package edu.jas.gbmod; 006 007 008import java.io.Serializable; 009import java.util.List; 010 011import edu.jas.poly.GenSolvablePolynomial; 012import edu.jas.poly.ModuleList; 013import edu.jas.structure.RingElem; 014 015 016/** 017 * Module solvable Groebner Bases interface. Defines modull solvabe Groebner 018 * bases and GB test. 019 * @param <C> coefficient type 020 * @author Heinz Kredel 021 * @deprecated use respective methods from SolvableGroebnerBase 022 */ 023@Deprecated 024public interface ModSolvableGroebnerBase<C extends RingElem<C>> extends Serializable { 025 026 027 /** 028 * Module left Groebner base test. 029 * @param modv number of modul variables. 030 * @param F a module basis. 031 * @return true, if F is a left Groebner base, else false. 032 */ 033 public boolean isLeftGB(int modv, List<GenSolvablePolynomial<C>> F); 034 035 036 /** 037 * Module left Groebner base test. 038 * @param M a module basis. 039 * @return true, if M is a left Groebner base, else false. 040 */ 041 public boolean isLeftGB(ModuleList<C> M); 042 043 044 /** 045 * Left Groebner base using pairlist class. 046 * @param modv number of modul variables. 047 * @param F a module basis. 048 * @return leftGB(F) a left Groebner base for F. 049 */ 050 public List<GenSolvablePolynomial<C>> leftGB(int modv, List<GenSolvablePolynomial<C>> F); 051 052 053 /** 054 * Left Groebner base using pairlist class. 055 * @param M a module basis. 056 * @return leftGB(M) a left Groebner base for M. 057 */ 058 public ModuleList<C> leftGB(ModuleList<C> M); 059 060 061 /** 062 * Module twosided Groebner base test. 063 * @param modv number of modul variables. 064 * @param F a module basis. 065 * @return true, if F is a twosided Groebner base, else false. 066 */ 067 public boolean isTwosidedGB(int modv, List<GenSolvablePolynomial<C>> F); 068 069 070 /** 071 * Module twosided Groebner base test. 072 * @param M a module basis. 073 * @return true, if M is a twosided Groebner base, else false. 074 */ 075 public boolean isTwosidedGB(ModuleList<C> M); 076 077 078 /** 079 * Twosided Groebner base using pairlist class. 080 * @param modv number of modul variables. 081 * @param F a module basis. 082 * @return tsGB(F) a twosided Groebner base for F. 083 */ 084 public List<GenSolvablePolynomial<C>> twosidedGB(int modv, List<GenSolvablePolynomial<C>> F); 085 086 087 /** 088 * Twosided Groebner base using pairlist class. 089 * @param M a module basis. 090 * @return tsGB(M) a twosided Groebner base for M. 091 */ 092 public ModuleList<C> twosidedGB(ModuleList<C> M); 093 094 095 /** 096 * Module right Groebner base test. 097 * @param modv number of modul variables. 098 * @param F a module basis. 099 * @return true, if F is a right Groebner base, else false. 100 */ 101 public boolean isRightGB(int modv, List<GenSolvablePolynomial<C>> F); 102 103 104 /** 105 * Module right Groebner base test. 106 * @param M a module basis. 107 * @return true, if M is a right Groebner base, else false. 108 */ 109 public boolean isRightGB(ModuleList<C> M); 110 111 112 /** 113 * Right Groebner base using pairlist class. 114 * @param modv number of modul variables. 115 * @param F a module basis. 116 * @return rightGB(F) a right Groebner base for F. 117 */ 118 public List<GenSolvablePolynomial<C>> rightGB(int modv, List<GenSolvablePolynomial<C>> F); 119 120 121 /** 122 * Right Groebner base using pairlist class. 123 * @param M a module basis. 124 * @return rightGB(M) a right Groebner base for M. 125 */ 126 public ModuleList<C> rightGB(ModuleList<C> M); 127 128}