Skip to content

Commit a38b660

Browse files
authored
Merge branch 'master' into mh/zero-dot-matrix
2 parents a223242 + 1f95e91 commit a38b660

File tree

166 files changed

+5709
-3251
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

166 files changed

+5709
-3251
lines changed

.github/workflows/CI.yml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -23,16 +23,16 @@ jobs:
2323
matrix:
2424
julia-version:
2525
- '1.6'
26-
- '1.9'
27-
- '~1.10.0-0'
26+
- '1.9' # to be removed in the near future
27+
- '1.10'
2828
- 'nightly'
2929
os:
3030
- ubuntu-latest
3131
include:
3232
# Add a few windows and macOS jobs (not too many, the number we can run in parallel is limited)
33-
- julia-version: '1.9'
33+
- julia-version: '1.10'
3434
os: macOS-latest
35-
- julia-version: '1.9'
35+
- julia-version: '1.10'
3636
os: windows-latest
3737

3838
steps:
@@ -54,7 +54,7 @@ jobs:
5454
with:
5555
depwarn: error
5656
- name: "Run doctests"
57-
if: ${{ matrix.julia-version == '1.9' }}
57+
if: ${{ matrix.julia-version == '1.10' }}
5858
run: |
5959
julia --project=docs --color=yes --code-coverage -e '
6060
using Pkg
@@ -77,7 +77,7 @@ jobs:
7777
- uses: actions/checkout@v3
7878
- uses: julia-actions/setup-julia@v1
7979
with:
80-
version: '1.9'
80+
version: '1.10'
8181
- uses: julia-actions/cache@v1
8282
- uses: julia-actions/julia-buildpkg@v1
8383
- uses: julia-actions/julia-docdeploy@v1

.github/workflows/oscar.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ jobs:
2929
- name: "Set up Julia"
3030
uses: julia-actions/setup-julia@v1
3131
with:
32-
version: '~1.9.0-0'
32+
version: '1.10'
3333
- name: OscarDevTools - CI
3434
if: github.repository == 'oscar-system/OscarDevTools.jl'
3535
run: |

Project.toml

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,8 @@
11
name = "AbstractAlgebra"
22
uuid = "c3fe647b-3220-5bb0-a1ea-a7954cac585d"
3-
version = "0.32.4"
3+
version = "0.36.0"
44

55
[deps]
6-
GroupsCore = "d5909c97-4eac-4ecc-a3dc-fdd0858a4120"
76
InteractiveUtils = "b77e0a4c-d291-57a0-90e8-8db25a27a240"
87
LinearAlgebra = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e"
98
MacroTools = "1914dd2f-81c6-5fcd-8719-6d5c9610ff09"
@@ -14,8 +13,12 @@ SparseArrays = "2f01184e-e22b-5df5-ae63-d93ebab69eaf"
1413
Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40"
1514

1615
[compat]
17-
GroupsCore = "0.4.0"
16+
InteractiveUtils = "1.6"
17+
LinearAlgebra = "1.6"
1818
MacroTools = "0.5"
1919
Preferences = "1"
20+
Random = "1.6"
2021
RandomExtensions = "0.4.2"
22+
SparseArrays = "1.6"
23+
Test = "1.6"
2124
julia = "1.6"

README.md

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,14 @@
22

