Skip to content

Improve handling of Laurent polynomial ring .divides() #41318

@user202729

Description

@user202729

Problem Description

  1. The Laurent polynomial ring R[x, 1/x] is isomorphic to the multivariate polynomial ring R[x, y], and for many rings R, libsingular has good implementation of ideal containment check. So $f(x) \mid g(x)$ is equivalent to $(f(x)) ⊇ (g(x))$ in $R[x, 1/x]$, which is equivalent to $g(x) ∈ \big(f(x)|_{x = x, x^{-1} = y}, xy-1\big)$ in $R[x, y]$.

  2. Similarly, ideal containment check can be done by performing the ideal containment check in the isomorphic multivariate polynomial quotient ring.

    I believe there's already generic code to lift it to ideal containment check in the cover ring, if not, one could be added.

  3. For rings without nilradical, one can also do the following.

    Claim: Let $f ∈ R[x]$ have degree $n$, $g ∈ R[x]$ has degree $m$. If there exists $k ≥ 0$ such that $f | g⋅x^k$, then $f | g⋅x^n$.

    Proof:

    Pick the smallest such $k$.

    Write $f⋅h = g⋅x^k$, with $h_0$ the constant coefficient of $h$.

    For the sake of contradiction, assume $f ⋅ h_0 = 0$. Then $f⋅(h-h_0)/x = g⋅x^{k-1}$, contradicts the minimality of $k$.

    Therefore, $f ⋅ h_0 ≠ 0$. Since the nilradical is zero, and the nilradical is the intersection of all prime ideals,
    there exists a prime ideal $𝔭$ such that $f ⋅ h_0 ≢ 0 \pmod{𝔭}$. Therefore $f ≢ 0 \pmod{𝔭}$ and $h_0 ≢ 0 \pmod{𝔭}$.

    The valuation modulo $𝔭$ is additive, therefore the valuation of $f⋅h$ is no more than the valuation of $f$,
    which is $≤ n$. So $k ≤ n$, multiply right hand side with $x^{n-k}$, we're done.

    It's not clear whether doing this is beneficial (e.g. faster) however.


Context:

See also:


I was thinking of generalizing the claim above to something like the following

Claim: let $R$ be a ring. Let $𝔑 = \sqrt{(0)} ⊆ R$ be the nilradical of $R$.
Suppose there exists a positive integer $d$ such that $𝔑^d = (0)$.
Let $f ∈ R[x]$ have degree $n$, $g ∈ R[x]$ has degree $m$.
If there exists integer $k ≥ 0$ such that $f \mid g⋅x^k$, then the smallest such $k$ satisfies $k ≤ \text{some function of }n \text{ and }d$.

without success. Probably something can be derived from some result on the Gröbner basis.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions