Lift - Maple Help
For the best experience, we recommend viewing online help using Google Chrome or Microsoft Edge.

RegularChains[ChainTools]

 Lift
 lift a regular chain

 Calling Sequence Lift(F, R, rc, e, m)

Parameters

 F - list of polynomials of R R - polynomial ring rc - regular chain of R e - positive integer or a variable of R m - positive integer or a coefficient of R

Description

 • The function Lift returns a lifted regular chain over R lifted from the regular chain rc.  That is, the output regular chain reduces every polynomial of F to zero over R as long as rc does so under an image of R. This command works for two types of images of R.  If R has characteristic 0, it lifts from an image of finite characteristic.  If R has finite characteristic, it lifts from an image with fewer variables.
 • More precisely, if e is a positive integer, then the base field is assumed to be the field of rational numbers and rc reduces every polynomial of F modulo m, where m is greater than or equal to $2$. If e is a variable, then the base field is assumed to be a prime field and rc reduces every polynomial of F modulo e-m, where e is a variable of R and m belongs to the base field.
 • In both cases, F must be a square system, that is the number of variables of R is equal to the number of elements of F. In the former case, rc and e-m must form a zero-dimensional normalized regular chain which generates a radical ideal in R. In the latter case, rc must be a zero-dimensional normalized regular chain which generates a radical ideal in R modulo m.
 • In the former case, the Jacobian matrix of F must be invertible modulo rc and e-m. In the latter case, the Jacobian matrix of F must be invertible modulo rc and m.
 • The function uses Hensel lifting techniques. If e is a positive integer then e is used as an upper bound on the number of lifting steps.
 • For the case where e is variable, FFT polynomial arithmetic is used. This implies that the ring R should satisfy the hypotheses of the commands from the FastArithmeticTools subpackage.

Examples

 > $\mathrm{with}\left(\mathrm{RegularChains}\right):$
 > $\mathrm{with}\left(\mathrm{ChainTools}\right):$

First we consider an example where coefficients are lifted.

 > $R≔\mathrm{PolynomialRing}\left(\left[x,y\right]\right)$
 ${R}{≔}{\mathrm{polynomial_ring}}$ (1)
 > $\mathrm{sys}≔\left[{x}^{2}+{y}^{2}-1,y-2x+7\right]$
 ${\mathrm{sys}}{≔}\left[{{x}}^{{2}}{+}{{y}}^{{2}}{-}{1}{,}{y}{-}{2}{}{x}{+}{7}\right]$ (2)
 > $\mathrm{rc1}≔\mathrm{Triangularize}\left(\mathrm{sys},R,'\mathrm{normalized}'='\mathrm{yes}'\right)$
 ${\mathrm{rc1}}{≔}\left[{\mathrm{regular_chain}}\right]$ (3)
 > $\mathrm{Equations}\left({\mathrm{rc1}}_{1},R\right)$
 $\left[{2}{}{x}{-}{y}{-}{7}{,}{5}{}{{y}}^{{2}}{+}{14}{}{y}{+}{45}\right]$ (4)
 > $\mathrm{R2}≔\mathrm{PolynomialRing}\left(\left[x,y\right],7\right)$
 ${\mathrm{R2}}{≔}{\mathrm{polynomial_ring}}$ (5)
 > $\mathrm{rc_mod}≔\mathrm{Triangularize}\left(\mathrm{sys},\mathrm{R2},'\mathrm{normalized}'='\mathrm{yes}'\right)$
 ${\mathrm{rc_mod}}{≔}\left[{\mathrm{regular_chain}}\right]$ (6)
 > $\mathrm{Equations}\left({\mathrm{rc_mod}}_{1},R\right)$
 $\left[{x}{+}{3}{}{y}{,}{{y}}^{{2}}{+}{2}\right]$ (7)
 > $\mathrm{rc2}≔\mathrm{Lift}\left(\mathrm{sys},R,{\mathrm{rc_mod}}_{1},5,7\right)$
 ${\mathrm{rc2}}{≔}{\mathrm{regular_chain}}$ (8)
 > $\mathrm{Equations}\left(\mathrm{rc2},R\right)$
 $\left[{2}{}{x}{-}{y}{-}{7}{,}{5}{}{{y}}^{{2}}{+}{14}{}{y}{+}{45}\right]$ (9)

Next we consider an example where a variable is lifted.

 > $R≔\mathrm{PolynomialRing}\left(\left[x,y\right],962592769\right)$
 ${R}{≔}{\mathrm{polynomial_ring}}$ (10)
 > $f≔yx+1$
 ${f}{≔}{y}{}{x}{+}{1}$ (11)
 > $\mathrm{Lift}\left(\left[f\right],R,\mathrm{Chain}\left(\left[x+1\right],\mathrm{Empty}\left(R\right),R\right),y,1\right)$
 $\left[{x}{+}\frac{{1}}{{y}}\right]$ (12)