Skip to content

Commit

Permalink
Change some tabs to spaces (#2785)
Browse files Browse the repository at this point in the history
... as per our dev docs

[skip ci]
  • Loading branch information
fingolfin authored Sep 11, 2023
1 parent f1a45e2 commit 5e93531
Show file tree
Hide file tree
Showing 42 changed files with 1,789 additions and 1,789 deletions.
8 changes: 4 additions & 4 deletions docs/doc.main
Original file line number Diff line number Diff line change
Expand Up @@ -129,16 +129,16 @@
"CommutativeAlgebra/ModulesOverMultivariateRings/intro.md",
"CommutativeAlgebra/ModulesOverMultivariateRings/free_modules.md",
"CommutativeAlgebra/ModulesOverMultivariateRings/subquotients.md",
"CommutativeAlgebra/ModulesOverMultivariateRings/module_operations.md",
"CommutativeAlgebra/ModulesOverMultivariateRings/hom_operations.md",
"CommutativeAlgebra/ModulesOverMultivariateRings/complexes.md",
"CommutativeAlgebra/ModulesOverMultivariateRings/module_operations.md",
"CommutativeAlgebra/ModulesOverMultivariateRings/hom_operations.md",
"CommutativeAlgebra/ModulesOverMultivariateRings/complexes.md",
],
"CommutativeAlgebra/homological_algebra.md",

