Mathematics Asked by HLEE on September 14, 2020

I’m a very beginner in Macaulay2, so I apologize if this question is too trivial…

I’m using Macaulay2 for a computation involving over $30$ variables. Roughly speaking I have a $4times 4$ matrix where entries are polynomials while coefficients are also variables. It’s (minor) determinants give certain conditions and should simplify the form of the matrix.

I’m trying to solve this by creating a huge ring with many variables, compute an (again huge) ideal generated by the given conditions, and use "trim" to express the ideal in a simple way.

One important part of this computation is that some of the variables are invertible, like say $x$ is invertible if I know $xy=0$ , then $y=0$. I tried to put this condition by adding one more auxiliary variable, say $z$ , and give the condition $xz-1 = 0$ (as what we usually do in commutative algebra).

However, I found that Macaulay2 does not do this job; when it has $xy$ in the ideal, it does not provide $y$ in the ideal and so the set of generators does not get simplified well.

Are there some other way to put this condition, so that Macaulay2 reflects the invertibility in its computation?

Here is a way to turn an indeterminate into a unit, however I can't say if it will be enough to do what you want to do.

Declare a ring in the indeterminate `x`

which you want to invert, say `R=QQ[x]`

, take its fraction field `F=frac R`

. Now you can test if `x`

is a unit in `F`

with `isUnit x`

, and the returned answer is `True`

. Now `x`

will be a unit in any ring `S=F[y,z,...]`

.

Note however that something as simple as `roots(x*y)`

will not work since the expected ring is one of `ZZ`

, `QQ`

, `RR`

or `CC`

.

Here is a small example in which everything works as intended

`A=QQ[x]; B=frac A; R=B[y];`

(note that something like `R=frac(QQ[x])[y]`

or `R=(frac(QQ[x]))[y]`

will not work properly, i.e. it will not consider `x`

as a unit)

`isUnit x`

returns True

`isUnit y`

returns False (sanity check)

`gens ideal(x)`

still returns ideal generated by `x`

, however

`gens gb ideal(x)`

returns ideal generated by `1`

.

Correct answer by Randy Marsh on September 14, 2020

Get help from others!

Recent Questions

- How can I transform graph image into a tikzpicture LaTeX code?
- How Do I Get The Ifruit App Off Of Gta 5 / Grand Theft Auto 5
- Iv’e designed a space elevator using a series of lasers. do you know anybody i could submit the designs too that could manufacture the concept and put it to use
- Need help finding a book. Female OP protagonist, magic
- Why is the WWF pending games (“Your turn”) area replaced w/ a column of “Bonus & Reward”gift boxes?

Recent Answers

- Peter Machado on Why fry rice before boiling?
- haakon.io on Why fry rice before boiling?
- Joshua Engel on Why fry rice before boiling?
- Jon Church on Why fry rice before boiling?
- Lex on Does Google Analytics track 404 page responses as valid page views?

© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP