QAuxiliaryTools¶
qetatool.spad line 149 [edit on github]
Miscellaneous tools to deal with polynomials.
- clearDenominator: Polynomial Fraction Integer -> Polynomial Integer
clearDenominator(p)multiplies the polynomialpover rational numbers with the least common multiple of the denominator of all its coefficients and returns the result as a polynomial over the integers.
- fromEtaToQPochhammer: (NonNegativeInteger, Fraction Polynomial Integer, String, String) -> Record(frf: Fraction Polynomial Integer, texpo: Integer)
fromEtaToQPochhammer(m,rf,e,u)returns [np/dp, ne-de] where [np,ne]:=fromEtaToQPochhammer(m,numer(rf),e,u), [dp,de]:=fromEtaToQPochhammer(m,denom(rf),e,u).
- fromEtaToQPochhammer: (NonNegativeInteger, Polynomial Integer, String, String) -> Record(fpol: Polynomial Integer, texpo: Integer)
fromEtaToQPochhammer(m,p,e,u)is like the inverse of fromQPochhammerToEta. The variabletcorresponds to exp(pi*i*tau/12) andq=t^24. fromEtaToPochhammer(m,p,e,u) returns [r,n] whereris a polynomial inqand theuisuch thatpand r*t^n correspond to the sameq-series expansion.ris 0 ifpcannot be expressed in such a way.
- fromQPochhammerToEta: (NonNegativeInteger, Fraction Polynomial Integer, String, String) -> Record(frf: Fraction Polynomial Integer, texpo: Integer)
fromQPochhammerToEta(m,rf,u,e)returns [np/dp, ne-de] where [np,ne]:=fromQPochhammerToEta(m,numer(rf),u,e), [dp,de]:=fromQPochhammerToEta(m,denom(rf),u,e).
- fromQPochhammerToEta: (NonNegativeInteger, Polynomial Integer, String, String) -> Record(fpol: Polynomial Integer, texpo: Integer)
fromQPochhammerToEta(m,p,u,e)expressesp(given as a polynomial in variablesuiandqwhere theuicorrespond to the Euler functions of levelmhttps://en.wikipedia.org/wiki/Euler_function) into an expression in variablesei(corresponding to eta(i*tau)). The result [r,n] is expressed as a polynomialrin theeiand an exponentnoft(corresponding to exp(pi*i*tau/12)) such thatpand r*t^n correspond to the sameq-series expansion (withq=t^24).ris 0 ifpcannot be expressed in such a way. This function mainly helps to translate the representation of Somos at url{https://web.archive.org/web/20190709153133/http://eta.math.georgetown.edu/eta07.gp} in terms of Euler functions to our representation in terms of eta functions. The variableqcorresponds to exp(2*pi*i*tau).
- index: (String, String) -> List Integer
index(s,i)returns the list integers encoded in the strings(and separated by one underscore) when the initial stringiis removed. The function returns the empty list if the string does not start with the initial or has not the right format. It can be considered as the inverse of indexedSymbol.
- indexedSymbol: (String, List Integer) -> Symbol
indexedSymbol(s, l)returns a symbol with a name that starts with the stringsand is directly followed by the numbers oflseparated by underscores (“__”).
- indexedSymbols: (String, List Integer) -> List Symbol
indexedSymbols(s, l)returns indexedSymbols(s, [[n] forninl]).
- indexedSymbols: (String, List List Integer) -> List Symbol
indexedSymbols(s, ll)returns [indexedSymbol(s,l) forlinll].
- indexedSymbols: (String, NonNegativeInteger) -> List Symbol
indexedSymbols(s, n)returns indexedSymbols(s, [iforiin 1..n])
- integerPrimitivePart: Polynomial Fraction Integer -> Polynomial Integer
integerPrimitivePart(p)returns primitivePart(clearDenominator(p)).