"Gröbner/Standard Bases" => [
"CommutativeAlgebra/GroebnerBases/orderings.md",
"CommutativeAlgebra/GroebnerBases/groebner_bases.md",
"CommutativeAlgebra/GroebnerBases/groebner_bases_integers.md",
"CommutativeAlgebra/GroebnerBases/groebner_bases_integers.md",
],
"Miscellaneous" => [
"CommutativeAlgebra/Miscellaneous/binomial_ideals.md",
Expand Down
8 changes: 4 additions & 4 deletions docs/src/AlgebraicGeometry/Curves/para_rational_curves.md
Original file line number Diff line number Diff line change
Expand Up @@ -43,11 +43,11 @@ curves only once. Its individual steps are interesting in their own right:
!!! note
The defining property of an adjoint curve is that it passes with “sufficiently high” multiplicity through the singularities of $C$.
There are several concepts of making this precise. For each such concept, there is a corresponding *adjoint ideal* of $C$,
namely the homogeneous ideal formed by the defining polynomials of the adjoint curves. In OSCAR, we follow
the concept of Gorenstein which leads to the largest possible adjoint ideal.
namely the homogeneous ideal formed by the defining polynomials of the adjoint curves. In OSCAR, we follow
the concept of Gorenstein which leads to the largest possible adjoint ideal.

See [Bhm99](@cite) and [BDLP17](@cite) for details and further references.

## Creating Projective Plane Curves

The data structures for algebraic curves in OSCAR are still under development
Expand Down
6 changes: 3 additions & 3 deletions docs/src/CommutativeAlgebra/FrameWorks/ring_localizations.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
```@meta
CurrentModule = Oscar
CurrentModule = Oscar
DocTestSetup = quote
using Oscar
end
Expand Down Expand Up @@ -36,14 +36,14 @@ Coercing (pairs of) elements of `R` into fractions in `Rloc` must be possible as
(Rloc::AbsLocalizedRing)(f::RingElem)
(Rloc::AbsLocalizedRing)(f::RingElem, g::RingElem; check::Bool=true)
```

The first constructor maps the element `f` of `R` to the fraction `f//1` in `Rloc`.
The second constructor takes a pair `f, g` of elements of `R` to the fraction `f//g`
in `Rloc`. The default `check = true` stands for testing whether `g` is an admissible
denominator. As this test is often expensive, it may be convenient
to set `check = false`.

For any concrete instance of type `AbsLocalizedRingElem`, methods for the functions
For any concrete instance of type `AbsLocalizedRingElem`, methods for the functions
`parent`, `numerator`, and `denominator` must be provided. Moreover,
if a cancellation function for the type of fractions under consideration is
not yet available, such a function should be implemented and named
Expand Down
42 changes: 21 additions & 21 deletions docs/src/CommutativeAlgebra/GroebnerBases/groebner_bases.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ $K[x]_>:= K[x][U^{-1}] = \left\{ \frac{f}{u} \:\bigg|\: f \in K[x], \, u\in U_>\

Then $K[x]\subseteq K[x]_>\subseteq K[x]_{\langle x \rangle},$ where $K[x]_{\langle x \rangle}$
is the localization of $K[x] $ at the maximal ideal $\langle x \rangle .$ Moreover,

- ``K[x] = K[x]_>`` iff $>$ is global, and

- ``K[x]_> = K[x]_{\langle x \rangle}`` iff $>$ is local.
Expand All @@ -43,15 +43,15 @@ The *leading monomial* $\text{LM}_>(f)$, the *leading exponent* $\text{LE}_>(f)$
!!! note
Given a monomial ordering $>$ on a free $K[x]$-module $F = K[x]^p$ with basis $e_1, \dots, e_p$,
the above notation extends naturally to elements of $K[x]^p$ and $K[x]_>^p$, respectively. There is one particularity:
Given an element $f = K[x]^p\setminus \{0\}$ with leading term $\text{LT}(f) = x^\alpha e_i$, we write $\text{LE}_>(f) = (\alpha, i)$.
Given an element $f = K[x]^p\setminus \{0\}$ with leading term $\text{LT}(f) = x^\alpha e_i$, we write $\text{LE}_>(f) = (\alpha, i)$.

## Default Orderings

!!! note
The OSCAR functions discussed in this section depend on a monomial `ordering` which is entered as a keyword argument.
Given a polynomial ring $R$, the `default_ordering` for this is `degrevlex` except if $R$ is $\mathbb Z$-graded with
positive weights. Then the corresponding `wdegrevlex` ordering is used. Given a free $R$-module $F$, the
`default_ordering` is `default_ordering(R)*lex(gens(F))`.
positive weights. Then the corresponding `wdegrevlex` ordering is used. Given a free $R$-module $F$, the
`default_ordering` is `default_ordering(R)*lex(gens(F))`.

Here are some illustrating OSCAR examples:

Expand Down Expand Up @@ -222,22 +222,22 @@ still sense to speak of fully reduced remainders. However, even if we start from
!!! note
Given a monomial ordering $>$ on a free $K[x]$-module $F = K[x]^p$ with basis $e_1, \dots, e_p$,
the above notation and the division algorithms extend naturally to $K[x]^p$ and $K[x]_>^p$, respectively.

The OSCAR functions discussed below compute standard representations and polynomial weak standard representations, respectively.

```@docs
reduce(g::T, F::Vector{T};
ordering::MonomialOrdering = default_ordering(parent(F[1]))) where T <: MPolyRingElem
ordering::MonomialOrdering = default_ordering(parent(F[1]))) where T <: MPolyRingElem
```

```@docs
reduce_with_quotients(g::T, F::Vector{T};
ordering::MonomialOrdering = default_ordering(parent(F[1]))) where T <: MPolyRingElem
ordering::MonomialOrdering = default_ordering(parent(F[1]))) where T <: MPolyRingElem
```
```@docs
reduce_with_quotients_and_unit(g::T, F::Vector{T};
ordering::MonomialOrdering = default_ordering(parent(F[1]))) where T <: MPolyRingElem
ordering::MonomialOrdering = default_ordering(parent(F[1]))) where T <: MPolyRingElem
```

## Computing Gröbner/Standard Bases
Expand Down Expand Up @@ -279,26 +279,26 @@ computed basis can be retrieved by using the `elements` function or its alias `g

```@docs
groebner_basis(I::MPolyIdeal;
ord::MonomialOrdering = default_ordering(base_ring(I)),
complete_reduction::Bool = false, algorithm::Symbol = :buchberger)
ord::MonomialOrdering = default_ordering(base_ring(I)),
complete_reduction::Bool = false, algorithm::Symbol = :buchberger)
```
```@docs
standard_basis(I::MPolyIdeal;
ord::MonomialOrdering = default_ordering(base_ring(I)),
complete_reduction::Bool = false, algorithm::Symbol = :buchberger)
ord::MonomialOrdering = default_ordering(base_ring(I)),
complete_reduction::Bool = false, algorithm::Symbol = :buchberger)
```

### Gröbner Bases with transformation matrix

```@docs
groebner_basis_with_transformation_matrix(I::MPolyIdeal;
ordering::MonomialOrdering = default_ordering(base_ring(I)),
complete_reduction::Bool=false)
ordering::MonomialOrdering = default_ordering(base_ring(I)),
complete_reduction::Bool=false)
```
```@docs
standard_basis_with_transformation_matrix(I::MPolyIdeal;
ordering::MonomialOrdering = default_ordering(base_ring(I)),
complete_reduction::Bool=false)
ordering::MonomialOrdering = default_ordering(base_ring(I)),
complete_reduction::Bool=false)
```

### Gröbner Basis Conversion Algorithms
Expand Down Expand Up @@ -357,16 +357,16 @@ chosen prime number rather than for $I$ itself.
!!! note
If appropriate weights and/or the Hilbert function with respect to appropriate weights
are already known to the user, this information can be entered when calling the Hilbert
driven Gröbner basis algorithm as follows:
driven Gröbner basis algorithm as follows:

```@docs
groebner_basis_hilbert_driven(I::MPolyIdeal{P};
destination_ordering::MonomialOrdering,
complete_reduction::Bool = false,
weights::Vector{Int} = ones(Int, ngens(base_ring(I))),
hilbert_numerator::Union{Nothing, ZZPolyRingElem} = nothing) where {P <: MPolyRingElem}
```

### Faugère's F4 Algorithm

!!! warning "Expert function for computing Gröbner bases"
Expand Down
12 changes: 6 additions & 6 deletions docs/src/CommutativeAlgebra/GroebnerBases/orderings.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,17 +27,17 @@ A monomial ordering $>$ on $\text{Mon}_n(x)$ is called
!!! note
- A monomial ordering on $\text{Mon}_n(x)$ is global iff it is a well-ordering.
- To give a monomial ordering on $\text{Mon}_n(x)$ means to give a total ordering $>$ on $ \N^n$ such that
$\alpha > \beta$ implies $ \gamma + \alpha > \gamma + \beta$ for all $\alpha , \beta, \gamma \in \N^n.$
$\alpha > \beta$ implies $ \gamma + \alpha > \gamma + \beta$ for all $\alpha , \beta, \gamma \in \N^n.$
Rather than speaking of a monomial ordering on $\text{Mon}_n(x)$, we may, thus, also speak of a
(global, local, mixed) monomial ordering on $\N^n$.
(global, local, mixed) monomial ordering on $\N^n$.

!!! note
By a result of Robbiano, every monomial ordering can be realized as a matrix ordering.

!!! note
The lexicograpical monomial ordering specifies the default way of storing and displaying multivariate polynomials in OSCAR (terms are sorted in descending order).
The other orderings which can be attached to a multivariate polynomial ring are the degree lexicographical ordering and the degree reverse lexicographical
ordering. Independently of the attached orderings, Gröbner bases can be computed with respect to any monomial ordering. See the section on Gröbner bases.
ordering. Independently of the attached orderings, Gröbner bases can be computed with respect to any monomial ordering. See the section on Gröbner bases.

In this section, we show how to create monomial orderings in OSCAR.

Expand Down Expand Up @@ -108,7 +108,7 @@ cmp(ord::MonomialOrdering, a::MPolyRingElem, b::MPolyRingElem)

Given a matrix $M\in \text{Mat}(k\times n,\mathbb R)$ of rank $n$, with rows $m_1,\dots,m_k$,
the *matrix ordering* defined by $M$ is obtained by setting

$x^\alpha>_M x^\beta \Leftrightarrow \;\exists\; 1\leq i\leq k: m_1\alpha=m_1\beta,\ldots,
m_{i-1}\alpha\ =m_{i-1}\beta,\ m_i\alpha>m_i\beta$

Expand Down Expand Up @@ -286,7 +286,7 @@ weight_ordering(W::Vector{Int}, ord::MonomialOrdering)

The concept of block orderings (product orderings) allows one to construct new monomial orderings from already given ones: If $>_1$ and $>_2$ are monomial orderings on $\text{Mon}_s(x_1, \ldots, x_s)$ and $\text{Mon}_{n-s}(x_{s+1}, \ldots, x_n)$, respectively, then the *block ordering*
$> \; = \; (>_1, >_2)$ on $\text{Mon}_n(x)=\text{Mon}_n(x_1, \ldots, x_n)$ is defined by setting

$x^\alpha>x^\beta \;\Leftrightarrow\; x_1^{\alpha_1}\cdots x_s^{\alpha_s} >_1 x_1^{\beta_1}\cdots x_s^{\beta_s} \;\text{ or }\;
\bigl(x_1^{\alpha_1}\cdots x_s^{\alpha_s} = x_1^{\beta_1}\cdots x_s^{\beta_s} \text{ and } x_{s+1}^{\alpha_{s+1}}\cdots x_n^{\alpha_n} >_2
x_{s+1}^{\beta_{s+1}}\cdots x_n^{\beta_n}\bigr).$
Expand All @@ -295,7 +295,7 @@ x_{s+1}^{\beta_{s+1}}\cdots x_n^{\beta_n}\bigr).$
The ordering $(>_1, >_2)$
- is global (local) iff both $>_1$ and $>_2$ are global (local). Mixed orderings arise by choosing one of $>_1$ and $>_2$ global and the other one local,
- is an elimination ordering for the first block of variables iff $>_1$ is global.

!!! note
- The definition of a block ordering above subdivides $x$ into a block of initial variables and its complementary block of variables.
Block orderings for a subdivision of $x$ into any block of variables and its complementary block are defined similarly and have similar properties.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,10 +18,10 @@ modules which naturally includes both submodules and quotients of free modules.
!!! note
Most functions in this section rely on Gröbner (standard) bases techniques. Thus, the functions
should not be applied to modules over rings other than those from the list above. See the Linear
Algebra chapter for module types which are designed to handle modules over Euclidean
domains.
Algebra chapter for module types which are designed to handle modules over Euclidean
domains.

!!! note
For simplicity of the presentation in what follows, functions are often only illustrated by examples
with focus on modules over multivariate polynomial rings, but work similarly for modules over
a ring of any of the above types.
a ring of any of the above types.
Original file line number Diff line number Diff line change
Expand Up @@ -36,16 +36,16 @@ and regard $M$ as a submodule of that ambient module, embedded in the natural wa
!!! note
Recall from the section on free modules that by a free $R$-module we mean a free
module of type $R^p$ , where we think of $R^p$ as a free module with a given
basis, namely the basis of standard unit vectors. Accordingly, elements of free modules
are represented by coordinate vectors, and homomorphisms between free modules by
matrices. Here, by convention, vectors are row vectors, and matrices operate by
multiplication on the right.
basis, namely the basis of standard unit vectors. Accordingly, elements of free modules
are represented by coordinate vectors, and homomorphisms between free modules by
matrices. Here, by convention, vectors are row vectors, and matrices operate by
multiplication on the right.

!!! note
Over a graded ring $R$, we work with graded free modules $R^s$, $R^p$, $R^t$ and graded
homomorphisms $a$, $b$. As a consequence, every module involved in the construction of
the subquotient defined by $a$ and $b$ carries an induced grading. In particular, the
subquotient itself carries an induced grading.
the subquotient defined by $a$ and $b$ carries an induced grading. In particular, the
subquotient itself carries an induced grading.

## Types

Expand All @@ -57,8 +57,8 @@ they are modelled as objects of the concrete type `SubquoModule{T} <: AbstractSu
!!! note
Canonical maps such us the canonical projection onto a quotient module arise in many
constructions in commutative algebra. The `SubquoModule` type is designed so that it allows
for the caching of such maps when executing functions. The `tensor_product`
function discussed in this section provides an example.
for the caching of such maps when executing functions. The `tensor_product`
function discussed in this section provides an example.

