Skip to content

Commit

Permalink
Add functions to get more series of subgroups (#2728)
Browse files Browse the repository at this point in the history
Also add many more examples to existing docstrings.
  • Loading branch information
fingolfin authored Oct 16, 2023
1 parent 49a1acf commit de48051
Show file tree
Hide file tree
Showing 8 changed files with 454 additions and 31 deletions.
1 change: 1 addition & 0 deletions docs/src/Groups/basics.md
Original file line number Diff line number Diff line change
Expand Up @@ -94,4 +94,5 @@ exponent(G::GAPGroup)
describe(G::GAPGroup)
nilpotency_class(G::GAPGroup)
prime_of_pgroup
derived_length
```
6 changes: 6 additions & 0 deletions docs/src/Groups/subgroups.md
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,12 @@ hall_subgroup_reps
hall_system
complement_class_reps
complement_system
chief_series
composition_series
jennings_series
p_central_series
lower_central_series
upper_central_series
```

!!! note
Expand Down
3 changes: 1 addition & 2 deletions experimental/LieAlgebras/src/LieAlgebras.jl
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,7 @@ import ..Oscar:
is_solvable,
is_welldefined,
kernel,
lower_central_series,
matrix,
ngens,
normalizer,
Expand Down Expand Up @@ -95,7 +96,6 @@ export is_symmetric_power
export is_tensor_power
export is_tensor_product
export lie_algebra
export lower_central_series
export matrix_repr_basis
export multicombinations
export permutations
Expand Down Expand Up @@ -157,7 +157,6 @@ export is_symmetric_power
export is_tensor_power
export is_tensor_product
export lie_algebra
export lower_central_series
export matrix_repr_basis
export special_linear_lie_algebra
export special_orthogonal_lie_algebra
Expand Down
18 changes: 5 additions & 13 deletions src/Groups/GAPGroups.jl
Original file line number Diff line number Diff line change
Expand Up @@ -312,6 +312,11 @@ function Base.show(io::IO, G::PermGroup)
else
print(io, " and infinite order")
end
elseif GAP.Globals.HasStabChainMutable(G.X)
# HACK: to show order in a few more cases where it is trivial to get
# but really, GAP should be using this anyway?
s = GAP.Globals.SizeStabChain( GAP.Globals.StabChainMutable( G.X ) )
print(io, " and order ", ZZRingElem(s))
end
end
end
Expand Down Expand Up @@ -1923,19 +1928,6 @@ function (G::FPGroup)(pairs::AbstractVector{Pair{T, S}}) where {T <: IntegerUnio
return FPGroupElem(G, w)
end

@doc raw"""
nilpotency_class(G::GAPGroup) -> Int
Return the nilpotency class of `G`, i.e.,
the smallest integer $n$ such that `G` has a central series of length $n$.
An exception is thrown if `G` is not nilpotent.
"""
@gapattribute function nilpotency_class(G::GAPGroup)
@assert is_nilpotent(G) "The group is not nilpotent."
return GAP.Globals.NilpotencyClassOfGroup(G.X)::Int
end


function describe(G::GrpAbFinGen)
l = elementary_divisors(G)
Expand Down
Loading

0 comments on commit de48051

Please sign in to comment.