33
[![Docs](https://img.shields.io/badge/docs-dev-blue.svg)](https://nemocas.github.io/AbstractAlgebra.jl/dev)
44
[![Docs](https://img.shields.io/badge/docs-stable-blue.svg)](https://nemocas.github.io/AbstractAlgebra.jl/stable)
5-
[![Build Status](https://github.com/Nemocas/AbstractAlgebra.jl/workflows/Run%20tests/badge.svg)](https://github.com/Nemocas/AbstractAlgebra.jl/actions?query=workflow%3A%22Run%20tests%22+branch%3Amaster)
5+
[![Run tests](https://github.com/Nemocas/AbstractAlgebra.jl/actions/workflows/CI.yml/badge.svg?branch=master)](https://github.com/Nemocas/AbstractAlgebra.jl/actions/workflows/CI.yml)
66
[![Codecov](https://codecov.io/github/Nemocas/AbstractAlgebra.jl/coverage.svg?branch=master&token=)](https://codecov.io/gh/Nemocas/AbstractAlgebra.jl)
77

88
AbstractAlgebra is a pure Julia package for computational abstract algebra. It grew out of the Nemo project and provides all of the abstract types and generic implementations that Nemo relies on.
99

10-
It is currently developed by William Hart, Tommy Hofmann, Fredrik Johansson,
11-
Claus Fieker with contributions from others.
10+
It was originally developed by William Hart, Tommy Hofmann, Fredrik Johansson and
11+
Claus Fieker with contributions from others. Current maintainers are Claus Fieker,
12+
Tommy Hofmann and Max Horn.
1213

1314
AbstractAlgebra currently provides:
1415

docs/create_type_diagramms.jl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ skinparam RoundCorner 15
3030
' Rings
3131
"Ring" -down---> "Field"
3232
"Ring" -down-> "PolyRing{T}"
33-
"PolyRing{T}" -down-> "LaurentPolynomialRing{T}"
33+
"PolyRing{T}" -down-> "LaurentPolyRing{T}"
3434
"PolyRing{T}" -down-> "SeriesRing{T}"
3535
"Ring" -down-> "ResidueRing{T}"
3636

docs/make.jl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,6 @@ makedocs(
4646
"function_field.md",
4747
"finfield.md",
4848
"real.md",
49-
"numberfield.md",
5049
],
5150
"Groups" => [
5251
"perm.md",
@@ -92,6 +91,7 @@ makedocs(
9291
"matrix_interface.md",
9392
"map_interface.md",
9493
"rand.md",
94+
"linear_solving.md",
9595
],
9696
]
9797
)

docs/src/assets/parents_diagram.svg

Lines changed: 4 additions & 4 deletions
Loading

docs/src/constructors.md

Lines changed: 34 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ For example, to create a parent object for univariate polynomials over the integ
4444
we use the `polynomial_ring` parent object constructor.
4545

4646
```julia
47-
R, x = polynomial_ring(ZZ, "x")
47+
R, x = polynomial_ring(ZZ, :x)
4848
f = x^3 + 3x + 1
4949
g = R(12)
5050
```
@@ -57,19 +57,36 @@ $12$ to an element of the polynomial ring $\mathbb{Z}[x]$.
5757
For convenience, we provide a list of all the parent object constructors in
5858
AbstractAlgebra.jl and explain what mathematical domains they represent.
5959

60-
| Mathematics | AbstractAlgebra.jl constructor |
61-
|----------------------------------|---------------------------------------------|
62-
| $R = \mathbb{Z}$ | `R = ZZ` |
63-
| $R = \mathbb{Q}$ | `R = QQ` |
64-
| $R = \mathbb{F}_{p}$ | `R = GF(p)` |
65-
| $R = \mathbb{Z}/n\mathbb{Z}$ | `R = residue_ring(ZZ, n)` |
66-
| $S = R[x]$ | `S, x = polynomial_ring(R, "x")` |
67-
| $S = R[x, y]$ | `S, (x, y) = polynomial_ring(R, ["x", "y"])`|
68-
| $S = R[[x]]$ (to precision $n$) | `S, x = power_series_ring(R, n, "x")` |
69-
| $S = R((x))$ (to precision $n$) | `S, x = laurent_series_ring(R, n, "x")` |
70-
| $S = K((x))$ (to precision $n$) | `S, x = laurent_series_field(K, n, "x")` |
71-
| $S = \mathrm{Frac}_R$ | `S = fraction_field(R)` |
72-
| $S = R/(f)$ | `S = residue_ring(R, f)` |
73-
| $S = R/(f)$ (with $(f)$ maximal) | `S = residue_field(R, f)` |
74-
| $S = \mathrm{Mat}_{m\times n}(R)$| `S = matrix_space(R, m, n)` |
75-
| $S = \mathbb{Q}[x]/(f)$ | `S, a = number_field(f, "a")` |
60+
| Mathematics | AbstractAlgebra.jl constructor |
61+
|:-------------------------------------|:------------------------------------------------------|
62+
| $R = \mathbb{Z}$ | `R = ZZ` |
63+
| $R = \mathbb{Q}$ | `R = QQ` |
64+
| $R = \mathbb{F}_{p}$ | `R = GF(p)` |
65+
| $R = \mathbb{Z}/n\mathbb{Z}$ | `R, = residue_ring(ZZ, n)` |
66+
| $S = R[x]$ | `S, x = polynomial_ring(R, :x)` |
67+
| $S = R[x, y]$ | `S, (x, y) = polynomial_ring(R, [:x, :y])` |
68+
| $S = R\langle x, y\rangle$ | `S, (x, y) = free_associative_algebra(R, [:x, :y])` |
69+
| $S = K(x)$ | `S, x = rational_function_field(K, :x)` |
70+
| $S = K(x, y)$ | `S, (x, y) = rational_function_field(K, [:x, :y])` |
71+
| $S = R[[x]]$ (to precision $n$) | `S, x = power_series_ring(R, n, :x)` |
72+
| $S = R[[x, y]]$ (to precision $n$) | `S, (x, y) = power_series_ring(R, n, [:x, :y])` |
73+
| $S = R((x))$ (to precision $n$) | `S, x = laurent_series_ring(R, n, :x)` |
74+
| $S = K((x))$ (to precision $n$) | `S, x = laurent_series_field(K, n, :x)` |
75+
| $S = R((x, y))$ (to precision $n$) | `S, (x, y) = laurent_polynomial_ring(R, n, [:x, :y])` |
76+
| Puiseux series ring to precision $n$ | `S, x = puiseux_series_ring(R, n, :x)` |
77+
| Puiseux series field to precision $n$| `S, x = puiseux_series_field(R, n, :x)` |
78+
| $S = K(x)(y)/(f)$ | `S, y = function_field(f, :y)` with $f\in K(x)[t]$ |
79+
| $S = \mathrm{Frac}_R$ | `S = fraction_field(R)` |
80+
| $S = R/(f)$ | `S, = residue_ring(R, f)` |
81+
| $S = R/(f)$ (with $(f)$ maximal) | `S, = residue_field(R, f)` |
82+
| $S = \mathrm{Mat}_{m\times n}(R)$ | `S = matrix_space(R, m, n)` |
83+
84+
## Parent objects with variable names
85+
86+
The multivariate parent object constructors (`polynomial_ring`, `power_series_ring`, `free_associative_algebra`, `laurent_polynomial_ring`, and `rational_function_field`) share a common interface for specifying the variable names, which is provided by `@varnames_interface`.
87+
88+
```@docs
89+
AbstractAlgebra.@varnames_interface
90+
AbstractAlgebra.variable_names
91+
AbstractAlgebra.reshape_to_varnames
92+
```

0 commit comments

Comments
 (0)