computational-algebra: Well-kinded computational algebra library, currently supporting Groebner basis.

[ bsd3, library, math ] [ Propose Tags ]

Dependently-typed computational algebra libray for Groebner basis.


[Skip to Readme]

Modules

[Last Documentation]

  • Algebra
    • Algorithms
      • Algebra.Algorithms.Groebner
        • Algebra.Algorithms.Groebner.Monomorphic
    • Algebra.Internal
    • Ring
      • Algebra.Ring.Noetherian
      • Algebra.Ring.Polynomial
        • Algebra.Ring.Polynomial.Monomorphic
        • Algebra.Ring.Polynomial.Parser

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

  • No Candidates
Versions [RSS] 0.0.1.0, 0.0.1.1, 0.0.2.0, 0.0.3.0, 0.0.3.1, 0.0.3.2, 0.1.0.0, 0.1.0.1, 0.1.1.0, 0.1.2.0, 0.1.3.0, 0.1.3.1, 0.1.3.5, 0.1.3.6, 0.2.0.0, 0.3.0.0, 0.4.0.0, 0.5.0.0, 0.5.1.0
Dependencies algebra (>=3 && <4), base (>=2.0 && <5), containers (>=0.4 && <0.6), heaps (>=0.2 && <0.3), lens (>=3 && <4), monad-loops (>=0.3 && <0.4), monomorphic (>=0.0 && <0.1), peggy (>=0.3 && <0.4), tagged (>=0.4 && <1) [details]
License BSD-3-Clause
Copyright (C) Hiromi ISHII 2013
Author Hiromi ISHII
Maintainer konn.jinro_at_gmail.com
Category Math
Home page https://github.com/konn/computational-algebra
Source repo head: git clone git://github.com/konn/computational-algebra.git
Uploaded by HiromiIshii at 2013-05-02T18:50:46Z
Distributions
Reverse Dependencies 1 direct, 0 indirect [details]
Downloads 15388 total (60 in the last 30 days)
Rating 2.25 (votes: 2) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs not available [build log]
All reported builds failed as of 2016-12-21 [all 8 reports]

Readme for computational-algebra-0.1.3.5

[back to package description]

Computational Algebra Library

Installation

$ cabal install computational-algebra

If you once installed the same version of this package and want to reinstall, please run cabal clean first to avoid the GHC's bug.

What is this?

This library provides data-types and functions to manipulate polynomials. This is built up with GHC's nice type features.

It contains following things:

  • Compute Groebner basis using Buchberger Algorithm
  • Ideal membership problem
  • Elimination ideal calculation
    • This library provides the monomial orders of l-th elimination type other than lex order, such as elimination order, product order,...
  • Ideal operations
    • Saturation Ideal, Quotient ideal,...

There are two interfaces:

  • Dependently-typed I/F

    • Arity-paramaterized polynomials. It uses vector representations for monomials. Algebra.Ring.Polynomial and Algebra.Algorithms.Groebner.
  • Monomorphic wrapper I/F

    • Not-so-dependently-typed interface to wrap dependently-typed ones. Algebra.Ring.Polynomial.Monomorphic and Algebra.Algorithms.Groebner.Monomorphic.

For more information, please read examples/polymorphic.hs and examples/monomorphic.hs.

Known Issues

Due to GHC 7.4.*'s bug, this library contains extra modules and functionalities as follows:

  • Monomorphic data-type and his friends
    • This is completely separeted as monomorphic package. But due to GHC 7.4.1, which is shipped with latest Haskell Platform, I include the functionality from this library for a while.
  • Singleton types and functions
    • Because the singletons package is not available in GHC 7.4.1, I provide limited version of the functionalities of that package in Algebra.Internal module. After new HP released, I will entirely rewrite all source codes using singletons.
  • Type-level natural numbers and size-parameterized vectors
    • For the similar reason, I include SNat and Vector data-type in Algebra.Internal module, which is separated as sized-vector package. Their proofs are so messy, so I will entirely rewrite these after new HP released with my unreleased package equational-reasoning, which provides the functionalities similar to Agda's EqReasoning.