## Constructors

Expand Down
30 changes: 15 additions & 15 deletions docs/src/CommutativeAlgebra/affine_algebras.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,33 +19,33 @@ discuss functionality for handling such algebras in OSCAR.
!!! note
Most functions discussed here rely on Gröbner basis techniques. In particular, they typically make use of a Gröbner basis for the
modulus of the quotient. Nevertheless, the construction of quotients is lazy in the sense that the computation of such a Gröbner
basis is delayed until the user performs an operation that indeed requires it (the Gröbner basis is then computed with respect
to the `default_ordering` on the underlying polynomial ring; see the section on *Gröbner/Standard Bases* for default orderings in
OSCAR). Once computed, the Gröbner basis is cached for later reuse.
basis is delayed until the user performs an operation that indeed requires it (the Gröbner basis is then computed with respect
to the `default_ordering` on the underlying polynomial ring; see the section on *Gröbner/Standard Bases* for default orderings in
OSCAR). Once computed, the Gröbner basis is cached for later reuse.

!!! note
Recall that Gröbner basis methods are implemented for multivariate polynomial rings over fields (exact fields supported by
OSCAR) and, where not indicated otherwise, for multivariate polynomial rings over the integers.

!!! note
In OSCAR, elements of a quotient $A = R/I$ are not necessarily represented by polynomials which are reduced with regard to $I$.
That is, if $f\in R$ is the internal polynomial representative of an element of $A$, then $f$ may not be the normal form mod $I$
with respect to the default ordering on $R$ (see the section on *Gröbner/Standard Bases* for normal forms). Operations involving
Gröbner basis computations may lead to (partial) reductions. The function `simplify` discussed in this section computes fully
reduced representatives.
with respect to the default ordering on $R$ (see the section on *Gröbner/Standard Bases* for normal forms). Operations involving
Gröbner basis computations may lead to (partial) reductions. The function `simplify` discussed in this section computes fully
reduced representatives.

