Computes invariants of the local ring obtained by localizing R at the irrelevant maximal ideal and, provided that it has codepth at most 3, classifies it as belonging to one of the (parametrized) classes B, C(c), G(r), H(p,q), S, or T. Returns a hash table with the following data of the local ring:
"c": codepth
"e": embedding dimension
"h": Cohen-Macaulay defect
"m": minimal number of generators of defining ideal
"n": type
"Class": class (’B’, ’C’, ’G’, ’H’, ’S’, ’T’, ‘zero ring’, or ’codepth >3’)
"p": classification parameter
"q": classification parameter
"r": classification parameter
"PoincareSeries": Poincaré series
"BassSeries": Bass series
i1 : Q = QQ[x,y,z]; |
i2 : data = torAlgData (Q/ideal (x*y,y*z,x^3,x^2*z,x*z^2-y^3,z^3)) 2 3 4 2 + 2T - 2T - T + T o2 = HashTable{BassSeries => ---------------------- } 2 3 4 1 - T - 5T - 2T + T c => 3 Class => G e => 3 h => 0 m => 6 n => 2 p => 0 2 (1 + T) PoincareSeries => ---------------------- 2 3 4 1 - T - 5T - 2T + T q => 1 r => 3 o2 : HashTable |
i3 : data#"PoincareSeries" 2 (1 + T) o3 = ---------------------- 2 3 4 1 - T - 5T - 2T + T o3 : Expression of class Divide |
To extract data from the hash table returned by the function one may use torAlgDataList and torAlgDataPrint.
If the embedding dimension of R is large, then the response time may be longer, in particular if R is a quotient of a polynomial algebra over a small field. The reason is that the function attempts to reduce R modulo a generic regular sequence of generators of the irrelevant maximal ideal. The total number of attempts made can be controlled with setAttemptsAtGenericReduction.