From b3bc17cba27f27c549588759e2a17021ae93f719 Mon Sep 17 00:00:00 2001 From: kalmar Date: Mon, 10 Apr 2017 20:02:17 +0200 Subject: [PATCH] Add SOut generating set --- AutFN.jl | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/AutFN.jl b/AutFN.jl index 410fdea..09a7da1 100644 --- a/AutFN.jl +++ b/AutFN.jl @@ -46,6 +46,19 @@ function generating_set_of_OutF(N::Int) return Vector{AutWord}(unique(S)), one(AutWord) end +function generating_set_of_SOutF(N::Int) + indexing = [[i,j] for i in 1:N for j in 1:N if i≠j] + ϱs = [rmul_AutSymbol(i,j) for (i,j) in indexing] + λs = [lmul_AutSymbol(i,j) for (i,j) in indexing] + + S = ϱs + push!(S, λs...) + push!(S,[inv(g) for g in S]...) + + return Vector{AutWord}(unique(S)), one(AutWord) +end + + function generating_set_of_Sym(N::Int) σs = [symmetric_AutSymbol(perm) for perm in SymmetricGroup(N)[2:end]]; @@ -137,7 +150,6 @@ function ΔandSDPconstraints(identity::AutWord, S::Vector{AutWord}) end @show length(B₄_images) - # @assert length(B₄_images) == 3425657 println("Creating product matrix...") @time pm = create_product_matrix(B₂, B₄_images) @@ -217,9 +229,9 @@ function main() N = parsed_args["N"] upper_bound = parsed_args["upper-bound"] - name = "OutF$N" + name = "SOutF$N" name = name*"-$(string(upper_bound))" - S() = generating_set_of_OutF(N) + S() = generating_set_of_SOutF(N) if parsed_args["cpus"] ≠ nothing if parsed_args["cpus"] > cpuinfo_physicalcores()