-
Notifications
You must be signed in to change notification settings - Fork 36
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
semifp: Add a method for IsomorphismFpSemigroup #426
semifp: Add a method for IsomorphismFpSemigroup #426
Conversation
I'm not sure if I have done lines 632 - 640 of semifp.gi in the best way. Also
|
ca8efcb
to
a069a4c
Compare
@james-d-mitchell I'm not sure why the travis tests are failing. The issues seem unrelated to the new code in this PR. |
Hmm, @ChristopherRussell I'm not so sure, do the test all pass on your computer? |
@ChristopherRussell if you rebase on the most recent master branch, the diffs should disappear. |
a069a4c
to
18a77c9
Compare
Thanks @wilfwilson! |
18a77c9
to
072102c
Compare
da0d313
to
29e8161
Compare
I have fixed some of the issues in sempfp.tst (made a fix to IsomorphismFpMonoid and stopped calling BrandtSemigroup which is not yet in stable-3.0). @james-d-mitchell I can't reproduce the remaining errors in the failed travis test, which only occur in one of the builds, and I was hoping you could help. Also I am am going to write a function
We also noticed that
|
@ChristopherRussell Maybe the failure here is related to Issue #435? I also can't reproduce this, on my computer. Can you rebase on the top of stable-3.0 (which now contains some changes not present when travis ran) and see if the tests pass? |
Also I like your suggestion for Also I like the suggestion about combining the methods for |
This method applies to factorizable inverse monoids of partial perms. Method is based on the paper Presentations of Factorizable Inverse Monoids by D. Easdown, J. East, and D. G. FitzGerald (2004).
29e8161
to
72d2478
Compare
I will make the |
This looks good. Here are a couple of minor points:
|
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.
Looks good other than the minor comments I've made.
gap/semigroups/semifp.gi
Outdated
list[i] := list[i] + s; | ||
od; | ||
return list; | ||
end; |
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.
Couldn't this whole method just be list{[1, 3 .. Length(list) - 1]} := list{[1, 3 .. Length(list) - 1]} + s
?
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.
Yes, changed.
gap/semigroups/semifp.gi
Outdated
end; | ||
|
||
# FIXME: this shouldn't be necessary but for an error with | ||
# MinimalFactorization |
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.
Please file an issue for this error, or is this already resolved?
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.
I can't remember the issue now. It was something we noticed when writing code together and it hasn't been resolved. However I am not sure if it was a bug or just that the format of the output didn't suit our purposes (e.g. due to how it dealt with inverses or the identity when factorizing).
My tests still pass when I remove the rec(acting := false)
so that didn't give any hints.
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.
Aha, then this was fixed, it was Issue #424. Please remove the comment.
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.
Ah okay, great.
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.
Please also remove the unnecessary code.
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.
Yes, sorry. Done it now.
gap/semigroups/semifp.gi
Outdated
map := InverseGeneralMapping(IsomorphismPermGroup(G)); | ||
H := Source(map); | ||
o := Enumerate(LambdaOrb(M)); | ||
#R_tilde |
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.
Can we have a line/page reference in the paper for this?
gap/semigroups/semifp.gi
Outdated
map := x -> ElementOfFpSemigroup(fam, EvaluateWord(GeneratorsOfSemigroup(F), | ||
Factorization(T, x))); | ||
inv := x -> EvaluateWord(GeneratorsOfSemigroup(T), | ||
SEMIGROUPS.ExtRepObjToWord(ExtRepOfObj(x))); |
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.
This should be indented so that it is aligned with the (
in (GeneratorsOf...
908d5ae
to
35f5fda
Compare
35f5fda
to
c978387
Compare
This method applies to factorizable inverse monoids of partial perms. Method is
based on the paper Presentations of Factorizable Inverse Monoids by D. Easdown,
J. East, and D. G. FitzGerald (2004).