!!! note
Each grading on a multivariate polynomial ring `R` in OSCAR descends to a grading on the affine algebra `A = R/I`
(recall that OSCAR ideals of graded polynomial rings are required to be homogeneous).
Functionality for dealing with such gradings and our notation for describing this functionality descend accordingly.
This applies, in particular, to the functions [`is_graded`](@ref), [`is_standard_graded`](@ref), [`is_z_graded`](@ref),
[`is_zm_graded`](@ref), and [`is_positively_graded`](@ref) which will not be discussed again here.
This applies, in particular, to the functions [`is_graded`](@ref), [`is_standard_graded`](@ref), [`is_z_graded`](@ref),
[`is_zm_graded`](@ref), and [`is_positively_graded`](@ref) which will not be discussed again here.

## Types

The OSCAR type for quotients of multivariate polynomial rings is of parametrized form `MPolyQuoRing{T}`,
with elements of type `MPolyQuoRingElem{T}`. Here, `T` is the element type of the polynomial ring.

## Constructors

```@docs
Expand Down Expand Up @@ -173,7 +173,7 @@ is_homogeneous(f::MPolyQuoRingElem{<:MPolyDecRingElem})

### Data associated to Elements of Affine Algebras

Given an element `f` of an affine algebra `A`,
Given an element `f` of an affine algebra `A`,

- `parent(f)` refers to `A`.

Expand Down Expand Up @@ -339,7 +339,7 @@ refer to `R` and `S`, respectively. Given ring homomorphisms `F` : `R` $\to$ `S`
The OSCAR homomorphism type `AffAlgHom` models ring homomorphisms `R` $\to$ `S` such that
the type of both `R` and `S` is a subtype of `Union{MPolyRing{T}, MPolyQuoRing{U}}`, where `T <: FieldElem` and
`U <: MPolyRingElem{T}`. Functionality for these homomorphism is discussed in what follows.

### Data Associated to Homomorphisms of Affine Algebras

```@docs
Expand Down Expand Up @@ -583,7 +583,7 @@ well-defined *Hilbert function* of $A$,

$H(A, \underline{\phantom{d}}): G \to \N, \; g\mapsto \dim_K(A_g).$

The *Hilbert series* of $A$ is the generating function
The *Hilbert series* of $A$ is the generating function

$H_A(\mathbb t)=\sum_{g\in G} H(A, g) \mathbb t^g$

Expand All @@ -597,7 +597,7 @@ By a result of Macaulay, if $A = R/I$ is an affine algebra, and $L_{>}(I)$ is th
ideal of $I$ with respect to a global monomial ordering $>$, then the Hilbert function of $A$
equals that of $R/L_{>}(I)$ (see Theorem 15.26 in [Eis95](@cite)).
Thus, using Gröbner bases, the computation of Hilbert series can be reduced to the case where
the modulus of the affine algebra is a monomial ideal. In the latter case, we face a problem
the modulus of the affine algebra is a monomial ideal. In the latter case, we face a problem
of combinatorial nature, and there are various strategies of how to proceed (see [KR05](@cite)).
The functions `hilbert_series`, `hilbert_series_reduced`, `hilbert_series_expanded`,
`hilbert_function`, `hilbert_polynomial`, and `degree` address the case of
Expand Down Expand Up @@ -626,7 +626,7 @@ $H_A(t)=\sum_{d\geq 0} H(A, d) t^d\in\mathbb Z[[t]].$

The Hilbert series can be written as a rational function $p(t)/q(t)$, with denominator

$q(t) = (1-t^{w_1})\cdots (1-t^{w_n}).$
$q(t) = (1-t^{w_1})\cdots (1-t^{w_n}).$

In the standard $\mathbb Z$-graded case, where the weights on the variables are all 1, the Hilbert function is of polynomial nature: There exists
a unique polynomial $P_A(t)\in\mathbb{Q}[t]$, the *Hilbert polynomial*, which satisfies $H(M,d)=P_M(d)$
Expand Down
Loading

0 comments on commit 5e93531

Please sign in to comment.