|
|
|
|
Synopsis |
|
newtype GroebnerIdeal r m = MakeGroebnerIdeal [MonoidRing r m] | | syzygy_polynomial :: (Fractional r, GroebnerMonoid m) => MonoidRing r m -> MonoidRing r m -> MonoidRing r m | | simple_division :: (Fractional r, GroebnerMonoid m) => (MonoidRing r m, m) -> (MonoidRing r m, m) -> MonoidRing r m | | multiv_division :: (Fractional r, GroebnerMonoid m) => (MonoidRing r m, m) -> [(MonoidRing r m, m)] -> MonoidRing r m | | normal_form :: (Fractional r, GroebnerMonoid m) => (MonoidRing r m, m) -> [(MonoidRing r m, m)] -> MonoidRing r m | | reduced_syzygy_pol :: (Fractional r, GroebnerMonoid m) => MonoidRing r m -> MonoidRing r m -> [(MonoidRing r m, m)] -> MonoidRing r m | | reduce_groebner_basis :: (Fractional r, GroebnerMonoid m) => GroebnerIdeal r m -> GroebnerIdeal r m | | cleanup_nonminimal :: (Fractional r, GroebnerMonoid m) => [(MonoidRing r m, m)] -> [(MonoidRing r m, MonoidRing r m)] -> ([(MonoidRing r m, m)], [(MonoidRing r m, MonoidRing r m)]) | | difficulty :: (Num r, GroebnerMonoid m) => MonoidRing r m -> MonoidRing r m -> m | | process_syzygies :: (Fractional r, GroebnerMonoid m) => [(MonoidRing r m, m)] -> [(MonoidRing r m, MonoidRing r m)] -> [(MonoidRing r m, m)] | | groebnerize :: (Fractional r, GroebnerMonoid m) => Ideal (MonoidRing r m) -> GroebnerIdeal r m | | check_groebnerness :: (Fractional r, GroebnerMonoid m) => GroebnerIdeal r m -> Maybe (GroebnerIdeal r m) |
|
|
Documentation |
|
newtype GroebnerIdeal r m |
Constructors | | Instances | |
|
|
syzygy_polynomial :: (Fractional r, GroebnerMonoid m) => MonoidRing r m -> MonoidRing r m -> MonoidRing r m |
This computes the S-polynomial of two polynomials.
|
|
simple_division :: (Fractional r, GroebnerMonoid m) => (MonoidRing r m, m) -> (MonoidRing r m, m) -> MonoidRing r m |
simple_division tries to divide the leading term.
|
|
multiv_division :: (Fractional r, GroebnerMonoid m) => (MonoidRing r m, m) -> [(MonoidRing r m, m)] -> MonoidRing r m |
|
normal_form :: (Fractional r, GroebnerMonoid m) => (MonoidRing r m, m) -> [(MonoidRing r m, m)] -> MonoidRing r m |
|
reduced_syzygy_pol :: (Fractional r, GroebnerMonoid m) => MonoidRing r m -> MonoidRing r m -> [(MonoidRing r m, m)] -> MonoidRing r m |
|
reduce_groebner_basis :: (Fractional r, GroebnerMonoid m) => GroebnerIdeal r m -> GroebnerIdeal r m |
|
cleanup_nonminimal :: (Fractional r, GroebnerMonoid m) => [(MonoidRing r m, m)] -> [(MonoidRing r m, MonoidRing r m)] -> ([(MonoidRing r m, m)], [(MonoidRing r m, MonoidRing r m)]) |
|
difficulty :: (Num r, GroebnerMonoid m) => MonoidRing r m -> MonoidRing r m -> m |
|
process_syzygies :: (Fractional r, GroebnerMonoid m) => [(MonoidRing r m, m)] -> [(MonoidRing r m, MonoidRing r m)] -> [(MonoidRing r m, m)] |
The process_syzygies function takes a list of generators and a list of
pairs whose syzygies should be added to the Grbner basis. Syzygies
are supposed to come ordered by diffficulty.
|
|
groebnerize :: (Fractional r, GroebnerMonoid m) => Ideal (MonoidRing r m) -> GroebnerIdeal r m |
|
check_groebnerness :: (Fractional r, GroebnerMonoid m) => GroebnerIdeal r m -> Maybe (GroebnerIdeal r m) |
|
Produced by Haddock version 2.3.0 |