replace Standard -→ Naive (methods of build problem)
This commit is contained in:
parent
707efaca3a
commit
0cae4882f1
@ -4,7 +4,7 @@ using AbstractAlgebra
|
||||
using Nemo
|
||||
using Groups
|
||||
|
||||
export PropertyTGroup, SymmetrizedGroup, GAPGroup
|
||||
export PropertyTGroup, SymmetrizedGroup, GAPGroup, Naive, Symmetrize,
|
||||
|
||||
abstract type PropertyTGroup end
|
||||
|
||||
@ -12,6 +12,9 @@ abstract type SymmetrizedGroup <: PropertyTGroup end
|
||||
|
||||
abstract type GAPGroup <: PropertyTGroup end
|
||||
|
||||
struct Symmetrize end
|
||||
struct Naive end
|
||||
|
||||
include("autfreegroup.jl")
|
||||
include("speciallinear.jl")
|
||||
|
||||
|
27
main.jl
27
main.jl
@ -13,9 +13,6 @@ using SCS.SCSSolver
|
||||
include("groups/Allgroups.jl")
|
||||
using PropertyTGroups
|
||||
|
||||
struct Symmetrize end
|
||||
struct Standard end
|
||||
|
||||
function summarize(groupdir, iterations, tol, upper_bound, radius, G, S)
|
||||
info("Group: $groupdir")
|
||||
info("Iterations: $iterations")
|
||||
@ -73,6 +70,11 @@ function main(Gr::PropertyTGroup)
|
||||
return main(Symmetrize, Gr, dir=groupdir)
|
||||
end
|
||||
end
|
||||
|
||||
function main(::Type{Symmetrize}, Gr::SymmetrizedGroup; dir=tempname())
|
||||
|
||||
radius, tol, iterations, upper_bound, warm, N = params(Gr)
|
||||
|
||||
G = PropertyTGroups.group(Gr)
|
||||
S = PropertyTGroups.generatingset(Gr)
|
||||
|
||||
@ -88,14 +90,10 @@ end
|
||||
return PropertyT.check_property_T(sett)
|
||||
end
|
||||
|
||||
function main(::Type{Standard}, Gr::SymmetrizedGroup)
|
||||
function main(::Type{Naive}, Gr::SymmetrizedGroup; dir="")
|
||||
|
||||
radius, tol, iterations, upper_bound, warm, _ = params(Gr)
|
||||
|
||||
groupdir = "$(PropertyTGroups.name(Gr))_r$radius"
|
||||
isdir(groupdir) || mkdir(groupdir)
|
||||
logger = PropertyT.setup_logging(joinpath(groupdir, "$(upper_bound)"), :fulllog)
|
||||
|
||||
G = PropertyTGroups.group(Gr)
|
||||
S = PropertyTGroups.generatingset(Gr)
|
||||
|
||||
@ -114,24 +112,17 @@ function main(::Type{Standard}, Gr::SymmetrizedGroup)
|
||||
|
||||
end
|
||||
|
||||
|
||||
function main(Gr::GAPGroup)
|
||||
function main(::Type{Naive}, Gr::GAPGroup; dir="")
|
||||
|
||||
radius, tol, iterations, upper_bound, warm = params(Gr)
|
||||
|
||||
groupdir = "$(PropertyTGroups.name(Gr))_r$radius"
|
||||
isdir(groupdir) || mkdir(groupdir)
|
||||
logger = PropertyT.setup_logging(joinpath(groupdir, "$(upper_bound)"), :fulllog)
|
||||
|
||||
G = PropertyTGroups.group(Gr)
|
||||
S = PropertyTGroups.generatingset(Gr)
|
||||
|
||||
relations = [k*inv(v) for (k,v) in G.rels]
|
||||
prepare_pm_delta(groupdir, GAP_groupcode(S, relations), radius)
|
||||
prepare_pm_delta(dir, GAP_groupcode(S, relations), radius)
|
||||
|
||||
S = unique([S; inv.(S)])
|
||||
|
||||
summarize(logger, groupdir, iterations, tol, upper_bound, radius, G, S)
|
||||
summarize(dir, iterations, tol, upper_bound, radius, G, S)
|
||||
|
||||
solver = scs_solver(tol, iterations)
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user