From 7e159f9d3d5a917e1ce7de381373e759addb269f Mon Sep 17 00:00:00 2001 From: kalmar Date: Fri, 9 Jun 2017 22:01:51 +0200 Subject: [PATCH] add action of permutation group on AutFN --- AutFN_orbit.jl | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/AutFN_orbit.jl b/AutFN_orbit.jl index 071847b..b396fac 100644 --- a/AutFN_orbit.jl +++ b/AutFN_orbit.jl @@ -15,11 +15,22 @@ function AutFG_emb(A::AutGroup, g::WreathProductElem) return elt end +function AutFG_emb(A::AutGroup, p::perm) + isa(A.objectGroup, FreeGroup) || throw("Not an Aut(Fₙ)") + parent(p).n == length(A.objectGroup.gens) || throw("No natural embedding of $(parent(g)) into $A") + return A(Groups.perm_autsymbol(p)) +end + function (g::WreathProductElem)(a::AutGroupElem) g = AutFG_emb(parent(a),g) return g*a*g^-1 end +function (p::perm)(a::AutGroupElem) + g = AutFG_emb(parent(a),p) + return g*a*g^-1 +end + ############################################################################### # # Generating set @@ -103,6 +114,7 @@ function main() info(logger, "Symmetric generating set of size $(length(S))") info(logger, S) AutS = WreathProduct(Nemo.FiniteField(2,1, "a")[1], PermutationGroup(N)) + # AutS = PermutationGroup(N) solver = SCS.SCSSolver(eps=tol, max_iters=iterations, verbose=true, linearsolver=SCS.Indirect)