RegularChains[ChainTools] - Maple Programming Help

Home : Support : Online Help : Mathematics : Factorization and Solving Equations : RegularChains : ChainTools Subpackage : RegularChains/ChainTools/Construct

RegularChains[ChainTools]

 Construct
 constructs regular chains

 Calling Sequence Construct(p, rc, R) Construct(p, rc, R, 'normalized'='yes') Construct(p, rc, R, 'normalized'='strongly')

Parameters

 p - polynomial of R rc - regular chain of R R - polynomial ring 'normalized'='yes' - (optional) boolean flag 'normalized'='strongly' - (optional) boolean flag

Description

 • The command Construct(p, rc, R) returns a list of regular chains ${\mathrm{rc}}_{i}$ which form a triangular decomposition of the regular chain obtained by extending rc with p.
 • This assumes that p is a non-constant with main variable greater than any algebraic variable of rc, and that the initial of p is regular modulo the saturated ideal of rc. Hence p and rc form together a regular chain.
 • Although rc with p is assumed to form a regular chain, several regular chains may be returned; this is because the polynomial p may be factorized with respect to rc in order to simplify the expressions in the regular chains ${\mathrm{rc}}_{i}$.
 • Such factorizations will happen if they can be performed quickly. For instance, if p involves only one variable.
 • To avoid these possible factorizations, use RegularChains[ChainTools][Chain]
 • If 'normalized'='yes' is present, then rc must be normalized. In addition, every returned regular chain is normalized.
 • If 'normalized'='strongly' is present, then rc must be strongly normalized. In addition, every returned regular chain is strongly normalized.
 • This command is part of the RegularChains[ChainTools] package, so it can be used in the form Construct(..) only after executing the command with(RegularChains[ChainTools]).  However, it can always be accessed through the long form of the command by using RegularChains[ChainTools][Construct](..).

Examples

 > $\mathrm{with}\left(\mathrm{RegularChains}\right):$$\mathrm{with}\left(\mathrm{ChainTools}\right):$
 > $R≔\mathrm{PolynomialRing}\left(\left[t,x,y,z\right]\right)$
 ${R}{:=}{\mathrm{polynomial_ring}}$ (1)
 > $\mathrm{pz}≔{z}^{2}+2z+1$
 ${\mathrm{pz}}{:=}{{z}}^{{2}}{+}{2}{}{z}{+}{1}$ (2)
 > $\mathrm{py}≔{y}^{2}+z$
 ${\mathrm{py}}{:=}{{y}}^{{2}}{+}{z}$ (3)
 > $\mathrm{pt}≔{t}^{3}+yz$
 ${\mathrm{pt}}{:=}{{t}}^{{3}}{+}{y}{}{z}$ (4)
 > $\mathrm{rc}≔\mathrm{Empty}\left(R\right)$
 ${\mathrm{rc}}{:=}{\mathrm{regular_chain}}$ (5)
 > $\mathrm{rc1}≔\mathrm{Construct}\left(\mathrm{pz},\mathrm{rc},R\right)$
 ${\mathrm{rc1}}{:=}\left[{\mathrm{regular_chain}}\right]$ (6)
 > $\mathrm{rc1}≔{\mathrm{rc1}}_{1};$$\mathrm{Equations}\left(\mathrm{rc1},R\right)$
 ${\mathrm{rc1}}{:=}{\mathrm{regular_chain}}$
 $\left[{z}{+}{1}\right]$ (7)
 > $\mathrm{rc2}≔\mathrm{Construct}\left(\mathrm{py},\mathrm{rc1},R\right)$
 ${\mathrm{rc2}}{:=}\left[{\mathrm{regular_chain}}{,}{\mathrm{regular_chain}}\right]$ (8)
 > $\mathrm{rc2}≔{\mathrm{rc2}}_{1};$$\mathrm{Equations}\left(\mathrm{rc2},R\right)$
 ${\mathrm{rc2}}{:=}{\mathrm{regular_chain}}$
 $\left[{y}{-}{1}{,}{z}{+}{1}\right]$ (9)
 > $\mathrm{rc3}≔\mathrm{Construct}\left(\mathrm{pt},\mathrm{rc2},R\right)$
 ${\mathrm{rc3}}{:=}\left[{\mathrm{regular_chain}}{,}{\mathrm{regular_chain}}\right]$ (10)
 > $\mathrm{map}\left(\mathrm{Equations},\mathrm{rc3},R\right)$
 $\left[\left[{t}{-}{1}{,}{y}{-}{1}{,}{z}{+}{1}\right]{,}\left[{{t}}^{{2}}{+}{t}{+}{1}{,}{y}{-}{1}{,}{z}{+}{1}\right]\right]$ (11)