#7145: Interval exchange transformations
-----------------------------+----------------------------------------------
Reporter: vdelecroix | Owner: vdelecroix
Type: enhancement | Status: needs_work
Priority: major | Milestone: sage-4.3.1
Component: combinatorics | Keywords:
Work_issues: | Author: Vincent Delecroix
Upstream: N/A | Reviewer:
Merged: |
-----------------------------+----------------------------------------------
Changes (by slabbe):
* status: needs_review => needs_work
Comment:
Dear Vincent,
Thanks for doing all those changes.
I am now looking at your recent patch and I have a few more comments. I am
sorry I was not able to tell them before. I will try now to make a
complete review with all my (hopefully) final remarks. After those FIVE
remarks answered, I think we will be very near of a positive review!
Sébastien
ONE.
> The resason is because it's possible to change the alphabet
> sage: p = PermutationIET('a b c','c b a')
> sage: p a b c c b a
> sage: p.alphabet = [1,2,3]
> sage: p 1 2 3 3 2 1
> sage: p.alphabet = 'cd'
> ...
> ValueError?: Your alphabet has not enough letters
I am not sure this is a good reason for using an attribute instead of a
method. See the following example :
{{{
sage: g = Graph()
sage: p = g.plot()
sage: p.xmin()
-1.0
sage: p.xmin(-2)
sage: p.xmin()
-2.0
}}}
TWO.
The documentation and doctest coverage is very good (96%) but not perfect
:
{{{
sla...@pol:~/sage-4.2/devel/sage-combinat/sage/combinat/iet$ sage
-coverage .
constructors.py: 75% (6 of 8)
iet.py: 100% (23 of 23)
labelled.py: 95% (57 of 60)
reduced.py: 100% (55 of 55)
strata.py: 100% (39 of 39)
template.py: 96% (89 of 92)
Overall weighted coverage score: 96.9%
Total number of functions: 277
We need 5 more function to get to 99% coverage.
}}}
Moreover, {{{sage -coverage *}}} tells many {{{function name doesn't occur
in doctests}}}. Maybe you could add {{{#indirect doctest}}} in doctests
that are indirect.
While you are at it, you may consider to add some INPUT and OUTPUT where
there are missing. See the discussion [http://groups.google.com/group
/sage-
devel/browse_thread/thread/7d529c646c685877/3f7678e55f60759f?hl=en&lnk=gst&q=coverage#3f7678e55f60759f
sage-devel: input and output in docstrings]
THREE.
I am getting 2 doctests failures :
{{{
sage -t "devel/sage-combinat/sage/combinat/iet/constructors.py"
**********************************************************************
File "/home/slabbe/sage-4.2/devel/sage-
combinat/sage/combinat/iet/constructors.py", line 531:
sage: for p in P: print p, "* *\n"
Expected:
a b
b a
* *
Got:
a b
b a * *
<BLANKLINE>
b a
a b * *
<BLANKLINE>
**********************************************************************
File "/home/slabbe/sage-4.2/devel/sage-
combinat/sage/combinat/iet/constructors.py", line 536:
sage: for p in P: print p, "\* * *\n"
Expected:
a b c
c b a
* * *
Got:
a b c
b c a \* * *
<BLANKLINE>
a b c
c a b \* * *
<BLANKLINE>
a b c
c b a \* * *
<BLANKLINE>
a c b
b a c \* * *
<BLANKLINE>
a c b
b c a \* * *
<BLANKLINE>
a c b
c b a \* * *
<BLANKLINE>
b a c
a c b \* * *
<BLANKLINE>
b a c
c a b \* * *
<BLANKLINE>
b a c
c b a \* * *
<BLANKLINE>
b c a
a b c \* * *
<BLANKLINE>
b c a
a c b \* * *
<BLANKLINE>
b c a
c a b \* * *
<BLANKLINE>
c a b
a b c \* * *
<BLANKLINE>
c a b
b a c \* * *
<BLANKLINE>
c a b
b c a \* * *
<BLANKLINE>
c b a
a b c \* * *
<BLANKLINE>
c b a
a c b \* * *
<BLANKLINE>
c b a
b a c \* * *
<BLANKLINE>
**********************************************************************
1 items had failures:
2 of 6 in __main__.example_4
***Test Failed*** 2 failures.
For whitespace errors, see the file
/home/slabbe/.sage//tmp/.doctest_constructors.py
[3.0 s]
exit code: 1024
}}}
FOUR.
I use sage-4.2 and I have problem to docbuild a branch of sage. It
docbuilds the sage main branch, so I am not able to test if there are no
Sphinx warnings and if everythings looks good on the html doc. I am
waiting sage-4.3 to come out to test your patch on it and see the doc.
FIVE.
I changed a little bit the {{{_repr_}}} of Interval exchange
transformation. See the patch attached. Hope you agree.
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/7145#comment:8>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica,
and MATLAB
--
You received this message because you are subscribed to the Google Groups
"sage-trac" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/sage-trac?hl=en.