diff --git a/src/GAP/wrappers.jl b/src/GAP/wrappers.jl index ad77d4248daf..c5a4565bad6d 100644 --- a/src/GAP/wrappers.jl +++ b/src/GAP/wrappers.jl @@ -349,6 +349,7 @@ GAP.@wrap RootSystem(x::GapObj)::GapObj GAP.@wrap ScalarProduct(x::GapObj, y::GapObj, z::GapObj)::GAP.Obj GAP.@wrap SchurIndexByCharacter(x::GapObj, y::GapObj, z::GapObj)::GAP.Obj GAP.@wrap Set(x::GapObj)::GapObj +GAP.@wrap SetIsIrreducibleCharacter(x::Any, y::Bool)::Nothing GAP.@wrap SetMaximalAbelianQuotient(x::Any, y::Any)::Nothing GAP.@wrap SetSize(x::Any, y::Any)::Nothing GAP.@wrap ShrinkRowVector(x::GapObj)::Nothing @@ -374,6 +375,7 @@ GAP.@wrap Symmetrizations(x::GapObj, y::GapObj, z::GapInt)::GapObj GAP.@wrap SymplecticComponents(x::GapObj, y::GapObj, z::GapInt)::GapObj GAP.@wrap TableOfMarks(x::GapObj)::GapObj GAP.@wrap Trace(x::GapObj, y::GAP.Obj)::GAP.Obj +GAP.@wrap TrivialCharacter(x::GapObj)::GapObj GAP.@wrap UnderlyingElement(x::GapObj)::GapObj GAP.@wrap UnderlyingGroup(x::GapObj)::GapObj GAP.@wrap UnderlyingRingElement(x::GapObj)::GapObj diff --git a/src/Groups/group_characters.jl b/src/Groups/group_characters.jl index bf9fc0a7f828..324866fd3436 100644 --- a/src/Groups/group_characters.jl +++ b/src/Groups/group_characters.jl @@ -1978,8 +1978,9 @@ true ``` """ function trivial_character(tbl::GAPGroupCharacterTable) - val = QQAbFieldElem(1) - return class_function(tbl, [val for i in 1:ncols(tbl)]) + triv = GAPWrap.TrivialCharacter(GapObj(tbl)) + GAPWrap.SetIsIrreducibleCharacter(triv, true) + return class_function(tbl, triv) end @doc raw""" @@ -1997,8 +1998,9 @@ true ``` """ function trivial_character(G::GAPGroup) - val = QQAbFieldElem(1) - return class_function(G, [val for i in 1:Int(number_of_conjugacy_classes(G))]) + triv = GAPWrap.TrivialCharacter(GapObj(G)) + GAPWrap.SetIsIrreducibleCharacter(triv, true) + return class_function(G, triv) end @doc raw""" @@ -2201,10 +2203,13 @@ julia> length(linear_characters(tbl)) ``` """ function linear_characters(tbl::GAPGroupCharacterTable) - return [class_function(tbl, chi) for chi in GAPWrap.LinearCharacters(GapObj(tbl))] + lin = GAPWrap.LinearCharacters(GapObj(tbl)) + for chi in lin + GAPWrap.SetIsIrreducibleCharacter(chi, true) + end + return [class_function(tbl, chi) for chi in lin] end - @doc raw""" induce(chi::GAPGroupClassFunction, G::Union{GAPGroup, FinGenAbGroup}) induce(chi::GAPGroupClassFunction, tbl::GAPGroupCharacterTable[, fusion::Vector{Int}])