Skip to content

Commit

Permalink
Revert "remove generated annotations in packed.jl"
Browse files Browse the repository at this point in the history
This reverts commit 12d09f7.
  • Loading branch information
sumiya11 committed Oct 14, 2024
1 parent 7248fd9 commit c62fbfb
Show file tree
Hide file tree
Showing 5 changed files with 7 additions and 47 deletions.
6 changes: 2 additions & 4 deletions docs/_layout/sidebar.html
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ <h1 class="sidebar-title"><a href="/">Groebner<span style="opacity:0.4">.jl</spa
<nav class="sidebar-nav" style="opacity: 0.9">
<a class="sidebar-nav-item {{ispage index.html}}active{{end}}" href="/">Home</a>
<!-- <a class="sidebar-nav-item {{ispage tutorial.html}}active{{end}}" href="/tutorial/">Tutorials</a> -->
<!-- <li class="sidebar-nav-item {{ispage tutorial.html}}active{{end}}"><a href="/tutorial/">Introductory tutorial</a> -->
<li class="sidebar-nav-item {{ispage tutorial.html}}active{{end}}"><a href="/tutorial/">Introductory tutorial</a>
<!-- <ul class="menu-list-child-list ">
<li class="menu-list-item {{ispage tutorial.html}}active{{end}}"><a href="/tutorial/#introduction" class="menu-list-link">Introduction</a>
<li class="menu-list-item {{ispage tutorial.html}}active{{end}}"><a href="/tutorial/#gcd_rref" class="menu-list-link">Gcd & Rref</a>
Expand All @@ -50,10 +50,8 @@ <h1 class="sidebar-title"><a href="/">Groebner<span style="opacity:0.4">.jl</spa
class="menu-list-link">Monomial orderings</a>
<li class="menu-list-item {{ispage interface.html}}active{{end}}"><a href="/interface/#learn_and_apply"
class="menu-list-link">Learn and Apply</a>
<li class="menu-list-item {{ispage interface.html}}active{{end}}"><a href="/interface/#low-level_interface"
class="menu-list-link">Low-level interface</a>
</ul>
<!-- <li class="sidebar-nav-item {{ispage developer.html}}active{{end}}"><a href="/developer/">Development</a> -->
<li class="sidebar-nav-item {{ispage developer.html}}active{{end}}"><a href="/developer/">Development</a>
</nav>

</div>
Expand Down
15 changes: 4 additions & 11 deletions docs/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ where appropriate -->
![](/assets/logo-with-text.svg)
@@

Groebner.jl is a package for Gröbner bases computation based on the Faugère's F4 algorithm written in Julia.
Groebner.jl is a package for fast and generic Gröbner bases computations based on Faugère's [F4 algorithm](https://www-polsys.lip6.fr/~jcf/Papers/F99a.pdf) written in Julia.

## Installation

Expand All @@ -24,19 +24,12 @@ Pkg.add(url="https://github.com/sumiya11/Groebner.jl") # hide
using Pkg; Pkg.add("Groebner")
```

## Features

Groebner.jl features:

- Gröbner basis computation over integers modulo a prime and over the rationals
- Gröbner trace algorithms
- Multi-threading by default

See [Interface](interface) page for a list of all exported functions.
See [Interface](interface) for a description of all exported functions. For a quick introduction to Groebner bases we refer to [Tutorials](tutorial). Meanwhile, below are simple examples.

## Examples

As input, Groebner.jl supports polynomials from AbstractAlgebra.jl, DynamicPolynomials.jl, and Nemo.jl.
Currently, polynomials from AbstractAlgebra.jl, DynamicPolynomials.jl, and Nemo.jl
are supported as input.

### with AbstractAlgebra.jl

Expand Down
26 changes: 0 additions & 26 deletions docs/interface.md
Original file line number Diff line number Diff line change
Expand Up @@ -52,29 +52,3 @@ using Groebner # hide
{{doc groebner_learn groebner_learn fn}}

{{doc groebner_apply! groebner_apply! fn}}

## Low-level interface

```julia:load_groebner
using Groebner # hide
```

Some functions in the interface have a low-level entry point. Low-level functions accept and output ''raw'' exponent vectors and coefficients. This could be convenient when one does not want to depend on a frontend.

For example,

```julia:lowlevel
using Groebner
# define {x y - 1, x^3 + 7 y^2} modulo 65537 in DRL
ring = Groebner.PolyRing(2, Groebner.DegRevLex(), 65537)
monoms = [ [[1, 1], [0, 0]], [[3, 0], [0, 2]] ]
coeffs = [ [1, -1], [1, 7] ]
# compute a GB
gb_monoms, gb_coeffs = Groebner.groebner(ring, monoms, coeffs)
```

The list of functions that provide a low-level entry point: `groebner`, `normalform`, `isgroebner`, `groebner_learn`, `groebner_apply`.

The low-level functions may be faster than their user-facing analogues since they bypass internal checks and conversions. Low-level functions do not make any specific assumptions, that is, all of these are correctly handled in the input: unsorted monomials, nonnormalized coefficients, duplicate terms, aliasing memory.
5 changes: 0 additions & 5 deletions src/groebner/parameters.jl
Original file line number Diff line number Diff line change
Expand Up @@ -245,11 +245,6 @@ function AlgorithmParameters(ring::PolyRing, kwargs::KeywordArguments; hint=:non
# TODO: In the future, it would be good to adapt randomized linear
# algebra to this case by taking more random samples
if ring.ch < 500
if linalg === :randomized
@info """
The option linalg=:randomized was ignored:
the ground field characteristic is small."""
end
linalg = :deterministic
end
end
Expand Down
2 changes: 1 addition & 1 deletion src/interface.jl
Original file line number Diff line number Diff line change
Expand Up @@ -253,7 +253,7 @@ flag, gb_2 = groebner_apply!(
@assert gb_2 == groebner([2x2*y2^2 + 3x2, 4y2*x2^2 + 5y2], ordering=DegRevLex())
```
Using `groebner_apply!` in batches:
Using `groebner_apply!` in batches (works only in `:degrevlex` at the moment):
```jldoctest
using Groebner, AbstractAlgebra
Expand Down

0 comments on commit c62fbfb

Please sign in to comment.