      RadicalMembership
      Copyright (c)  2017 John Abbott, Anna M. Bigatti
      GNU Free Documentation License, Version 1.2
%!includeconf: ../aux-txt2tags/config.t2t
      TeXTitle{RadicalMembership}{John Abbott, Anna M. Bigatti}


== Examples ==[examples]
%----------------------------------------------------------------------
- [ex-RadicalMembership.C ../../examples/index.html#ex-RadicalMembership.C]
-

== User documentation ==
%======================================================================

This file offers functions for testing membership in the radical
of an ideal.  This can be done relatively cheaply compared to
actually computing a generating set for the radical.



=== Queries and views ===[queries]
%----------------------------------------------------------------------
Let ``I`` be an [[ideal]] in a polynomial ring, and let ``f`` be
an element of the same polynomial ring.
- ``IsInRadical(f,I)`` -- ``true`` iff ``f`` is in the radical of ``I``
- ``MinPowerInIdeal(f,I)`` -- returns the smallest integer ``n`` such that ``power(f,n)`` is in ``I``; returns -1 if ``f`` is not in the radical.
-



== Maintainer documentation ==
%======================================================================

The implementation is straightforward (once you have learned the theory
about "Rabinowitch's Trick").

We can be slightly clever when the ideal is homogeneous.



== Bugs, shortcomings and other ideas ==
%======================================================================

Can be terribly slow: see in test-RadicalMembership1.C for some commented
out cases.


== Main changes ==
%======================================================================

**2017**
- July (v0.99560): first release



%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% For "txt2tags safety" leave 2 empty lines after the last line of text.
