next | previous | forward | backward | up | index | toc

Replacement -- When changing coordinates, whether to replace variables by general degree 1 forms, binomials, etc.

Synopsis

• Usage:
Replacement => Full
Replacement => Monomial
Replacement => Binomial
Replacement => Trinomial

Description

When calling various functions, setting Replacement => Full will mean that coordinates are changed to a general degree 1 form. If Replacement => Binomial, the coordinates are only changed to binomials, which can be much faster for certain applications. Other options include Replacement => Monomial and Replacement => Trinomial.

 i1 : R = ZZ/101[a,b,c,d,e]; i2 : randomCoordinateChange(R, Replacement=>Monomial) ZZ o2 = map (R, ---[a..e], {a, d, e, b, c}) 101 ZZ o2 : RingMap R <-- ---[a..e] 101 i3 : randomCoordinateChange(R, Replacement=>Binomial) ZZ o3 = map (R, ---[a..e], {- 16a + d, -12c, - 24d + e, a + 19d, b + 21c}) 101 ZZ o3 : RingMap R <-- ---[a..e] 101 i4 : randomCoordinateChange(R, Replacement=>Trinomial) ZZ o4 = map (R, ---[a..e], {22b + 45d + e, 47b + 40d, 11b + c + 36d, - 11a + d + 43e, a - 16b - 48d}) 101 ZZ o4 : RingMap R <-- ---[a..e] 101 i5 : randomCoordinateChange(R, Replacement=>Full) ZZ o5 = map (R, ---[a..e], {- 10a + 30b - 18c + 39d + 27e, 24a - 30b - 48c - 15d + 39e, 29a - 47b + 15c - 37d - 13e, - 22a + 32b - 9c - 32d - 20e, 33b - 49c - 33d - 19e}) 101 ZZ o5 : RingMap R <-- ---[a..e] 101

If Homogeneous => false in these cases, then there will be constant terms, and we view $mx + b$ as a monomial.

 i6 : S = ZZ/103[x,y,z,u,v]; i7 : randomCoordinateChange(S, Replacement => Monomial, Homogeneous => false) ZZ o7 = map (S, ---[x..z, u..v], {z + 4, y + 9, x + 13, v - 28, u - 41}) 103 ZZ o7 : RingMap S <-- ---[x..z, u..v] 103 i8 : randomCoordinateChange(S, Replacement => Binomial, Homogeneous => false) ZZ o8 = map (S, ---[x..z, u..v], {- 32y + 3, - 32y + u - 24, z - 30u + 16, x - 43v - 4, - 37x + v - 11}) 103 ZZ o8 : RingMap S <-- ---[x..z, u..v] 103 i9 : randomCoordinateChange(S, Replacement => Trinomial, Homogeneous => false) ZZ o9 = map (S, ---[x..z, u..v], {- 14u + 30v + 7, - 20y + 41z + 28, - 19x + 42y + 49, 30x + 48v - 50, 8x + y - 31z - 43}) 103 ZZ o9 : RingMap S <-- ---[x..z, u..v] 103 i10 : randomCoordinateChange(S, Replacement => Full, Homogeneous => false) ZZ o10 = map (S, ---[x..z, u..v], {6x - 11y - 35z + 28u - 31v - 30, 30x + 4y + 22z + 5u - 22v + 44, 19x - 49z - 30u + 47v + 20, 5x - 39y - 35z - 30u + 42v + 26, 23x - 39y - 25z + 44u - 41v - 23}) 103 ZZ o10 : RingMap S <-- ---[x..z, u..v] 103

Functions with optional argument named Replacement :

• dimViaBezout(...,Replacement=>...)
• extendIdealByNonZeroMinor(...,Replacement=>...)
• findANonZeroMinor(...,Replacement=>...)
• genericProjection(...,Replacement=>...)
• projectionToHypersurface(...,Replacement=>...)
• randomCoordinateChange(...,Replacement=>...)
• randomPoints(...,Replacement=>...)

For the programmer

The object Replacement is .