Open wilfwilson opened 3 years ago
With the new constraints setup, in Vole, the conversion of Constraint.InGroup
/Constraint.InCoset
is done by GraphBacktracking, which always uses the the refiner GB_Con.InCoset
and never GB_Con.InCosetSimple
. I fear that this may have made things slower.
(This is perhaps more of a GraphBacktracking issue, but since we're working on Vole at the moment I think it's better to put it here.)
Currently:
VoleCon.InCoset
translates to:GB_Con.InCosetSimple
incanonicalconstraints.g
, rather thanGB_Con.InCoset
insimpleconstraints.g
.VoleCon.InGroup
translates to:GB_Con.InGroup
insimpleconstraints.g
rather thanGB_Con.InGroupSimple
incanonicalconstraints.g
.About a month ago I switched
VoleCon.InGroup
toGB_Con.InGroup
in the possibly-mistaken belief thatGB_Con.InGroupSimple
was slower (i.e. produced larger searches) than necessary, in order to be compatible with canonical images, but that sinceVoleCon.InGroup
is not a valid constraint for a canonical image search, we didn't need to take this compatibility into account. So we could use the 'non-simple' one instead.Note that the group refiners are just instances of the coset refiners with the representative being the identity.
Basically: I want it to be clear which refiners we should be using in Vole.
Things to do: