New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
add support for Brueckner... #985
Conversation
""" | ||
function extension(c::CoChain{2,PermGroupElem}) | ||
function extension(c::CoChain{2,<:Oscar.GAPGroupElem}) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
TODO: we need a version for this that takes PcGroups and produces PcGroups
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
done
experimental/GModule/GModule.jl
Outdated
@@ -536,7 +541,7 @@ end | |||
if isdefined(Hecke, :stub_composition_factors) | |||
function Hecke.stub_composition_factors(x::Vector{T}) where {T} | |||
F = base_ring(x[1]) | |||
h = Oscar.iso_oscar_gap(F) | |||
h = Oscar.ring_iso_oscar_gap(F) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We renamed Oscar.ring_iso_oscar_gap to Oscar.iso_oscar_gap ...
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
just done, but still:
julia> Oscar.RepPc.reps(abelian_closure(QQ)[1], G)
ERROR: failed to convert GAP.GapObj to any known type:
GAP: !Z(137)^0
Stacktrace:
[1] gap_to_julia(x::GAP.GapObj; recursive::Bool)
@ GAP ~/.julia/dev/GAP/src/gap_to_julia.jl:321
[2] #gap_to_julia#29
@ ~/.julia/dev/GAP/src/gap_to_julia.jl:94 [inlined]
[3] #gap_to_julia#27
@ ~/.julia/dev/GAP/src/gap_to_julia.jl:89 [inlined]
[4] #36
@ ~/.julia/dev/GAP/src/gap_to_julia.jl:204 [inlined]
I thought this was solved?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ring_iso_oscar_gap
must be changed toiso_oscar_gap
- many lines are not covered by tests, hence the above issue is not detect by the tests. I don't want to block the PR over this, but I think it'd be good to have a few (even trivial!) tests otherwise we'll just break this code constantly
On Wed, Jan 19, 2022 at 09:30:59AM -0800, Max Horn wrote:
@fingolfin requested changes on this pull request.
- `ring_iso_oscar_gap` must be changed to `iso_oscar_gap`
- many lines are not covered by tests, hence the above issue is not detect by the tests. I don't want to block the PR over this, but I think it'd be good to have a few (even trivial!) tests otherwise we'll just break this code constantly
in PR 970 are some tests
… --
Reply to this email directly or view it on GitHub:
#985 (review)
You are receiving this because you authored the thread.
Message ID: ***@***.***>
|
pc_group(GrpAb) pc_group(Module{FinFieldElem} needs, unfortunately, fixes in AA: hash(ModuleElem) quo for indirect submodules
G = small_group(24, 12) G = isomorphic_fp_group(G)[1] z = maximal_abelian_quotient(G) sub(z[1], map(x->PcGroupElem(z[1], x), GAP.Globals.Pcgs(z[1].X))) zz = z[2]*inv(ans[2]) a = Oscar.RepPc.brueckner(zz); b = [Oscar.RepPc.brueckner(x) for x = a]; runs - but crashes...
at least as far as it is implemented. ``` G = small_group(24, 12) G = isomorphic_fp_group(G)[1] z = maximal_abelian_quotient(G) sub(z[1], map(x->PcGroupElem(z[1], x), GAP.Globals.Pcgs(z[1].X))) zz = z[2]*inv(ans[2]) a = Oscar.RepPc.brueckner(zz); b = [Oscar.RepPc.brueckner(x) for x = a]; ``` finds a lot of pc-presentations of G, well too many of them. There is a part of the Thesis that is not yet implented...
Still problems: ``` F = free_group(2) a, b = gens(F) l = [a^2*b*a^−1*b*a^−1*b^−1*a*b^−2,a^2*b^−1*a*b^−1*a*b*a^−1*b^2]; G = quo(F, l)[1] q, mq = maximal_abelian_quotient(G) a = Oscar.RepPc.brueckner(mq); b = Oscar.RepPc.brueckner(a[3]); c = Oscar.RepPc.brueckner(b[3]); ``` (Brueckner's group G_1)
- Thm 15 (b) and (c) - Lemma 16 - replace some(?) hnf by rref/GF(p) - see if one can use F_p-modules? - make Tommy happy: do minimal_field for number fields
hopefully: ``` G = transitive_group(8, 5) irreducible_modules(AnticNumberField, G) C = ans[end] k = base_ring(C) K = cyclotomic_field(8)[1] issubfield(k, K) _, em = ans; F = free_module(K, 2) CC = gmodule(group(C), [hom(F, F, map_entries(em, mat(x))) for x= C.ac]) t = matrix(K, 2, 2, [rand(K, -5:5) for i=1:4]) CCC = gmodule(G, [hom(F, F, inv(t)*mat(x)*t) for x = CC.ac]) Oscar.GModuleFromGap.gmodule_over(em, CCC) z = ans; map(mat, z.ac) gmodule(QQ, z) simplify(ans) map(mat, ans.ac) ```
No description provided.