Re: [sage-devel] SuiteSparse and sage and sparse_matrix.LU()

2024-02-05 Thread Thierry Dumont




Le 05/02/2024 à 11:30, Dima Pasechnik a écrit :





A good implementation of LU decomposition ought actually to take non-square 
matrix as input, and have the indices adjusted appropriately in the algorithm,
so it's indeed a bit strange that superLU only takes square matrices (?). 
Perhaps it's a good idea to look at its docs and the source code.





Actually, SuperLU whas developed for people (like me) who solve 
discretized Partial Differential Equations. In that case, matrices are 
quite always square matrices. It is an old program. The idea whas that 
given the fact that new non zero terms appear during the 
LU-factorization, but  that we can predict where they appear and 
minimize the amount of these news terms, there exists a class of rather 
large problems (but not too large! -say less than 10^6 unknowns-) for 
which a direct method, efficiently coded,  could be faster than an 
iterative one (and this is true).


t.d.


--
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sage-devel/c81d6080-7515-4cda-b443-5043d2cb5d57%40math.univ-lyon1.fr.


Re: [sage-devel] Poll: deprecate backslash operator

2023-10-08 Thread Thierry Dumont




Le 08/10/2023 à 18:24, Emmanuel Charpentier a écrit :
BTW :the changes and  advances made in Sage since the last edition of 
this book may warrant a revision, possibly a new edition. If only for 
the installation procedures (Conda installation, WSL on Windows, Github 
replacing Trac, etc...) and the interfaces (Jupyter replacing the Sage 
notebook, emacs as an alternative to command line, etc...).


Yes, for sure... It would be great. We just need manpower, time, and so 
on :-)



Le mercredi 4 octobre 2023 à 23:43:38 UTC+2, Nils Bruin a écrit :

On Wednesday, 4 October 2023 at 10:41:36 UTC-7 Thierry Dumont wrote:

In "Computational Mathematics with SageMath" we have some
backslash...


Indeed, I found on page 43 the example:

sage: 123 + \
: 345
468

which does not work presently. The first mention of "\" as an
operator is on page 162, where it's given as a shorthand for
solve_right in a table (with "/" as a shorthand of solve_left)
It also occurs on p168 (sect. 8.2.2) [twice] , p281, p283 (with
explanation), p302 (in a summary table). Even in the sections where
it is used, `\` is used much more often as a line continuation .

As far as the book is concerned, I think certainly fixing "\" to
work as line continuation is definitely more important for its
correctness, since that's used in much more places in the book (and
also in all the chapters where `\` is used as an operator). In all
the places except the summary table on p302, I saw the alternative
solve_right spelling explicitly mentioned. So impact of deprecating
the notation is rather limited. You could just add it to an
errata/updates list.

--
You received this message because you are subscribed to the Google 
Groups "sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send 
an email to sage-devel+unsubscr...@googlegroups.com 
<mailto:sage-devel+unsubscr...@googlegroups.com>.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sage-devel/f507ef0e-37a9-4306-846d-73e519a96723n%40googlegroups.com <https://groups.google.com/d/msgid/sage-devel/f507ef0e-37a9-4306-846d-73e519a96723n%40googlegroups.com?utm_medium=email_source=footer>.


--
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sage-devel/b36e0100-3de6-47bf-9cb4-8f311e3f2ad4%40math.univ-lyon1.fr.


Re: [sage-devel] Poll: deprecate backslash operator

2023-10-04 Thread Thierry Dumont

In "Computational Mathematics with SageMath" we have some backslash...

So, if we deprecate it, we will have problems with the doctests 
asociated,... and with the book.


I don't like the backslash for solving linear systems, but even Julia 
has adopted it, probably for Matlab users...


t.d.

Le 01/10/2023 à 05:17, Nils Bruin a écrit :

Deprecate please.

--
You received this message because you are subscribed to the Google 
Groups "sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send 
an email to sage-devel+unsubscr...@googlegroups.com 
.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sage-devel/699f7d70-4222-4f64-8ce4-e606478377a9n%40googlegroups.com .


--
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sage-devel/90aec6f5-e47d-4981-941b-a7e909bcf518%40math.univ-lyon1.fr.


[sage-devel] Python PEP 703: no more Interpreter lock

2023-08-16 Thread Thierry Dumont
With PEP 703, Cpython will move (slowly) to a non GIL implementation, 
allowing true multi-threading. It will take time (-> 3.15) and will be 
optional at the beginning. See:

 https://peps.python.org/pep-0703/
Which consequences for the Python part of Sage ? Are there many parts 
which could be multi-threaded ?


t.d.

--
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sage-devel/7ea5fa49-2438-4f0b-b350-cbbb0852a6bb%40math.univ-lyon1.fr.


Re: [sage-devel] Sage and the Pyjion JIT compiler

2022-01-31 Thread Thierry Dumont




Le 31/01/2022 à 08:01, Matthias Koeppe a écrit :
We may be able to speed up the parts of Sage that are implemented in 
Python using the Pyjion JIT compiler (https://www.trypyjion.com/). 
Running the Sage test suite with  Pyjion activated works remarkably 
well; there are only a small number of crashes and test failures. I 
haven't checked whether there are any actual speedups for Sage code.

https://trac.sagemath.org/ticket/32845


Interesting ! How does it compares to numba or pythran ?

It is less intrusive... but what about types which are not python native 
ones ? also numba is "numpy frendly" and allows multitreading; here?

What about classes ?

If I have time, I'll try on numerical computations.
Yours
t.d.

--
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sage-devel/23203ecd-074b-e364-76b0-356700eb454e%40math.univ-lyon1.fr.


Re: [sage-devel] Use SymEngine as a symbolic mathematics backend for SAGE

2021-01-22 Thread Thierry Dumont
There was a message from B. Paisse some days ago, about C (++) and Julia 
for CAS.


May be this https://arxiv.org/pdf/1705.06134v1.pdf
is interesting.

t.d.

Le 22/01/2021 à 15:07, Dima Pasechnik a écrit :

On Thu, Jan 21, 2021 at 8:04 PM parisse  wrote:


Well, searching for "lisp infix notation" is not very convincing (unless I 
missed something?), compared to built-in infix support. You might prefer Lisp to C/C++, 
it's your choice, but I don't see any objective reason that one should stay away from 
C/C++. And Giac is a proof that one can actually write a CAS in C/C++, that compares very 
well with the Lisp-based CAS Maxima.


Maxima is ~40 years old with a bit of work done since then, but the
core is that old, as far as I know:
https://en.wikipedia.org/wiki/Macsyma

As for staying away from C++,  most people who might be trying to do
something with supposedly state of the art library like boost,
would run away screaming, closely followed by 100 screens of error messages :-)
Or, now mostly gone (?), iterator_traits (my closest encounter with
C++, contributing to CGAL, 20 years ago, where these had to be
generated by a script for some classes, otherwise compilers kept
crashing...)






Le jeudi 21 janvier 2021 à 18:07:14 UTC+1, dim...@gmail.com a écrit :


On Wed, Jan 20, 2021 at 7:13 PM parisse  wrote:


As the author of a CAS, I can state that you need much more than 2 weeks to 
learn a programming language to make a CAS, and much much more if you want to 
be fast. Life is short, therefore choose your programming language carefully! I 
don't regret my choice for C (+ C++ STL and operator redefinition) made 20 
years ago, because C can interact with a lot of languages (including 
compilation to Javascript). If I had to choose today, I would perhaps choose 
Julia. Not Python, it's much too slow. I don't know for Lisp speed, but it's 
not a language I would choose anyway, I like to write e.g. a+b*c when I do 
algebraic computations in my source code.


There are macro packages for infix maths in Common Lisp, so this by no
means should be a deal-breaker for anyone.

Needless to say, C++ has its own can of worms, which anyone who tried
to used it might easily produce, as a reason to stay
away from it.



Le mercredi 20 janvier 2021 à 19:47:01 UTC+1, rjf a écrit :


I think you have to figure that there is a difference in productivity of people 
who just learned Python in high school and would really like to write a 
computer algebra system
versus people who know more mathematics, are comfortable spending 2 weeks 
learning lisp, spending ?? (weeks? months?) studying the state of the art in
computer algebra systems as evolved over 60 years, and want to contribute to 
advancing the art (rather than re-programming the easy stuff).
I am under the impression that learning python is a reasonable stepping stone 
to learning lisp.

As far as checking results for various systems, there is a category of CAS bugs 
that are syistem independent.
That is, they occur in many systems! Sometimes they depend on secretly dividing 
by zero, or doing something
that is invalid at a singularity. So "Maple and Mathematica and ... all agree" 
does not mean they are right!

I think my essential point previously is that rewriting easy stuff (in a 
different language) typically fails to push the frontier.



On Wednesday, January 20, 2021 at 5:54:51 AM UTC-8 kcrisman wrote:



As to the question of replacing backends, there is already a ticket (which I 
cannot find right now, my apologies) which started the process of seeing what 
doctests would fail if we went to Sympy as default. Presumably something 
similar could be done with this engine (I don't know if it is more for 
low-level symbolics or also things like integration).



In particular, the (very minimal) documentation (really an API is all) makes it 
seems more a replacement for things like Ginac (already in C++), not Maxima et 
al. I don't know if that would provide a noticeable speedup per se, though the 
SageManifolds ticket mentioned parallelization so perhaps it is better suited 
for that?


--
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sage-devel/879dd941-95a0-4f2f-b5ac-96f60439f80dn%40googlegroups.com.


--
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sage-devel/53e6e905-27ec-4545-a2ef-bca1eb01029cn%40googlegroups.com.




--
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from 

[sage-devel] Re: "Real Field" -> "Real Floating-point Field"

2020-10-15 Thread Thierry Dumont


Le 14/10/2020 à 20:48, Matthias Koeppe a écrit :
> On Tuesday, October 13, 2020 at 11:28:08 PM UTC-7, vdelecroix wrote:
> 
> I would like to discuss the patchbomb at
> 
>     https://trac.sagemath.org/ticket/24523
> 
> 
> The ticket hopes to change the string representation from
> "Real Field with XX bits of precision" to "Real Floating-point
> field with XX bits of precision".
> 
>  
 +1

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sage-devel/a77cb081-a650-8bb8-d323-b5e4422000c8%40math.univ-lyon1.fr.
<>

[sage-devel] 9.2 beta 14

2020-10-02 Thread Thierry Dumont
On Ubuntu 20-04 after a make distclean:

-compilation ok.
-make ptestlong: all tests passed.

t.d.

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sage-devel/e588138d-9ba9-6822-c1af-aa8fd094%40math.univ-lyon1.fr.
<>

Re: [sage-devel] Build of 9.2beta14 failing on Ubuntu - Python 3.8.5

2020-10-02 Thread Thierry Dumont
Yes, readline has changed since a recent upgrade of Ubuntu (20-04.
make distclean
and rebuild will solve the problem (after a long compilation time).
t.d.

Le 02/10/2020 à 02:27, Kiran Kedlaya a écrit :
> I just tried to build 9.2beta14 on my Ubuntu laptop and am getting an
> error in python3-3.8.5 (the systemwide Py3 is 3.8.2, although maybe I
> should just wait a few days for Ubuntu to drop 20.10). 
> 
> The key line in the log seems to be
> 
> [python3-3.8.5] ModuleNotFoundError: No module named 'readline'
> 
> even though readline-8.0 itself built successfully.
> 
> Kiran
> 
> -- 
> You received this message because you are subscribed to the Google
> Groups "sage-devel" group.
> To unsubscribe from this group and stop receiving emails from it, send
> an email to sage-devel+unsubscr...@googlegroups.com
> .
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/sage-devel/870f0629-316c-47e8-ba48-1c51974d4d4fn%40googlegroups.com
> .

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sage-devel/447366a5-3503-a65f-d296-cd82bae4f735%40math.univ-lyon1.fr.
<>

Re: [sage-devel] Apple on ARM

2020-06-24 Thread Thierry Dumont
Some weeks ago, there was a post on this list (or an other sage list)
where somebody said he succeeded compiling sage on a Raspberry 4... so...
t.

Le 23/06/2020 à 14:11, Dima Pasechnik a écrit :
> Sage used to work on ARM chips, we stopped testing on it due to lack of
> hardware in 2015 or so.
> 
> We can pick it up again.
> 
> 
> On Tue, 23 Jun 2020, 13:03 kcrisman,  > wrote:
> 
> See e.g.
> 
> https://www.theverge.com/2020/6/21/21298607/first-arm-mac-macbook-pro-imac-ming-chi-kuo-wwdc-2020
> 
> When Apple moved to Intel, there were definitely some impacts for
> Sage - obviously needing to provide two sets of binaries - but I
> wonder if maybe the Sage ecosystem is a lot more stable w.r.t.
> processors this time around (e.g. assembly code already available
> for major upstream packages).  Maybe it's so trivial that I am
> foolish for mentioning it, but I thought I would ask if anyone has
> thoughts on this, as I couldn't find anything on this forum about it
> yet.
> 
> -- 
> You received this message because you are subscribed to the Google
> Groups "sage-devel" group.
> To unsubscribe from this group and stop receiving emails from it,
> send an email to sage-devel+unsubscr...@googlegroups.com
> .
> To view this discussion on the web visit
> 
> https://groups.google.com/d/msgid/sage-devel/7aa3429b-d2d6-4453-b708-793da943275ao%40googlegroups.com
> 
> .
> 
> -- 
> You received this message because you are subscribed to the Google
> Groups "sage-devel" group.
> To unsubscribe from this group and stop receiving emails from it, send
> an email to sage-devel+unsubscr...@googlegroups.com
> .
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/sage-devel/CAAWYfq0B_TZssoMRqwvrp7bgjz99WRm4OzQ%3DguZcy5CP1atxtg%40mail.gmail.com
> .

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sage-devel/991621e6-7de4-03ff-387e-3e6a4fdd9595%40math.univ-lyon1.fr.
<>

Re: [sage-devel] Re: Want to add generalised Newton's method for solving a nonlinear systems of equations to Sage

2020-05-02 Thread Thierry Dumont
Hello,

The question is : what sort of problem do you want to solve ? with what
method ?

Is this a pure Newton-(Raphson) method?

A) If yes:
 1) If you compute in RDF floats (that is: your machine floating points
  numbers, aka "double" in C), the best you have to do is to use the
scipy implementation, and hope (like always with Newton method) that it
will converge. It will also be slow, because the F and DF functions will
be coded in pure python (maybe, this will not be a problem if you want
to solve small problems). I think there is no need to add a new method
for RDF. May be creating an optimized method (using cython ?) could be
interesting.

See:
https://docs.scipy.org/doc/scipy/reference/generated/scipy.optimize.newton.html
for the scipy implementation.

 2) If you want to compute in an other set of numbers, there is nothing
(as far as I know) in Sage. For example, the Newton method can be
implemented un interval arithmetic (RealIntervalField or RealBallField).
But implementing something a bit generic is certainly not so easy.

B) If no:
That is to say you are interested by implementing a generalized Newton,
or quasi Newton method, something like that...
These methods are very specialized, and I am not sure it will be an
useful tool. But I can be wrong.

Yours,

Thierry.



Le 02/05/2020 à 00:28, Daniel Khodabakhsh a écrit :
> Sorry forgot to give details on the algorithm I want to add.
> 
> Here's a Wikipedia link o
> n
> the subject.
> 
> To summarise, it's an iterative numerical method, similar
> to sage.numerical.optimize.find_root
> 
>  but
> whose usage would be closer to sage.symbolic.relation.solve
> .
> 
> Not sure if google groups supports LaTeX but here's a try:
> $$x_{n+1} = x_{n} - J_F(x_n)^{-1}F(x_n)$$
> 
> On Friday, May 1, 2020 at 3:09:34 PM UTC-7, Daniel Khodabakhsh wrote:
> 
> Hello,
> 
> I have a generalised implementation of Newton's method for solving a
> nonlinear system of equations that I want to add to Sage.
> This would be my first potential contribution so I had a few
> questions before I can move forward.
> 
> Questions #1:
> The reason I wrote an implementation was because I couldn't find
> this algorithm in Sage. Before I proceed, could someone confirm that
> this indeed doesn't already exist?
> 
> Questions #2:
> If it really isn't part of Sage yet, which module should I add this to?
> 
> Once I get this information I'll work on integrating it into the
> recommended module and create a new ticket on https://trac.sagemath.org/
> 
> If I have the process wrong please let me know!
> 
> -- 
> You received this message because you are subscribed to the Google
> Groups "sage-devel" group.
> To unsubscribe from this group and stop receiving emails from it, send
> an email to sage-devel+unsubscr...@googlegroups.com
> .
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/sage-devel/cd1aa005-abcb-4fcb-a436-5afaac4739a0%40googlegroups.com
> .

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sage-devel/a58ed617-9694-1c4d-1ea7-02822fc64832%40math.univ-lyon1.fr.
<>

Re: [sage-devel] Re: Buiding sage on a Raspberry Pi 4B

2019-12-31 Thread Thierry Dumont
I wanted to say "...have NO spool ..."

Apologize.

t.d.

Le 31/12/2019 à 19:10, Thierry Dumont a écrit :
>
> Are you sure you don't have a problem with the size of the ram ? You
> certainly have spool virtual memory partition.
>
> I have run some programs on a PI (3) (not Sage), and when the memory
> was full, I have got some segmentation faults (this should not happen,
> but..). This was on raspbian, two years ago.
>
> Yours,
>
> t.d.
>
> Le 31/12/2019 à 11:36, Jaap Spies a écrit :
>> I did run the failing tests! This is really frustrating.
>>
>>
>> ./sage -t --long  src/sage/rings/tests.py # Killed due to
>> segmentation fault NOW: All test passed!!
>> ./sage -t --long 
>> src/sage/schemes/elliptic_curves/ell_rational_field.py # Killed due
>> to segmentation fault NOW: All test passed!!
>> ./sage -t --long  src/sage/combinat/ncsf_qsym/ncsf.py # Killed due to
>> segmentation fault NOW: All test passed!!
>> ./sage -t --long  src/sage/structure/coerce_dict.pyx # 1 failure
>> len(LE) Expected 1 Got: 50 
>> ./sage -t --long 
>> src/sage/modular/modform_hecketriangle/abstract_space.py # Killed due
>> to segmentation fault NOW: All test passed!!
>> ./sage -t --long  src/sage/modular/modform/cuspidal_submodule.py #
>> Timed out  NOW: All test passed!!  in NB 51.16 seconds
>> ./sage -t --long  src/sage/modular/arithgroup/congroup_gammaH.py #
>> Timed out total time 1832.3 seconds NOW: All test passed in 11.74 seconds
>> ./sage -t --long 
>> src/sage/combinat/designs/evenly_distributed_sets.pyx  # Timed out
>> NOW:  All test passed in 8.11 seconds
>> ./sage -t --long  src/sage/modular/modform/tests.py # Times out
>> 1822.7 seconds NOW: All test passed in 4.12 seconds 
>> ./sage -t --long  src/sage/sets/set.py # Times out 1821.5 seconds 
>> NOW: All test passed in 2.08 seconds
>> ./sage -t --long  src/sage/misc/weak_dict.pyx  # 11 doctests failed
>> ./sage -t --long  src/sage/cpython/dict_del_by_value.pyx # 1 doctest
>> failed 
>>
>>
>> On Tuesday, December 31, 2019 at 10:58:38 AM UTC+1, Jaap Spies wrote:
>>
>>
>>
>> On Monday, December 30, 2019 at 11:21:34 PM UTC+1, Jaap Spies wrote:
>>
>>
>>
>> I'll make a bash script to do the tests stand alone.
>>
>>
>>
>> bash test_errors_rc1 >> err.log 2>&1 &
>>
>> Resume:
>> ./sage -t --long  src/sage/rings/tests.py # Killed due to
>> segmentation fault 
>> ./sage -t --long 
>> src/sage/schemes/elliptic_curves/ell_rational_field.py # Killed
>> due to segmentation fault 
>> ./sage -t --long 
>> src/sage/rings/function_field/function_field.py  # All tests passed
>> ./sage -t --long 
>> src/sage/schemes/cyclic_covers/cycliccover_finite_field.py  # All
>> tests passed
>> ./sage -t --long  src/sage/combinat/sf/macdonald.py  # All tests
>> passed
>> ./sage -t --long  src/sage/combinat/ncsf_qsym/ncsf.py # Killed
>> due to segmentation fault 
>> ./sage -t --long 
>> src/sage/algebras/lie_algebras/classical_lie_algebra.py  # All
>> tests passed
>> ./sage -t --long 
>> src/sage/rings/function_field/function_field_valuation.py  # All
>> tests passed
>> ./sage -t --long  src/sage/rings/number_field/number_field.py  #
>> All tests passed
>> ./sage -t --long  src/sage/geometry/cone.py  # All tests passed
>> ./sage -t --long 
>> src/sage/modular/btquotients/pautomorphicform.py  # All tests passed
>> ./sage -t --long  src/sage/arith/misc.py  # All tests passed
>> ./sage -t --long  src/sage/graphs/strongly_regular_db.pyx  # All
>> tests passed
>> ./sage -t --long  src/sage/structure/coerce_dict.pyx # 1 failure
>> len(LE) Expected 1 Got: 50 
>> ./sage -t --long 
>> src/sage/modular/modform_hecketriangle/abstract_space.py # Killed
>> due to segmentation fault 
>> ./sage -t --long  src/sage/modular/modform/find_generators.py  #
>> All tests passed
>> ./sage -t --long  src/sage/modular/modform/cuspidal_submodule.py
>> # Timed out  
>> ./sage -t --long  src/sage/schemes/toric/chow_group.py  # All
>> tests passed
>> ./sage -t --long 
>> src/sage/groups/matrix_gps/finitely_generated.py  # All tests passed
>> ./sage -t --long  src/sage/rings/function_field/ideal.py  # All
>> tests passed
>> ./sage -t --long  src/sage/misc/functional.py  # All tests passed
>> ./sage -t --long  src/sage/rings

Re: [sage-devel] Re: Buiding sage on a Raspberry Pi 4B

2019-12-31 Thread Thierry Dumont
Are you sure you don't have a problem with the size of the ram ? You
certainly have spool virtual memory partition.

I have run some programs on a PI (3) (not Sage), and when the memory was
full, I have got some segmentation faults (this should not happen,
but..). This was on raspbian, two years ago.

Yours,

t.d.

Le 31/12/2019 à 11:36, Jaap Spies a écrit :
> I did run the failing tests! This is really frustrating.
>
>
> ./sage -t --long  src/sage/rings/tests.py # Killed due to segmentation
> fault NOW: All test passed!!
> ./sage -t --long 
> src/sage/schemes/elliptic_curves/ell_rational_field.py # Killed due to
> segmentation fault NOW: All test passed!!
> ./sage -t --long  src/sage/combinat/ncsf_qsym/ncsf.py # Killed due to
> segmentation fault NOW: All test passed!!
> ./sage -t --long  src/sage/structure/coerce_dict.pyx # 1 failure
> len(LE) Expected 1 Got: 50 
> ./sage -t --long 
> src/sage/modular/modform_hecketriangle/abstract_space.py # Killed due
> to segmentation fault NOW: All test passed!!
> ./sage -t --long  src/sage/modular/modform/cuspidal_submodule.py #
> Timed out  NOW: All test passed!!  in NB 51.16 seconds
> ./sage -t --long  src/sage/modular/arithgroup/congroup_gammaH.py #
> Timed out total time 1832.3 seconds NOW: All test passed in 11.74 seconds
> ./sage -t --long 
> src/sage/combinat/designs/evenly_distributed_sets.pyx  # Timed out
> NOW:  All test passed in 8.11 seconds
> ./sage -t --long  src/sage/modular/modform/tests.py # Times out 1822.7
> seconds NOW: All test passed in 4.12 seconds 
> ./sage -t --long  src/sage/sets/set.py # Times out 1821.5 seconds 
> NOW: All test passed in 2.08 seconds
> ./sage -t --long  src/sage/misc/weak_dict.pyx  # 11 doctests failed
> ./sage -t --long  src/sage/cpython/dict_del_by_value.pyx # 1 doctest
> failed 
>
>
> On Tuesday, December 31, 2019 at 10:58:38 AM UTC+1, Jaap Spies wrote:
>
>
>
> On Monday, December 30, 2019 at 11:21:34 PM UTC+1, Jaap Spies wrote:
>
>
>
> I'll make a bash script to do the tests stand alone.
>
>
>
> bash test_errors_rc1 >> err.log 2>&1 &
>
> Resume:
> ./sage -t --long  src/sage/rings/tests.py # Killed due to
> segmentation fault 
> ./sage -t --long 
> src/sage/schemes/elliptic_curves/ell_rational_field.py # Killed
> due to segmentation fault 
> ./sage -t --long  src/sage/rings/function_field/function_field.py 
> # All tests passed
> ./sage -t --long 
> src/sage/schemes/cyclic_covers/cycliccover_finite_field.py  # All
> tests passed
> ./sage -t --long  src/sage/combinat/sf/macdonald.py  # All tests
> passed
> ./sage -t --long  src/sage/combinat/ncsf_qsym/ncsf.py # Killed due
> to segmentation fault 
> ./sage -t --long 
> src/sage/algebras/lie_algebras/classical_lie_algebra.py  # All
> tests passed
> ./sage -t --long 
> src/sage/rings/function_field/function_field_valuation.py  # All
> tests passed
> ./sage -t --long  src/sage/rings/number_field/number_field.py  #
> All tests passed
> ./sage -t --long  src/sage/geometry/cone.py  # All tests passed
> ./sage -t --long 
> src/sage/modular/btquotients/pautomorphicform.py  # All tests passed
> ./sage -t --long  src/sage/arith/misc.py  # All tests passed
> ./sage -t --long  src/sage/graphs/strongly_regular_db.pyx  # All
> tests passed
> ./sage -t --long  src/sage/structure/coerce_dict.pyx # 1 failure
> len(LE) Expected 1 Got: 50 
> ./sage -t --long 
> src/sage/modular/modform_hecketriangle/abstract_space.py # Killed
> due to segmentation fault 
> ./sage -t --long  src/sage/modular/modform/find_generators.py  #
> All tests passed
> ./sage -t --long  src/sage/modular/modform/cuspidal_submodule.py #
> Timed out  
> ./sage -t --long  src/sage/schemes/toric/chow_group.py  # All
> tests passed
> ./sage -t --long 
> src/sage/groups/matrix_gps/finitely_generated.py  # All tests passed
> ./sage -t --long  src/sage/rings/function_field/ideal.py  # All
> tests passed
> ./sage -t --long  src/sage/misc/functional.py  # All tests passed
> ./sage -t --long  src/sage/rings/number_field/totallyreal_rel.py 
> # All tests passed
> ./sage -t --long  src/sage/modular/hypergeometric_motive.py  # All
> tests passed
> ./sage -t --long  src/sage/categories/loop_crystals.py  # All
> tests passed
> ./sage -t --long  src/sage/algebras/iwahori_hecke_algebra.py  #
> All tests passed
> ./sage -t --long  src/sage/schemes/curves/projective_curve.py  #
> All tests passed
> ./sage -t --long  src/sage/modular/overconvergent/genus0.py  # All
> tests passed
> ./sage -t --long  src/sage/combinat/permutation.py  # All tests passed
> ./sage -t --long 
> src/sage/rings/number_field/number_field_ideal.py  # All tests passed
> ./sage -t --long 
> src/sage/combinat/designs/orthogonal_arrays_find_recursive.pyx  #
> All tests passed
> ./sage -t --long  

Re: [sage-devel] How would you like your parallel linear algebra ?

2019-03-22 Thread Thierry Dumont
Hi,

May be what openblas is doing could be inspiring.

 Openblas (I hope it did not changed, I have tested this sometime ago)
allows to use the number of thread defined for open_mp (by setting an
environment variable or by program), and also to specify the number of
threads for openblas. This is important (at least for me) when you do
nested parallelism: you have say n threads, each one is using openblas
and thus you dont want openblas to be parallel.

Also, it is possible do get the numer of cpu in the program (but
counting them twice in cas of hyperthreading, and more with exotic
processors (4 threads / cpu with XeonPhi)).

Thierry

Le 22/03/2019 à 11:14, Clement Pernet a écrit :
> Hi,
> 
> In https://trac.sagemath.org/ticket/27444 we are exposing the parallel
> versions (using OpenMP) of fflas-ffpack routines used in SageMath. This
> is only about multicore parallelism, based on OpenMP.
> 
> We would like to discuss on the best design to expose them to the end user:
> 
> 1. Should the default behaviour be sequential or parallel ?
> 
> 2. If the default is parallel, how many cores should be used by default?
> I guess the default should be whatever value openmp_get_numthreads()
> returns, which is usually the number of cores, however, in most systems
> where hyperthreading is enabled, this means that we will use twice as
> many cores as the number of real cores, which will slow down the
> computation.
> 
> 3. What interface do we want for the sage user who wants to
> 
>   3a switch between sequential and parallel,
> 
>   3b specify the number of cores to be used ?
> 
> Should there be some kind of environment variable containing such
> informations?
> 
> Note that passing an extra argument is not (always) an option, as we
> would like that the * operator for matrices benefits from this
> parallization.
> 
> In its current status, the branch on #27444 calls parallel fgemm when
> multiplying two modn_dense matrices over the maximal number of available
> OMP threads. It currently possible to use a specified number of threads
> by exporting OMP_NUM_THREADS=XXX before lauching sage.
> 
> Thanks for your feedback.
> 
> Clément
> 

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.
<>

Re: [sage-devel] Re: "COMPUTATIONAL MATHEMATICS WITH SAGEMATH"

2018-12-13 Thread Thierry Dumont
For sure, you can.
Thanks !
t.d.

Le 14/12/2018 à 02:09, Travis Scrimshaw a écrit :
> 
> 
> On Thursday, December 13, 2018 at 1:28:09 AM UTC+10, William wrote:
> 
> "COMPUTATIONAL MATHEMATICS WITH SAGEMATH" is now in English and
> published on paper by a traditional publisher.
> http://bookstore.siam.org/ot160/ 
> 
> There's also a free online version.
> http://sagebook.gforge.inria.fr/english.html
>  #sagemath
> 
>  
> Can we add these links to our personal webpages (as a way to help
> promote the book)?
> 
> Best,
> Travis
> 
> -- 
> You received this message because you are subscribed to the Google
> Groups "sage-devel" group.
> To unsubscribe from this group and stop receiving emails from it, send
> an email to sage-devel+unsubscr...@googlegroups.com
> .
> To post to this group, send email to sage-devel@googlegroups.com
> .
> Visit this group at https://groups.google.com/group/sage-devel.
> For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.
<>

Re: [sage-devel] sage --version not printing anything

2018-08-12 Thread Thierry Dumont
I have two versions od sage on my Ubuntu 18-0 machine, both compiled
from source (git downloaded).No problem

I obtain
SageMath version 8.3, Release Date: 2018-08-03
with the first one
SageMath version 8.4.beta0, Release Date: 2018-08-05

>which sage
/usr/local/bin/sage
>ls -l /usr/local/bin/sage
lrwxrwxrwx 1 root root 12 juin  24 19:29 /usr/local/bin/sage -> ../sage/sage
which is the good link to the sage script in the source directory.

Le 11/08/2018 à 23:53, Vincent Delecroix a écrit :
> On 8/11/18 2:00 PM, 'Justin C. Walker' via sage-devel wrote:
>>
>>
>>> On Aug 11, 2018, at 11:43 , Vincent Delecroix
>>> <20100.delecr...@gmail.com> wrote:
>>>
>>> Hello,
>>>
>>> After some effort, I built 8.4.beta0 though "sage --version" is not
>>> printing anything (nor --dumpversion). Is it only on my computer? Can
>>> you check with other versions as well?
>>
>> I tried this on two different versions of macOS (10.11.6, 10.13.6). 
>> Both work as expected.
>>
>> Some default questions (I assume “sage” refers to 8.4-b0):
>> - got VERSION.txt?
>> - got $SAGE_LOCAL/bin/sage-version.h?
>> - are the contents of these files correct?
>>
>> I also assume you’ve checked this sort of thing, but never hurts to ask.
> 
> Yes, files are there. Not sure whether they are "correct" though.
> 
> $ cat VERSION.txt
> SageMath version 8.4.beta0, Release Date: 2018-08-05
> 
> $ cat local/bin/sage-version.sh
> # Sage version information for shell scripts
> # This file is auto-generated by the sage-update-version script, do not
> edit!
> SAGE_VERSION='8.4.beta0'
> SAGE_RELEASE_DATE='2018-08-05'
> SAGE_VERSION_BANNER='SageMath version 8.4.beta0, Release Date: 2018-08-05'
> 
> Vincent
> 

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.
<>

Re: [sage-devel] SAGE 8.1 will not compile under Ubuntu 17.10: error installing giac-1.2.3.47.p0

2018-02-16 Thread Thierry Dumont
I have an Ubuntu 17.10, and 8.2 beta 5 compiles without anay problems.
May be I must say that I upraded from one version to another with
git pull origin develop
just issuing  make after the git command. But I don't think this could
hide some problem.
Yours
t.d.

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.
<>

Re: [sage-devel] Re: Issue with quick start

2017-11-30 Thread Thierry Dumont
Le 29/11/2017 à 08:40, Emmanuel Charpentier a écrit :
> In French, we name that "les mathématiques"... ISTR that there are
> serious etymological reasons. The US's "math" sounds like carelessness
> (and the french "désinvolture" would be a better designation...).
> 
> --
> Emmanuel Charpentier
> 
When I was a young student, the Church of Bourbaki was omnipotent. It
was a sin to say "les mathématiques" (mathematics).  The First
Commandment was: Thou shalt say "La Mathématique".
t.d.

> Le mercredi 29 novembre 2017 01:03:05 UTC+1, Matthew Schroeder a écrit :
> 
> In the headings of the quick start it says things like "Symbolic
> *Maths*"  and "Numerical *Maths*"
> 
> It is MATH not MATHS.  
> 
> -- 
> You received this message because you are subscribed to the Google
> Groups "sage-devel" group.
> To unsubscribe from this group and stop receiving emails from it, send
> an email to sage-devel+unsubscr...@googlegroups.com
> .
> To post to this group, send email to sage-devel@googlegroups.com
> .
> Visit this group at https://groups.google.com/group/sage-devel.
> For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.
<>

Re: [sage-devel] Re: sage built with icc/icpc/gfortran

2017-06-28 Thread Thierry Dumont

Be careful with icc compiler family.

It is relatively frequent to get small differences between gcc and icc
floating (double/float) computations.A specialist of floating point said
that icc build faster programs fro two reasons:
1) Intel knows his processors,
2) they make excessive assumptions on floating point expression (more or
less that addition is associative, something like fast-math option in gcc).
t.

Le 28/06/2017 à 04:42, François Bissey a écrit :
> 
> 
> On 28/06/17 10:51, François Bissey wrote:
>> with the peculiar being:
>> **
>> File "src/sage/rings/real_double.pyx", line 2296, in
>> sage.rings.real_double.RealDoubleElement.arccos
>> Failed example:
>> i.arccos() == q
>> Expected:
>> True
>> Got:
>> False
>> **
>> If anyone has an idea.
> 
> Definitely numerical noise.
> sage: q = RDF.pi()/3
> sage: i = q.cos()
> sage: q - i.arccos()
> -2.220446049250313e-16
> 
> Is this supposed to be exact?
> 

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.
<>

Re: [sage-devel] sage on raspberry pi 3 fails to build gcc

2017-05-11 Thread Thierry Dumont
Le 11/05/2017 à 03:44, Brent Thomas a écrit :
> I have been trying to install sage on a raspberry pi 3. I didn't find a
> binary of any recent version, so I'm trying to build it from source.
> I've run into an error with sage building gcc. The relevant part of the
> gcc-5.4.0.log file is below.
> 

I have succeeded building sage from source on th pi3, possibly 8 months ago.
The installation succeeded without any difficulties.
The only problem was that, due to the lack of memory, I could not run
make in parallel; the compilation took more than 24 hours, but it worked.

t.d.

> g++   -g -DIN_GCC-fno-exceptions -fno-rtti
> -fasynchronous-unwind-tables -W -Wall -Wno-narrowing -Wwrite-strings
> -Wcast-qual -Wno-format -Wmissing-format-attribute -Woverloaded-virtual
> -pedantic -Wno-long-long -Wno-variadi$
> lto/lto-lang.o lto/lto.o lto/lto-object.o attribs.o
> lto/lto-partition.o lto/lto-symtab.o libbackend.a main.o tree-browser.o
> libcommon-target.a libcommon.a ../libcpp/libcpp.a
> ../libdecnumber/libdecnumber.a  -L/home/pi/$
> collect2: error: ld returned 1 exit status
> ../../src/gcc/lto/Make-lang.in:71: recipe for target 'lto1' failed
> make[6]: *** [lto1] Error 1
> make[6]: Leaving directory
> '/home/pi/Downloads/sage-7.6/local/var/tmp/sage/build/gcc-5.4.0/gcc-build/gcc'
> Makefile:4367: recipe for target 'all-stage1-gcc' failed
> make[5]: *** [all-stage1-gcc] Error 2
> make[5]: Leaving directory
> '/home/pi/Downloads/sage-7.6/local/var/tmp/sage/build/gcc-5.4.0/gcc-build'
> Makefile:19008: recipe for target 'stage1-bubble' failed
> make[4]: *** [stage1-bubble] Error 2
> make[4]: Leaving directory
> '/home/pi/Downloads/sage-7.6/local/var/tmp/sage/build/gcc-5.4.0/gcc-build'
> Makefile:899: recipe for target 'all' failed
> make[3]: *** [all] Error 2
> make[3]: Leaving directory
> '/home/pi/Downloads/sage-7.6/local/var/tmp/sage/build/gcc-5.4.0/gcc-build'
> 
> real64m56.236s
> user53m1.490s
> sys 2m58.710s
> 
> Error installing package gcc-5.4.0
> 
> 
> I've tried setting SAGE_INSTALL_GCC to no and using the default compiler
> (gcc 6.1.0) to build sage. Unfortunately, the ppl library fails to build
> when I do this as it can't find an appropriate version of the gmp
> library. (As a side note I can build ppl directly by setting the
> --with-gmp-prefix flag to the appropriate directory, but I don't know
> how to set this flag when building sage.)
> 
> Any advice on building sage on a raspberry pi would be welcome.
> 
> -- 
> You received this message because you are subscribed to the Google
> Groups "sage-devel" group.
> To unsubscribe from this group and stop receiving emails from it, send
> an email to sage-devel+unsubscr...@googlegroups.com
> .
> To post to this group, send email to sage-devel@googlegroups.com
> .
> Visit this group at https://groups.google.com/group/sage-devel.
> For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.
<>

[sage-devel] Failed transition from 8.0.beta2 to 8.0.beta3

2017-04-24 Thread Thierry Dumont
Hi,

Compilation fails on lcalc-1.23.p14.
(Ubuntu 17-04, x86-64).

This is during linking (got a lot of undefined references):



lib -Wl,-rpath,/usr/local/sage-develop/sage/local/lib
-L/usr/local/sage-develop/sage/local/lib -lpari -lgmp
-L/usr/local/sage-develop/sage/local/lib -lpari -lgmp Lglobals.o
Lgamma.o Lriemannsiegel.o Lriemannsiegel_blfi.o Ldokchitser.o
Lcommandline_globals.o Lcommandline_misc.o Lcommandline_numbertheory.o
Lcommandline_values_zeros.o Lcommandline_elliptic.o Lcommandline_twist.o
Lcommandline.o cmdline.o -o lcalc
Lcommandline_elliptic.o: In function `cxcompotor.constprop.61':
Lcommandline_elliptic.cc:(.text+0x47): undefined reference to `pari_err'
Lcommandline_elliptic.cc:(.text+0x63): undefined reference to `avma'
Lcommandline_elliptic.cc:(.text+0x6a): undefined reference to
`pari_mainstack'
Lcommandline_elliptic.cc:(.text+0xa6): undefined reference to `affir'
Lcommandline_elliptic.cc:(.text+0xb3): undefined reference to `avma'
Lcommandline_elliptic.cc:(.text+0xba): undefined reference to
`pari_mainstack'
Lcommandline_elliptic.cc:(.text+0x102): undefined reference to `affir'
Lcommandline_elliptic.cc:(.text+0x121): undefined reference to
`pari_mainstack'
Lcommandline_elliptic.cc:(.text+0x148): undefined reference to
`new_chunk_resize'

Lcommandline_elliptic.cc:(.text+0x11b3): undefined reference to
`pari_mainstack'
Lcommandline_elliptic.cc:(.text+0x11ca): undefined reference to
`new_chunk_resize'
Lcommandline_elliptic.cc:(.text+0x1204): undefined reference to `pari_err'
Lcommandline_elliptic.cc:(.text+0x124c): undefined reference to
`new_chunk_resize'
Lcommandline.o: In function `main':
Lcommandline.cc:(.text.startup+0x13ea): undefined reference to
`paristack_setsize'
Lcommandline.cc:(.text.startup+0x14b6): undefined reference to `pari_init'
collect2: error: ld returned 1 exit status
Makefile:162: recipe for target 'lcalc' failed


t.d.

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.
<>

Re: [sage-devel] Re: Computing invariants of hyperbolic Coxeter groups

2017-04-01 Thread Thierry Dumont
I dont have any culture on Coxeter groups, but a colleague of mine,
the late Fokko DuCloux developed Coxeter3, an optional  package for
sage, and we try to maintain it, from one version to an other.

-> Does your code as something to do with what this package computes?
-> Could it be an extension of coxeter3 ?
-> ...

Yours
t.d.


Le 31/03/2017 à 14:03, mmarco a écrit :
> I recommend you to start by reading the sage developer guide:
> 
> http://doc.sagemath.org/html/en/developer/index.html
> 
> It covers all the development process.
> 
> I am no expert in Coxeter groups, but from what I see, we already have
> support for them in Sage. So I will assume that your software would
> provide the ability to compute certain properties that are not available
> in Sage already (or maybe a faster implementation of already available
> ones). In that case, you could add CoxIter as an optional package (we
> usually require packages to be optional for one year before becoming
> standard), and also write an interface to it from Sage, together with
> the corresponding methods in CoxeterGroup class to call that interface.
> The interface can be done using pexpect, but if it is possible to adapt
> your software as a C++ library, it would be much faster to just call it
> through cython. I recommend to do all these steps in one ticket.
> 
> 
> If you want to take a look at an example of a ticket where something
> similar was done, you can look at: 
> 
> https://trac.sagemath.org/ticket/20815
> 
> El viernes, 31 de marzo de 2017, 11:18:15 (UTC+2), Rafael Guglielmetti
> escribió:
> 
> Dear sage developers,
> During my PhD I developed a C++ program to compute invariants of
> hyperbolic Coxeter groups.
> 
> The program was published in the LMS Journal of Computations and
> Mathematics and is now on GitHub:
> https://github.com/rgugliel/CoxIter
> 
> 
> I am wondering if it could be included into SAGE? If yes, where
> should I start?
> I also developed a GAP package, maybe it could also be a way?
> 
> Thanks a lot for any hint.
> 
> Best,
> 
> Rafael Guglielmetti
> 
> -- 
> You received this message because you are subscribed to the Google
> Groups "sage-devel" group.
> To unsubscribe from this group and stop receiving emails from it, send
> an email to sage-devel+unsubscr...@googlegroups.com
> .
> To post to this group, send email to sage-devel@googlegroups.com
> .
> Visit this group at https://groups.google.com/group/sage-devel.
> For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.
<>

Re: [sage-devel] Re: integration algorithms

2017-02-28 Thread Thierry Dumont
Following https://en.wikipedia.org/wiki/Risch_algorithm ,the Risch
algorithm is able to find an antiderivative of:

x |-> x/sqrt(x^4+10*x^2-96*x-71)

but not of:

x |-> x/sqrt(x^4+10*x^2-96*x-72) .

What can do Sage?

#
fok(x)=x/sqrt(x^4+10*x^2-96*x-71)
fnot_ok(x)=x/sqrt(x^4+10*x^2-96*x-72)
#
algs=["maxima","sympy","fricas"]
#
for alg in algs:
print alg,integral(fok,x,algorithm=alg)
#
for alg in algs:
print alg,integral(fnot_ok,x,algorithm=alg)
#-

For fnot_ok no primitive is found (may be an other algorithm could find
it -it exists in terms of elliptic integrals-)

For f_ok, *only*  *fricas* finds the primitive:

maxima x |--> integrate(x/sqrt(x^4 + 10*x^2 - 96*x - 71), x)
sympy x |--> integrate(x/sqrt(x^4 + 10*x^2 - 96*x - 71), x)
fricas x |--> 1/8*log(x^8 + 20*x^6 - 128*x^5 + 54*x^4 - 1408*x^3 +
3124*x^2 + (x^6 + 15*x^4 - 80*x^3 + 27*x^2 - 528*x + 781)*sqrt(x^4 +
10*x^2 - 96*x - 71) + 10001)

The wikipedia paper says that Risch algorithm was implemented in Macsyma
(and thus I think in maxima!). So, iffricas and maxima use Risch
algorithm, the implementation in fricas is better, or may be fricas uses
some other method.

What about maple and mathematica ? As far as I remember maple can
integrate f_ok. I have no more access to maple to look at this :-) .

t.



-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.
<>

Re: [sage-devel] denominator() hangs on a large fraction

2017-01-04 Thread Thierry Dumont
Le 04/01/2017 à 16:47, Eric Gourgoulhon a écrit :
> Hi,
> 
> In Sage 7.5.rc1:
> 

same for me in7.5.rc1; works in 7.4.

t.
> |
> sage:var('x y')
> (x,y)
> sage:z =(x^18+60*x^17+331776*(x^2-1)*y^16+1599*x^16+25880*x^15+110
> :592*(x^4+15*x^3+99*x^2+485*x +1200)*y^14+266700*x^14+160*x^
> :13-9216*(17*x^6+60*x^5-417*x^4-3040*x^3-13425*x^2-31020*x -16
> :975)*y^12+3533300*x^12-4005000*x^11+9216*(9*x^8-60*x^7-509*x^6-
> :2430*x^5-9525*x^4-24260*x^3-71775*x^2-227250*x -290600)*y^10-1
> :7787450*x^10-1842*x^9+5760*(7*x^10+90*x^9+473*x^8+2460*x^7+
> :10050*x^6+15200*x^5+53790*x^4+120900*x^3+198455*x^2+741350*x +
> :1103625)*y^8+15656250*x^8+31485000*x^7-192*(143*x^12+675*x^11-10
> :43*x^10-7575*x^9-52650*x^8-224850*x^7-156150*x^6+1001250*x^5+3
> :726075*x^4+6217375*x^3+4145625*x^2+19413125*x +)*y^6+3527
> :500*x^6+12975000*x^5+96*(93*x^14-105*x^13-1693*x^12-13470*x^11-
> :99575*x^10-222675*x^9-149025*x^8-1024500*x^7-2270025*x^6+236662
> :5*x^5+9545625*x^4+11931250*x^3+451875*x^2+11346875*x +28273125)*y
> :^4+80032500*x^4+102025000*x^3+192*(x^16+30*x^15+399*x^14+3955*
> :x^13+19950*x^12+3765*x^11+19850*x^10+197000*x^9+47025*x^8+7700
> :0*x^7+646875*x^6-598125*x^5-2642500*x^4-2896875*x^3+1117500*x^2
> :+1581250*x -687500)*y^2-78609375*x^2-180937500*x -150390625)/(x^14
> :+(x^2-1)*y^12-x^12-6*(x^4-x^2)*y^10+15*(x^6-x^4)*y^8-20*(x^
> :8-x^6)*y^6+15*(x^10-x^8)*y^4-6*(x^12-x^10)*y^2)
> sage:z.numerator()
> x^18+192*x^16*y^2+8928*x^14*y^4-27456*x^12*y^6+40320*x^10*y^8+82944*x^8*y^10-156672*x^6*y^12+110592*x^4*y^14+331776*x^2*y^16+60*x^17+5760*x^15*y^2-10080*x^13*y^4-129600*x^11*y^6+518400*x^9*y^8-552960*x^7*y^10-552960*x^5*y^12+1658880*x^3*y^14+1599*x^16+76608*x^14*y^2-162528*x^12*y^4+200256*x^10*y^6+2724480*x^8*y^8-4690944*x^6*y^10+3843072*x^4*y^12+10948608*x^2*y^14-331776*y^16+25880*x^15+759360*x^13*y^2-1293120*x^11*y^4+1454400*x^9*y^6+14169600*x^7*y^8-22394880*x^5*y^10+28016640*x^3*y^12+53637120*x*y^14+266700*x^14+3830400*x^12*y^2-9559200*x^10*y^4+10108800*x^8*y^6+57888000*x^6*y^8-87782400*x^4*y^10+123724800*x^2*y^12+132710400*y^14+160*x^13+722880*x^11*y^2-21376800*x^9*y^4+43171200*x^7*y^6+87552000*x^5*y^8-223580160*x^3*y^10+285880320*x*y^12+3533300*x^12+3811200*x^10*y^2-14306400*x^8*y^4+29980800*x^6*y^6+309830400*x^4*y^8-661478400*x^2*y^10+156441600*y^12-4005000*x^11+37824000*x^9*y^2-98352000*x^7*y^4-19224*x^5*y^6+696384000*x^3*y^8-2094336000*x*y^10-17787450*x^10+9028800*x^8*y^2-217922400*x^6*y^4-715406400*x^4*y^6+1143100800*x^2*y^8-49260256*y^10-1842*x^9+14784000*x^7*y^2+227196000*x^5*y^4-1193736000*x^3*y^6+45421568*x*y^8+15656250*x^8+12420*x^6*y^2+91638*x^4*y^4-79596*x^2*y^6+1658880*y^8+31485000*x^7-11484*x^5*y^2+114540*x^3*y^4-53134896*x*y^6+3527500*x^6-50736*x^4*y^2+4338*x^2*y^4-59506352*y^6+12975000*x^5-55620*x^3*y^2+108930*x*y^4+80032500*x^4+21456*x^2*y^2+63224816*y^4+102025000*x^3+30360*x*y^2-78609375*x^2-13200*y^2-180937500*x
> -150390625
> sage:z.denominator()
> 
> 
> |
> Sage hangs then for ever, without any noticeable CPU activity...
> (Note that the numerator returned by Sage is correct.)
> 
> Is this a known issue ?
> 
> Eric.
> 
> PS: I am attaching the fraction in a file for the ease of cut and paste
> in a Sage session.
> 
> -- 
> You received this message because you are subscribed to the Google
> Groups "sage-devel" group.
> To unsubscribe from this group and stop receiving emails from it, send
> an email to sage-devel+unsubscr...@googlegroups.com
> .
> To post to this group, send email to sage-devel@googlegroups.com
> .
> Visit this group at https://groups.google.com/group/sage-devel.
> For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.
<>

Re: [sage-devel] Re: three.js on 7.5 beta 5: cpu...

2016-12-02 Thread Thierry Dumont
Le 02/12/2016 à 23:43, Paul Masson a écrit :
> Three.js performance is highly dependent on how the browser interacts
> with available graphics hardware. Chrome is the browser of choice for
> Three.js developers, but Firefox has made great improvements in the last
> couple years. If you're using the latest version of Firefox, then the
> bottleneck will be the GPU on your machine: if the browser can't
> interact efficiently with the GPU then the CPU has to pick up the slack.
> 
I use the beta version (weekly update) of Firefox.

But why is three.js consuming cpu when the browser shouls have nothing
to do ? (no interaction).

Ok, this is not very important.
t.d.

> Rendering this scene in Firefox on my year-old Macbook Pro settles down
> to around 30% of total CPU load. By contrast, rendering this scene in
> Firefox on my slightly older Windows 10 machine with a better GPU
> settles down to about 2% of total CPU load.
> 
> Opening multiple browser windows with Three.js scenes on my Macbook will
> bring the machine to a crawl and this is simply a machine limitation. I
> was initially worried this would be a major problem for Sage notebooks
> but it turns out not to be, since the notebook is a single browser window.
> 
> On Friday, December 2, 2016 at 7:31:27 AM UTC-8, tdumont wrote:
> 
> I have just tried three.js in 7.5 beta 5, doing (as in the doc):
> 
> sage: sage: p1 = sphere(color='red', opacity='.5')
> : sage: p2 = sphere((-1,-1,1), color='cyan', opacity='.3')
> : sage: p3 = sphere((1,-1,-1), color='yellow', opacity='.7')
> : sage: show(p1 + p2 + p3, viewer='threejs')
> 
> My firefox is launched, and the result is nice !
> 
> But looking at the cpu consumption of firefox, I found that it takes
> between 60% and 89% of one processor cpu time, even when I look at the
> steady graphic (mouse pointer out of the window).
> 
> May be there is nothing to do (some loop...),  but this is quite much!
> 
> t.d.
> 
> -- 
> You received this message because you are subscribed to the Google
> Groups "sage-devel" group.
> To unsubscribe from this group and stop receiving emails from it, send
> an email to sage-devel+unsubscr...@googlegroups.com
> .
> To post to this group, send email to sage-devel@googlegroups.com
> .
> Visit this group at https://groups.google.com/group/sage-devel.
> For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.
<>

[sage-devel] three.js on 7.5 beta 5: cpu...

2016-12-02 Thread Thierry Dumont
I have just tried three.js in 7.5 beta 5, doing (as in the doc):

sage: sage: p1 = sphere(color='red', opacity='.5')
: sage: p2 = sphere((-1,-1,1), color='cyan', opacity='.3')
: sage: p3 = sphere((1,-1,-1), color='yellow', opacity='.7')
: sage: show(p1 + p2 + p3, viewer='threejs')

My firefox is launched, and the result is nice !

But looking at the cpu consumption of firefox, I found that it takes
between 60% and 89% of one processor cpu time, even when I look at the
steady graphic (mouse pointer out of the window).

May be there is nothing to do (some loop...),  but this is quite much!

t.d.

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.
<>

Re: [sage-devel] Re: "Tri bool"

2016-11-16 Thread Thierry Dumont
Le 16/11/2016 à 18:01, Volker Braun a écrit :
> Exception don't handle the Indeterminate or True => True case.
> 
> If you really need the entire logic then the imho best solution is to be
> explicit; Define values True3, False3, Undefined3 that are independent
> of booleans and function Bool3.and(), Bool3.or(), ... for logic.
> 
> 

I agree: Exceptions, for me, are not a good model for  what happens when
a sufficient condition is not fulfilled.

t.

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.
<>

[sage-devel] "Tri bool"

2016-11-14 Thread Thierry Dumont
When developing a software which aims to prove something, it seems
necessary to be able to return something in
 {True, False, Indeterminate}.

Of course, there are many possibilities to do this, but is there a
"canonical" one in Sage ?

In C++, for example, there exists the Boost Tribool library
(http://www.boost.org/doc/libs/1_62_0/doc/html/tribool.html#tribool.introduction)
.

t.d.

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.
<>

[sage-devel] Mercurial in "Sage developers's guide (Release 7.4)"

2016-10-24 Thread Thierry Dumont

There remain some references to Mercurial in the developer's guide:

-page 114: "Overview of Patching SPKGS:"
   ..., use Mercurial to checck...

-page 115,
   -near top:
 The Mercurial configuration file ...
   -in the last paragraph:
  ... use Mercurial...
  hg tag...

t.d.

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.
<>

[sage-devel] Coxeter3 problem.

2016-10-24 Thread Thierry Dumont

Coxeter3 cannot be compiled (7.4 and 7.5beta0).

Actually this does not seem too difficult (a function has been has been
declared twice with the same signature).

May be it's better that the spkg maintainer (Mike Hansen) correct this
than me.


t.d.



-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.
<>

Re: [sage-devel] Re: Regression introduced by #21670 ?

2016-10-16 Thread Thierry Dumont
Le 15/10/2016 à 23:40, Volker Braun a écrit :
> %attach /tmp/

Same for me with rc1.
t.d.

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.
<>

Re: [sage-devel] multithreading performance issues

2016-10-05 Thread Thierry Dumont
What is the size of the matrix you use ?
Whatever you do, openmp in blas is interesting only if you compute with
large matrices.
If your computations are embedded  in an @parallel and launch n
processes, be careful  that your  OMP_NUM_THREADS be less or equal to
ncores/n.

My experience is (I am doing numerical computations)  that there are
very few cases where using openmp in blas libraries is interesting.
Parallelism should generally be searched at a higher level.

One of the interest of multithreaded blas is for constructors: with
Intel's mkl blas, you can obtain the maximum possible performances of
tah machines  when you use DGEMM (ie product of matrices), due to the
high arithmetic intensity of matrix vector products. On my 2x8 core
sandy bridge à 2.7GHZ, I have obtained more that 300 giga flops, but
with matrices of size > 1000 ! And this is only true for DGEMM

t.d.

Le 04/10/2016 à 20:26, Jonathan Bober a écrit :
> See the following timings: If I start Sage with OMP_NUM_THREADS=1, a
> particular computation takes 1.52 cpu seconds and 1.56 wall seconds.
> 
> The same computation without OMP_NUM_THREADS set takes 12.8 cpu seconds
> and 1.69 wall seconds. This is particularly devastating when I'm running
> with @parallel to use all of my cpu cores.
> 
> My guess is that this is Linbox related, since these computations do
> some exact linear algebra, and Linbox can do some multithreading, which
> perhaps uses OpenMP.
> 
> jb12407@lmfdb1:~$ OMP_NUM_THREADS=1 sage
> [...]
> SageMath version 7.4.beta6, Release Date: 2016-09-24
> [...]
> Warning: this is a prerelease version, and it may be unstable.
> [...]
> sage: %time M = ModularSymbols(5113, 2, -1)
> CPU times: user 509 ms, sys: 21 ms, total: 530 ms
> Wall time: 530 ms
> sage: %time S = M.cuspidal_subspace().new_subspace()
> CPU times: user 1.42 s, sys: 97 ms, total: 1.52 s
> Wall time: 1.56 s
> 
> 
> jb12407@lmfdb1:~$ sage
> [...]
> SageMath version 7.4.beta6, Release Date: 2016-09-24
> [...]
> sage: %time M = ModularSymbols(5113, 2, -1)
> CPU times: user 570 ms, sys: 18 ms, total: 588 ms
> Wall time: 591 ms
> sage: %time S = M.cuspidal_subspace().new_subspace()
> CPU times: user 3.76 s, sys: 9.01 s, total: 12.8 s
> Wall time: 1.69 s
> 
> -- 
> You received this message because you are subscribed to the Google
> Groups "sage-devel" group.
> To unsubscribe from this group and stop receiving emails from it, send
> an email to sage-devel+unsubscr...@googlegroups.com
> .
> To post to this group, send email to sage-devel@googlegroups.com
> .
> Visit this group at https://groups.google.com/group/sage-devel.
> For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.
<>

Re: [sage-devel] State of sage built with clang/clang++ on OS X

2016-09-18 Thread Thierry Dumont
Le 17/09/2016 à 22:15, Francois Bissey a écrit :
> I don’t know about debian based distro specifically but installing clang
> shouldn’t remove gcc, they are orthogonal to each other.
> 

I confirm what François says:

You can install clang and the gcc programs togeteher on Debian and
Debian like distributions.

Yours,
t.
> When you try building a specific package try
> CC=clang CXX=clang++ ./sage -f symmetrica
> for example. Yes there is a possibility of your
> sage install breaking after that. But since 
> symmetrica looks like just C code it shouldn’t.
> If you try to fix linbox you should get ready for 
> some pain.
> 
> Cheers,
> François
> 
>> On 18/09/2016, at 03:35, Travis Scrimshaw  wrote:
>>
>>
>>
>> On Saturday, September 17, 2016 at 2:48:40 AM UTC-5, François wrote:
>> Reanimating https://trac.sagemath.org/ticket/12426 
>> There is a ticket for symmetrica, if you still want to do it, I’d rather you 
>> fix the code with a patch than with a compilation flags as is suggested in 
>> #12439. 
>>
>> Just saw that ticket, and I was thinking the same as you. This is now in my 
>> todo list.
>>
>> I know this is probably in the dumb question category, butShould I worry 
>> about anything (e.g., no longer able to build Sage) by installing clang via 
>> apt-get?
>>
>> Best,
>> Travis
>>
>>
>> -- 
>> You received this message because you are subscribed to the Google Groups 
>> "sage-devel" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to sage-devel+unsubscr...@googlegroups.com.
>> To post to this group, send email to sage-devel@googlegroups.com.
>> Visit this group at https://groups.google.com/group/sage-devel.
>> For more options, visit https://groups.google.com/d/optout.
> 

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.
<>

Re: [sage-devel] Add psutil as standard package

2016-09-07 Thread Thierry Dumont

[x] I agree, let's make psutil standard

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.
<>

Re: [sage-devel] The Sage Wiki

2016-08-26 Thread Thierry Dumont
Le 26/08/2016 à 18:11, Johan S. H. Rosenkilde a écrit :
> Hi everyone,
> 
> I just edited the front page of http://wiki.sagemath.com so that it
> appears less embarrassingly out of date. I restructured it so that it is
> more clear that it is a place for certain developer organization (mostly
> SageDays), so that it now less pretends to be a very lively place with
> frequent updates everywhere (or rather, so that it is honest about where
> it is out-of-date).
> 
> I stuffed links to lots of sub-pages under headlines marked out-of-date.
> If you disagree or update one of those sub-pages, please just put the
> link under some appropriate headline not marked out-of-date :-)
> 
> Best,
> Johan
> 
Certainly, it is http://wiki.sagemath.org

Best,
t.

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.
<>

Re: [sage-devel] Dealing with libc math differences

2016-08-10 Thread Thierry Dumont
Le 10/08/2016 à 13:38, Erik Bray a écrit :
> Hi all,
> 
> Sorry if this has been discussed ad-infinitum before--I looked around
> a bit but didn't find a definitive answer.
> 
> I have one (well at least one) test that's failing on Cygwin due to
> tiny difference in the last digit of the result of log(3).
> 
> This leads to to several questions:
> 
> 1) Is it worth investigating the reason for the difference?
> 2) Is it worth trying to provide a workaround for the difference?
> 3) Or should the test just be updated to ignore the last couple digits
> of the result, and if so how (ellipses?)
> 
> Thanks,
> Erik
> 
Hello,

What do you mean by log(3) ?

Is it log(3.) or log(RDF(3)) ?


With log(RDF(3)), this is classical; changing the library version, or
the compiler version often changes the way some expressions and
functions are computed. As floating point arithmetic is not associative,
this is classical. With log(3.) (RealField()), I don't know.
When we wrote the book "Calcul Mathématique avec Sage", we had this
problem: after some release (some months) some  doctests of the chapter
on numerical algebra and floating point numbers failed. The only work
around we found was to truncate the last digit in the output, to try to
test what should remain constant.

Note that:

sage: log(RDF(3))
1.0986122886681098
sage: log(3.)
1.09861228866811

But:
sage: log(RDF(3)).n(prec=53)
1.09861228866811
sage: log(3.).n(prec=53)
1.09861228866811

sage: log(RDF(3))==log(3.)
True

as we also know that:
sage: RDF.prec()==RealField().prec()
True


So in this case it is only a problem of rounding output.


Good luck.

Yours
t.



-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.
<>

[sage-devel] d3js question.

2016-08-09 Thread Thierry Dumont
Hello,

It seems that Sage can make some usage of d3.js

->
http://sagemanifolds.obspm.fr/doc/reference/graphs/sage/graphs/graph_plot_js.html
-> their exists a d3js package (which seems to install the library /
javascript)

But d3.js seems to be used only to draw graphs. Am I wrong ?

>From an other side, their exists different interfaces ro d3.js in
Python: Python-nvd3, mpld3 ...

d3 is a very nice library (my opinion...).

mpld3 is easy to install in sage (sage -pip...).

Are there some projects about this ? some users ?

t.d.

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.
<>

Re: [sage-devel] make giac/giacpy a standard package

2016-07-05 Thread Thierry Dumont
Le 04/07/2016 23:10, Francois Bissey a écrit :
> I wouldn’t try to use one of these. Detecting blas/lapack automatically is
> a fool’s errand. There are no standard naming scheme for the libraries
> and distress can mess things up on top of it.
> The only safe way is to get the stuff needed to link on the command line.
> You may want to add detection of the fortran mangling, that suppose you
> will be making your code able to cope with that too.
>


Not sure...

I am a cmake user; I do not propose to include cmake in sage :-), but
cmake comes with a lot of scripts like FindBLAS.cmake and FindLAPACK.cmake

I have used them on many linux distributions and it always worked.

So it is certainly possible to mimic what cmake is doing, say with a
python script. Maybe it already exists...

t.d.

> However I would like to know more about the particular lapack install
> you are trying to detect:
> 1) is it in /usr/lib(64) or /usr/local/lib?
> 2) is it all shared object or static [the way you look at gfortran, blas and 
> then 
> lapack, suggests static]
> 
> François
> 


-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.
<>

[sage-devel] sage 7.7 on raspberry pi3 + pidrive.

2016-07-03 Thread Thierry Dumont

For the fun, I have installed Sage 7.2 on my Raspberry 3 (on the pidrive).
Everything went well, except that I was unable to use the 4 cores for
compilation: there was not enough memory at some point.

So, using 1 core, it took a bit more than 12 hours... :-) But eveything
seems ok (yes, I will do the tests).

I have redone all the benchmarks of
http://www.sagemath.org/tour-benchmarks.html

You can find the results (both on a core I5 and on the Rpi3 ) here:
http://math.univ-lyon1.fr/homes-www/tdumont/benchs/i5vsrpi3/bench.pdf

The benchmarks results of http://www.sagemath.org/tour-benchmarks.html
are a bit outdated...

Depending on the benchmark, the Pi3 is 11 to 72 times slower than the
Core I5

yours
t.d.

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.
<>

Re: [sage-devel] Re: Delete old optional packages

2016-04-27 Thread Thierry Dumont

Le 27/04/2016 12:34, mmarco a écrit :

Several of the maintainers answered me telling that it is OK to remove
those packages. The rest of them either couldn't be contacted or did not
answer at all. So it is safe to delete the packages.

El miércoles, 20 de abril de 2016, 11:19:29 (UTC+2), mmarco escribió:

In theory, each od these packages should have a mantainer. I think
we should, at least, consult them before removing the packages.

If a package has no mantainer at all... that is already a good
reason to remove it from the list of optional packages.

El miércoles, 20 de abril de 2016, 9:24:01 (UTC+2), Volker Braun
escribió:

Since we once again had a thread about the pains of accidentally
installing an old-style optional package, I propose to delete
them except the following instead of opening a trac ticket for
each one once something bad happened. If there is anything else
you want to hit reply...

See the list here: http://files.sagemath.org/spkg/optional/


To keep:

- chomp
- java3d
- phc
- qhull
- kash3



Mhhh, I have colleagues who use "lie".

An other package: coxeter. It was written by a colleague and friend of 
mine, Fokko Ducloux, who passed away now 10  years ago. If I remember 
well, people from the Sage-Combinat group wanted to work on it. What is 
the situation ?


yours
t.

--
You received this message because you are subscribed to the Google
Groups "sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send
an email to sage-devel+unsubscr...@googlegroups.com
.
To post to this group, send email to sage-devel@googlegroups.com
.
Visit this group at https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


--
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.
<>

Re: [sage-devel] Ultimatum: sage's trac and wiki

2016-02-15 Thread Thierry Dumont
Le 15/02/2016 11:50, Dima Pasechnik a écrit :
> On Mon, Feb 15, 2016 at 1:27 AM, Thierry
>  wrote:
>> Hi,
>>
>> On Thu, Feb 11, 2016 at 05:42:55PM -0800, William Stein wrote:
>>> Hi Sage Developers,
>>>
>>> Can somebody *PLEASE* volunteer to move trac.sagemath.org and
>>> wiki.sagemath.org to a VM on GCE and maintain it for a while?
>>
>> I already volonteered for this so i guess it is useless to answer again.
>>
>> Actually, the following is currently done:
>> - contact people working on ask.sagemath.org and mmarco (who set up
>>   letsencrypt for the wiki), most seemed to be in as well (+dimpase now)
>> - ask for 2 fresh VM to my university:
>>   http://sagewiki.lipn.univ-paris13.fr/
>>   http://sagetrac.lipn.univ-paris13.fr/
> 
> This would seem to imply that noone outside Paris 13 would be able to log in
> to these VMs, or one would be at mercy of often unpredictable university
> administration  in this regard.
> My experience with French universities is that they are often not at all happy
> to give meaningful computer access to me as an official visitor, them
> allowing arbitrary people having root access on their computers sounds
> very unusual.
> In this sense choice of GCE seems to make much better sense.
> 
Maybe we can ask to put sage related virtual machines on the French
*CNRS* (Math. Institute/ Mathrice) machines, and have root access on
them. Nicolas (Thiéry)(and others), what do you think of that?

We already have a Jupyter/sage CNRS server. It would have sense.

T.

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.
<>

Re: [sage-devel] Re: sage on hacker news right now...

2016-02-15 Thread Thierry Dumont
Le 15/02/2016 08:27, Daniel Krenn a écrit :
> On 2016-02-15 06:25, Jori Mäntysalo wrote:
>> On Sun, 14 Feb 2016, William Stein wrote:
>> Shall we teach Python in the process of teaching Sage?
> 
> At least, I do in my first year's course.
> 
> D
> 
And one argument for teaching Sage at undergraduate level is precisely
that students learn Python when they learn Sage. Not all will become
mathematicians, not all will even become scientists, but at least they
will have learn some important language, not these @!&! Maple or
Mathematica languages.

t.

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.
<>

Re: [sage-devel] Moving compiled Sage on SMC no longer possible

2016-01-28 Thread Thierry Dumont
My problem was abit more complicated: I compile sage on a nfs server in 
a directory A; A is seen by the nfs clients as B. This cannot work, I think.

(I finally mounted A on the nfs server on a local directory Band it worked).
Thanks
t.

Le 29/01/2016 06:30, Rob Beezer a écrit :

I've seen some messages about the "relocatability" of compiled Sage
recently, but cannot find them now.

I've been building compiled versions of Sage on SageMathCloud, to make
it easier for people to begin development.

https://cloud.sagemath.com/projects/53b77207-8614-4086-a032-432af4b4cdbd/files/sage-dev-images/

In response to a user's question, I tried copying 7.1.beta0 and when
trying to start Sage got:

|
ERROR:TheSageinstallation tree has moved

from/projects/53b77207-8614-4086-a032-432af4b4cdbd/sage-dev-images/sage-7.1.beta0
   to /projects/53b77207-8614-4086-a032-432af4b4cdbd/sage-7.1.beta0

Thisisnotsupported,andSagewill notwork.Toinstall Sagefroma
binary package:
|

That seems pretty unambiguous, but I wanted to confirm that is now
pointless for me to make these images available.

Thanks,
Rob

--
You received this message because you are subscribed to the Google
Groups "sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send
an email to sage-devel+unsubscr...@googlegroups.com
.
To post to this group, send email to sage-devel@googlegroups.com
.
Visit this group at https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


--
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.
<>

Re: [sage-devel] Re: Sage-7.0 ?

2015-12-19 Thread Thierry Dumont


I would like to say that we (we = the most part of French 
mathematicians) want to develop a computing facility based on Jupyter 
(jupyterhub, actually). For this, we will use a cluster of "second hand" 
machines (a cluster of machines which have been used some years for 
parallel computations (with an infiniband network, ...)) and convert 
them to a jupyterhub cluster. This is not aimed only for running sage, 
but also a lot of python things, R, julia and so on

(yes, I know, we can run most part of this in Sage; but not all).
So, using sage with jupyter is crucial for this project.

t.d.

Le 20/12/2015 04:32, Samuel Lelievre a écrit :

2015-12-19 10:23:58 -0800 (PST), kcrisman:

 > [Volker Braun wrote:]
 >> The switch [to Jupyter notebook as a default in SageMath]
 >> is now http://trac.sagemath.org/ticket/19740 (needs review)
 >
 > uh, that is a pretty big change.  Is there any obvious/easy way
 > for people to migrate sws notebooks to Jupyter?  (I assume not.)

I think one way to go is to convert sws to sagews, and then sagews
to ipynb (maybe via rst).

 > What would the rationale for switching to Jupyter be?  (Since,
 > as I understand it, it's not that Sage-specific, but maybe that
 > has been radically improved.)

The rationale is that the Sage notebook is in "maintenance mode"
while the Jupyter notebook is actively developed, and becoming
a standard much more widely than in the Sage community, with now
~50 kernels available and many projects using it, see

 https://github.com/ipython/ipython/wiki/Projects-using-IPython

https://github.com/ipython/ipython/wiki/IPython-kernels-for-other-languages

Since SageMath will eventually use Jupyter notebook by default,
why not let our new users discover it first.

 > Does one need to use "from sage.all import *" or is Sage a "kernel"
 > for Jupyter now?  I guess I don't see what the advantages would be
 > (though there may be some significant ones).  Does Sage include
 > all the Jupyter kernels right now, would that be a problem if (say)
 > someone wanted to use the Julia kernel and we don't ship Julia?

Running

  sage -n jupyter

starts a Jupyter notebook server. You can explore the file hierarchy
(starting from the directory where you launched the above command),
and when you click "New" you can choose between "Python2" and "Sage"
for creating a new Jupyter notebook.

 > (I would have thought that switching to the "personal" SMC would be
 > the more evident new default, though that is a much bigger project
 > and SMC isn't really a notebook in the usual sense anyway,
 > that's just part of it.)

When you launch a Jupyter notebook in SageMathCloud, it starts with
the Python2 kernel. You can then use the menu "Kernel > Change Kernel"
which currently lets you choose from the following kernels:
- Anaconda 3
- Julia
- Python 2
- Python 3
- R
- Sage 6.9
- Sage 6.9.beta7

--
You received this message because you are subscribed to the Google
Groups "sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send
an email to sage-devel+unsubscr...@googlegroups.com
.
To post to this group, send email to sage-devel@googlegroups.com
.
Visit this group at https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


--
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.
<>

Re: [sage-devel] reviewing prevented code written by a cat from getting into Sage

2015-11-17 Thread Thierry Dumont
Le 17/11/2015 08:20, Johan S. R. Nielsen a écrit :
> Cats on the keyboard are dangerous! My cat once ran over my keyboard
> while I was in Vim. The result: deleted all contents of the file, saved
> AND nuked the undo buffer!
> 
> Thank goodness for version control...
> 
And what about a mouse running on the keyboard ?

Probability of such event seems greater, among users of Sage, no ?
> 
> kcrisman writes:
> 
>> I usually catch those before committing. I still don’t know how one of our 
>>> cats open iTunes on my laptop (there are no icons for it on the desktop or 
>>> panel). 
>>>
>>
>> I like also that this could have been caught by doctesting that specific 
>> error being raised :) 
> 

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.
<>

Re: [sage-devel] Thread boosting in NTL

2015-10-22 Thread Thierry Dumont
Le 21/10/2015 23:38, Victor Shoup a écrit :
> Just in case anyone is interested...
> 
I am interested.

> I released a new version of NTL that offers a new "thread boosting" feature,
> which utilizes multiple cores to speed up certain computations.
> This is a work in progress...as of now, only basic operations in ZZ_pX
> are thread boosted. 
> 
> You can see a report on the effect of thread boosting on polynomial
> factorization
> here: http://www.shoup.net/ntl/boost.pdf
> 
> Short synopsis: using 16 cores, NTL's (already pretty fast) algorithm
> for factoring polynomials over ZZ_p now runs 10-12 times faster. This is
> a result of boosting the low-level ZZ_pX arithmetic...the higher-level
> factoring routines are completely unchanged.
> 

Just some questions:

1) what about hyper threading ? I thing your machine has, say 16 cores,
but with hyper threading you can launch 32 threads. On very regular
structures (say: operations on arrays), hyper threading is not (very)
interesting. But when the code becomes more irregular,  when it is not
embarrassingly parallel, it is often interesting to have threads waiting
when other compute.
The Intel Xeon-Phi has 64 cores and 256 "virtual" core for example, and
you get interesting performances only if you are able to use 256 threads
(ok, the Xeon-Phi is a bit strange, but future machines will certainly
have a lot in common with it)

2) You seem to use a direct management of threads; how long do threads
live? launching a thread takes micro-seconds, which is not neglectable.
Open-MP launches all the threads at the first parallel instruction, and
never stops them.

3) Performances are improved if you force the threads to stay on the
same slot (as the machine is certainly numa).

4) Did you have a look at TBB library ? The task stealing paradigm is
very interesting and not difficult to understand (even sometime simpler
than OpenMP).

It should be interesting to look at your code using a tool like VTune. I
can do it if your code is available.

t.d.

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.
<>

Re: [sage-devel] Re: threejs

2015-10-07 Thread Thierry Dumont
Le 07/10/2015 08:42, kcrisman a écrit :
> >
> 
> MMMhhh, interesting!
> 
> Do you think it would be possible to replace jmol by jsmol in sage?
> or keep both and choose which on to use?
> 
> 
> This is already possible!  In the notebook - thanks to tons of work by
> Jonathan and Volker.  I don't know how that would work from command line
> though, as it would have to open a browser or something? 
> 
> -- 


Great, yes, but how do I proceed to switch to jsmol?

yours
t.

> You received this message because you are subscribed to the Google
> Groups "sage-devel" group.
> To unsubscribe from this group and stop receiving emails from it, send
> an email to sage-devel+unsubscr...@googlegroups.com
> .
> To post to this group, send email to sage-devel@googlegroups.com
> .
> Visit this group at http://groups.google.com/group/sage-devel.
> For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.
<>

Re: [sage-devel] Re: threejs

2015-10-06 Thread Thierry Dumont
Le 06/10/2015 15:44, Jonathan a écrit :
> I believe the javascript version of Jmol, JSmol, actually uses a
> modified version of threejs for some of its 3D rendering.  Thus it is
> also embedded in the Jmol/JSmol package.
> 
> Jonathan
> 

MMMhhh, interesting!

Do you think it would be possible to replace jmol by jsmol in sage?
or keep both and choose which on to use?

t.

> -- 
> You received this message because you are subscribed to the Google
> Groups "sage-devel" group.
> To unsubscribe from this group and stop receiving emails from it, send
> an email to sage-devel+unsubscr...@googlegroups.com
> .
> To post to this group, send email to sage-devel@googlegroups.com
> .
> Visit this group at http://groups.google.com/group/sage-devel.
> For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.
<>

Re: [sage-devel] History of notebooks.

2015-10-04 Thread Thierry Dumont

William,

Thank you for this detailed answer!

For my talk to the group of engineers I mentioned, it is more than perfect.
But I am also involved a bit in the history of computing: I think we 
must keep track of the different developments and writing history 
without such documents is very difficult.

Thank you again.

t.

Le 03/10/2015 19:52, William Stein a écrit :

On Sat, Oct 3, 2015 at 8:35 AM, Thierry Dumont
<tdum...@math.univ-lyon1.fr> wrote:

Hello,

I am preparing a talk I will give to a group of engineers, about
"Notebooks". I mean web technology based notebooks (not java, qt or
something else, but notebooks which use your web browser); so I will speak
about Sage Notebook, Ipython and Jupyter notebooks.

My question is:

-> Was Sage notebook at the origin of all ?


As you define it above, yes, I think it was the origin of all... but
it was also *very* heavily influenced by many other things.   I wrote
the first version with help from Tom Boothby and Alex Clemesha in
2006.Our motivation was

   (1) A failed summer attempt by two students in San Diego to provide
a GUI for iPython, which was not web based, but was demoed in a talk
at Sage Days 1.  I instantly started prototypingvery crappy approachs
to the same problem, maybe minutes after that talk.

   (2) Mathematica, obviously.  Alex Clemesha was a UCSD physics
undergrad who like/used Mathematics notebooks.   Of course, I had used
Maple/Mathematica notebooks myself too back in 1993 as an undergrad.

   (3) Gmail and Google maps, which pioneered use of "AJAX" = web
applications that don't have to refresh the whole page every time you
do anything.

I clearly remember standing in my office in 2006 and trying to figure
out solutions to problems like "make the output appear as it is
produced when you run this code:
for i in range(10):
  sleep(1)
  print i"

I demoed the first public web-based sage notebook at a talk I gave at
digipen (a video-game programming college near Microsoft).   If I
remember correctly, there were no accounts -- all users shared
everything.  There were named worksheets, but I think you could only
add new cells (not delete existing stuff).   It was all persistent
though.

I used to teach every summer in this program (SIMUW):

http://www.math.washington.edu/~simuw/thisyear/index.html

A year after the first sage notebook stuff, mentioned above, mostly me
and Bobby Moretti spend a huge amount of time during about *2 weeks*
right before 2007 SIMUW writing a new version of the Sage notebook
that was much more powerful, in that it had user accounts, making
documents public, etc.We had to finish the entire thing in about 2
weeks, since I wanted to use it for SIMUW, and those dates were fixed.
Instead of worrying about UI design, we mostly just copied Google
docs, so in 2007 Sagenb looked almost exactly the same as Google docs.
(I don't think Google docs had synchronized editing back then -- only
one at a time, just like sagenb even today.)  Actually, sagenb *today*
in 2015 looks much the same as Google docs looked in 2007, but nothing
like Google docs today, since just as we were releasing sagenb, Google
docs's UI got completely redone.

Google also had something called "Google notebook" for a little while
-- they release it after sage notebook, but it coincidentally looked
very similar.  It didn't compute anything -- it was like Sage notebook
without any computational ability.  Of course Google killed it.
There was also Google wave, which was again similar, and again got
killed.

I think in 2008, Alex Clemesha wrote something called Knoboo, which is
here: https://github.com/knoboo/knoboo   It hasn't been touched in 6
years.  He would have continued working on massively improving the
sage notebook, but I couldn't afford to pay him.  [Repeatedly
realizing and actually acknowledging the number of massive lost
opportunities for lack of money during the last 10 years really
hurts.] So he tried some new experimental open source stuff on his
own, but then stopped as he had a fulltime job.

Mike Hansen, Robert Bradshaw, Jason Grout and I at some point rewrote
some of the notebook backend in FLASK/Twisted so that it would scale
up a little more since a lot of people wanted to use it.  The site
sagenb.org got a lot of traffic, but would routinely die due to
overuse, and was massively limited by lack of scalability (not lack of
demand).   It also regularly got abused in every imaginable way by
assholes, causing no end of grief (and having all of the sage.math
resources banned from the internet multiple times at UW).

For a while Tim Dummol -- a 16 year old high school student in the
Philippines (!) -- became the main developer on the sage notebook,
polishing many little things, fixing every bug he could find, etc.,
etc.Then he graduated high school, went to college somewhere, and
we never heard from him again.

In 2012  maybe (?) some student from I think Bro

[sage-devel] threejs

2015-10-04 Thread Thierry Dumont


What about the optional package threejs ?

As far as I remember, the idea was to replace jmol with it.
(But may be I am wrong).

Is this always an active project? Is it an orphan project ? Are there 
difficult problems to solve ?


t.d.

--
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.
<>

[sage-devel] History of notebooks.

2015-10-03 Thread Thierry Dumont

Hello,

I am preparing a talk I will give to a group of engineers, about 
"Notebooks". I mean web technology based notebooks (not java, qt or 
something else, but notebooks which use your web browser); so I will 
speak about Sage Notebook, Ipython and Jupyter notebooks.


My question is:

-> Was Sage notebook at the origin of all ?

Yours,
Thanks

t.


--
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.
<>

Re: [sage-devel] What can we assume about our C compiler

2015-09-21 Thread Thierry Dumont
Le 21/09/2015 14:16, Jeroen Demeyer a écrit :
> On 2015-09-21 13:47, Nathann Cohen wrote:
>> Hello everybody,
>>
>> What can we assume on our C compiler? Is it always gcc?
> 
> First of all, compiler choices can always be overridden using SAGE_PORT
> or SAGE_INSTALL_GCC. But let's assume that those variables are undefined.
> 
> In that case, you can assume that the compiler is GCC-compatible, so it
> could be GCC or it could be Clang or possibly a different compiler (ICC
> maybe?). The version is at least version 4.4 (but not 4.6)
> 

Did anybody tried ICC ? I can do it, for fun...

t.d.
> That being said, if there is some future which really requires a more
> recent compiler (say, for C++11 support), I wouldn't mind updating the
> prerequisites.
> 
> Note that this talks only about the compiler, which is just one piece of
> the toolchain. Many compatibility problems are in fact due to the
> linker, where less assumptions can be made.
> 
> 
> Jeroen.
> 

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.
<>

Re: [sage-devel] Default precision for floats

2015-09-20 Thread Thierry Dumont

Le 20/09/2015 20:28, rjf a écrit :

If the original program has constants that are good for ordinary
floating precision,
then increasing the precision without increasing the accuracy may not do
what
you want.
For example, converting 3.1415926  (etc) by extending with decimal or
  binary 0's might
not do the right thing.
In fact, converting 0.1, which is a binary float not equal to 1/10
exactly, might change
the situation enough so that
f(a,b,c)  in single-float
f(a,b,c)  in 100 bits



I know that... but, my constants are defined by values of elementary 
functions.

The solution proposed by William is perfect for me, and very consistent:

sage: atan(1.0)
0.785398163397448
sage: RealNumber=RealField(300)
sage: atan(1.0)
0.785398163397448309615660845819875721049292349843776455243736148076954101571552249657008706
age: RealNumber=RealField()
sage: atan(1.0)
0.785398163397448
sage: ComplexNumber=ComplexField(200)
sage: x=ComplexNumber(1,1)
sage: cos(x)
0.83373002513114904888388539433509447980987478520962931227072 - 
0.98889770576286509638212954089268618864214969503314760753682*I


great...


differ not because the second is more accurate, but because something rather
different is being computed.   e.g. if a= 0.1.

Also, if someone is automatically translating C to python, then
automatically
inserting  MyChosenPrecisionReal('   ')   around every float should be easy.

While it is tempting to add every possible tool to Sage, thinking out of the
box can be productive.

(one answer:  there is a bootstrapping problem if you have to have a working
Sage in order to build a working Sage.)


On Sunday, September 20, 2015 at 9:20:35 AM UTC-7, Volker Braun wrote:

Yes, a more complete regex can be found easily with google or by
using the one from src/sage/repl/preparse.py

On Sunday, September 20, 2015 at 6:11:25 PM UTC+2, vdelecroix wrote:

Would not work with 'x=.8' (can be fixed with replacing the
first \+

with a \*) nor 'x=2e3' (this is more annoying).

--
You received this message because you are subscribed to the Google
Groups "sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send
an email to sage-devel+unsubscr...@googlegroups.com
.
To post to this group, send email to sage-devel@googlegroups.com
.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


--
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.
<>

Re: [sage-devel] Default precision for floats

2015-09-20 Thread Thierry Dumont

Le 20/09/2015 17:11, William Stein a écrit :

On Sun, Sep 20, 2015 at 8:02 AM, Thierry Dumont
<tdum...@math.univ-lyon1.fr> wrote:

Le 20/09/2015 16:26, Volker Braun a écrit :


Why change the default? Global state is always a liability; Just don't
do it. Make the field a parameter to your code:

def frobnicate(x,y, field=None)
  if field is None:
  from sage.structure.element import get_coercion_model
  field = get_coercion_model().common_parent(x, y)
  x, y = field(x), field(y)
  ...

frobnicate(1, 2, field=RealField(100))

--
You received this message because you are subscribed to the Google
Groups "sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send
an email to sage-devel+unsubscr...@googlegroups.com
<mailto:sage-devel+unsubscr...@googlegroups.com>.
To post to this group, send email to sage-devel@googlegroups.com
<mailto:sage-devel@googlegroups.com>.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.



Ok...
The origin of the discussion was: I have a code, translated from C, where a
I want to be able to increase the precision  of the float constants (there
are many of them -about 400!-), as the problem is ill conditioned David
Roe proposed to patch the parser.

Without changing the default precision, and using your solution, we revert
to something where we must "declare" the float values:
x=field(137.8)
in place of
x=137.8
My principal motivation was lazyness :-)
But ok, I understand your argument; and also, patching the parser is not
very smart programing...



Just type

 RealNumber = RealField(300)

and now every single real literal will be a 300-bit float.Your
problem is solved.  All the pre-parser does is replace real literals
with RealNumber('literal'), e.g.,



Aaaah, yes!
Nice,
Thanks!
yours
t.

sage: preparse('3.14')
"RealNumber('3.14')"

You can thus trivially re-interpret all real literals in Sage programs
(or worksheets) in absolutely any way you want by redefining
RealNumber.  This only impacts that one scope and session too, so it
won't mess up the library in any way (which a priori any change to the
pre-parser itself could).

Similar remarks apply for integer literals.

sage: preparse('389')
'Integer(389)'

I wish I was writing this remark in the README.md of a
pip-hosted package called sage-preparser, which is an also popular
IPython extension...

[1] 
https://cloud.sagemath.com/projects/4a5f0542-5873-4eed-a85c-a18c706e8bcd/files/support/2015-09-20-080623-real_precision.sagews

William



t.



--
You received this message because you are subscribed to the Google Groups
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an
email to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.






--
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.
<>

Re: [sage-devel] Default precision for floats

2015-09-20 Thread Thierry Dumont

Le 20/09/2015 16:26, Volker Braun a écrit :

Why change the default? Global state is always a liability; Just don't
do it. Make the field a parameter to your code:

def frobnicate(x,y, field=None)
 if field is None:
 from sage.structure.element import get_coercion_model
 field = get_coercion_model().common_parent(x, y)
 x, y = field(x), field(y)
 ...

frobnicate(1, 2, field=RealField(100))

--
You received this message because you are subscribed to the Google
Groups "sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send
an email to sage-devel+unsubscr...@googlegroups.com
.
To post to this group, send email to sage-devel@googlegroups.com
.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Ok...
The origin of the discussion was: I have a code, translated from C, 
where a I want to be able to increase the precision  of the float 
constants (there are many of them -about 400!-), as the problem is ill 
conditioned David Roe proposed to patch the parser.


Without changing the default precision, and using your solution, we 
revert to something where we must "declare" the float values:

x=field(137.8)
in place of
x=137.8
My principal motivation was lazyness :-)
But ok, I understand your argument; and also, patching the parser is not 
very smart programing...


t.


--
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.
<>

Re: [sage-devel] Default precision for floats

2015-09-20 Thread Thierry Dumont

Dear Colleagues,

I have managed to code this...

But I have a question before pushing the tickket.

What I can do nowadays:

sage: set_precision(100)
sage: x=1.
sage: x.parent()
Real Field with 100 bits of precision
sage: ComplexNumber(1.,2.).parent()
Complex Field with 99 bits of precision
sage: set_precision()
sage: x=1.
sage: x.parent()
Real Field with 53 bits of precision

sage: set_precision(100)
sage: x=RealNumber(1.)
sage: print x
1.000 #okay

but:

sage: set_precision(100)
sage: x=RealNumber(1)
sage: print x
1.00
sage: x.parent()
Real Field with 53 bits of precision

So, what do you think of that?
Is it necessary to modify (the parser) so that:
sage: set_precision(100)
sage: x=RealNumber(1)
returns something in "Real Field with 100 bits of precision"?
I recall that the idea was to change the default behavior of the parsed 
floats.

Doing this is possible but not with a very smart implementation.

t.



Le 13/09/2015 08:55, Thierry Dumont a écrit :

Le 13/09/2015 01:36, Vincent Delecroix a écrit :

It would indeed be cool to have an option to change interactively the
precision...

preparser.set_precision?

or simply

set_precision?

Vincent


I can look at this and propose an implementation...
Thanks!
t.

On 12/09/15 19:49, David Roe wrote:

One approach would be to change "RealNumber('%s')" % num on line 739
of sage.repl.preparse to "RealNumber('%s',min_prec=1000)" % num.
David

On Sat, Sep 12, 2015 at 12:24 PM, Thierry Dumont
<tdum...@math.univ-lyon1.fr> wrote:

I have a program with a lot of floating point constants/variables
(this is a
translation of a C++ program).
Nowadays -by default- all these values live in RealField(53).

But, as my problem is a bit ill conditioned, I would like to compute in
higher precision, say in RealField(1000).

Is there a possibility to change the default behavior of say,

x=1.0
x.parent()
Real Field with 53 bits of precision

so that:

x=1.0
x.parent()

gives
Real Field with 1000 bits of precision
?

Yours
t.

--
You received this message because you are subscribed to the Google
Groups
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it,
send an
email to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.








--
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.
<>

Re: [sage-devel] Default precision for floats

2015-09-13 Thread Thierry Dumont

Le 13/09/2015 01:36, Vincent Delecroix a écrit :

It would indeed be cool to have an option to change interactively the
precision...

preparser.set_precision?

or simply

set_precision?

Vincent


I can look at this and propose an implementation...
Thanks!
t.

On 12/09/15 19:49, David Roe wrote:

One approach would be to change "RealNumber('%s')" % num on line 739
of sage.repl.preparse to "RealNumber('%s',min_prec=1000)" % num.
David

On Sat, Sep 12, 2015 at 12:24 PM, Thierry Dumont
<tdum...@math.univ-lyon1.fr> wrote:

I have a program with a lot of floating point constants/variables
(this is a
translation of a C++ program).
Nowadays -by default- all these values live in RealField(53).

But, as my problem is a bit ill conditioned, I would like to compute in
higher precision, say in RealField(1000).

Is there a possibility to change the default behavior of say,

x=1.0
x.parent()
Real Field with 53 bits of precision

so that:

x=1.0
x.parent()

gives
Real Field with 1000 bits of precision
?

Yours
t.

--
You received this message because you are subscribed to the Google
Groups
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it,
send an
email to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.






--
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.
<>

[sage-devel] Default precision for floats

2015-09-12 Thread Thierry Dumont
I have a program with a lot of floating point constants/variables (this 
is a translation of a C++ program).

Nowadays -by default- all these values live in RealField(53).

But, as my problem is a bit ill conditioned, I would like to compute in 
higher precision, say in RealField(1000).


Is there a possibility to change the default behavior of say,

x=1.0
x.parent()
Real Field with 53 bits of precision

so that:

x=1.0
x.parent()

gives
Real Field with 1000 bits of precision
?

Yours
t.

--
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.
<>

Re: [sage-devel] Re: Short fr, de, pt, ru translation

2015-08-27 Thread Thierry Dumont

Le 27/08/2015 22:28, Eric Gourgoulhon a écrit :

Pour des fonctionnalités GAP, vous devez installer deux paquetages
Sage optionnels. Cela peut être fait avec la commande::

(A question to French colleagues: maybe Pour des fonctionnalités GAP
should be replaced by Pour utiliser GAP or something else...)

--
You received this message because you are subscribed to the Google
Groups sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send
an email to sage-devel+unsubscr...@googlegroups.com
mailto:sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com
mailto:sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


I prefer Pour utiliser GAP ou Pour utiliser les fonctionnalités de GAP.
Pour des fonctionnalités GAP is not correct french.

t.d.

--
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.
attachment: tdumont.vcf

Re: [sage-devel] Re: Short fr, de, pt, ru translation

2015-08-27 Thread Thierry Dumont

Le 27/08/2015 22:53, Jeroen Demeyer a écrit :

On 2015-08-27 22:33, Thierry Dumont wrote:

I prefer Pour utiliser GAP ou Pour utiliser les fonctionnalités de
GAP.
Pour des fonctionnalités GAP is not correct french.



Pour utiliser *certains* fonctionnalités de GAP...
(is this the correct spelling?)



certainEs !
thanks...I'm a bit tired.

--
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.
attachment: tdumont.vcf

Re: [sage-devel] Heuristics to approximate matrix bandwidth

2015-07-13 Thread Thierry Dumont

Le 13/07/2015 10:36, michele.bora...@imtlucca.it a écrit :

Hi all!
My name is Michele Borassi, and I recently entered this great community
for a Google Summer of Code project.
Among other works, I am including in Sage an algorithm for computing the
Cuthill-McKee and the King orderings [1,2], which are heuristics used to
approximate the bandwidth of a graph [3] (ticket 18876, [4]). Since the
bandwidth of a graph is the bandwidth of its adjacency matrix, maybe
these algorithms might be useful also in the matrix context. However,
before including them, since I work with graphs and I know very little
about matrix algorithms, I have some doubts:

  * Are these algorithm really interesting for matrix analysis?
  * In case, where and how should I include these algorithms?
  * If it is more complicated than this), could you provide more
information? For instance, if you need related routines, like
permuting rows and columns according to these orderings, or maybe
you would like to integrate this work with other algorithms. In
case, I might open a new ticket that takes care of all these things.


Hi,
These methods have been widely used for the solution of large linear 
systems one encounter in the discretization of Partial Differential 
Equations; these systems are sparse (O(n) non zeros for an order n); the 
factorizations (LU, Cholesky) create  new non zeros terms inside the 
band. So reducing  the band width is a necessity.
Nowadays, direct methods for  sparse systems (SuperLU, Mumps)  are based 
on more sophisticated ideas (like nested dissection).


The Cuthill-Mac Kee algorithm (actually the reverse Cuthill-Mac Kee 
version) is implemented in scipy (scipy.sparse.csgraph improvements).


I think this is the right place for this.

Yours
t.d.

For any other comment, doubt, or suggestion, please feel free to contact
me!

Thank you very much for your help!

Best,

Michele


[1] https://en.wikipedia.org/wiki/Cuthill%E2%80%93McKee_algorithm

[2] http://www.boost.org/doc/libs/1_58_0/libs/graph/doc/king_ordering.html

[3] https://en.wikipedia.org/wiki/Graph_bandwidth

[4] http://trac.sagemath.org/ticket/18876

--
You received this message because you are subscribed to the Google
Groups sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send
an email to sage-devel+unsubscr...@googlegroups.com
mailto:sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com
mailto:sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


--
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.
attachment: tdumont.vcf

[sage-devel] sage and jupyterhub

2015-05-28 Thread Thierry Dumont
My question is possibly stupid, but I could not find a satisfying answer
by googling...

Can sage work with *jupyterhub*? Or will it be possible?

I am planing to build a jupyterhub server for the French mathematician
community, and, of course, it would be cool to run sage in it.

Yours,
t;d.

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.
attachment: tdumont.vcf

Re: [sage-devel] Re: upgrading and doc.

2015-05-19 Thread Thierry Dumont
Le 18/05/2015 23:03, Volker Braun a écrit :
 Sounds good to me...  Do you have a ticket?
 
Not yet but, I'll certainly make one...

 On Monday, May 18, 2015 at 10:11:20 PM UTC+2, tdumont wrote:
 
 I have justeupgraded sage from 6.6 to 6.7 doing  sage -upgrade.
 As every time I did this, everything went well, except that, at the
 end,
 I had to do a make doc-clean.
 
  
 
 This time, the message which is something like you should do make
 doc-clean did not appear.
 
 I think this is a bit annoying for beginners.
 
 Rebuilding the documentation take some time, ok, but not so much
 compared to the full upgrade.
 
 Why not to add this make doc-clean, or the ad'hoc command
 systematically to the upgrade process?
 
 -- 
 You received this message because you are subscribed to the Google
 Groups sage-devel group.
 To unsubscribe from this group and stop receiving emails from it, send
 an email to sage-devel+unsubscr...@googlegroups.com
 mailto:sage-devel+unsubscr...@googlegroups.com.
 To post to this group, send email to sage-devel@googlegroups.com
 mailto:sage-devel@googlegroups.com.
 Visit this group at http://groups.google.com/group/sage-devel.
 For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.
attachment: tdumont.vcf

[sage-devel] upgrading and doc.

2015-05-18 Thread Thierry Dumont


I have justeupgraded sage from 6.6 to 6.7 doing  sage -upgrade.

As every time I did this, everything went well, except that, at the end, 
I had to do a make doc-clean.
This time, the message which is something like you should do make 
doc-clean did not appear.


I think this is a bit annoying for beginners.

Rebuilding the documentation take some time, ok, but not so much 
compared to the full upgrade.


Why not to add this make doc-clean, or the ad'hoc command 
systematically to the upgrade process?



Yours
t.

--
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.
attachment: tdumont.vcf

Re: [sage-devel] Re: pynac may require C++11 in Sage

2015-04-29 Thread Thierry Dumont

Le 29/04/2015 02:28, Volker Braun a écrit :

+1 to requiring C++11 support.

IMHO that added a number of really nice refinements of the language, if
you aren't using it yet for a C++ project then you are making a mistake.





+1
I am developing extensively in C++: C++11 offers many interesting 
improvements for programming maths; among them:

- auto keyword, very intereseting for generic programming
- an augmented stl with, for example a very complete system of random 
generators.

-...

--
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.
attachment: tdumont.vcf

Re: [sage-devel] Re: Sage is grown up; needs a last name

2015-02-18 Thread Thierry Dumont
Le 18/02/2015 17:03, mmarco a écrit :
 +1 to the change.
 
 Sagemath sounds more natural than Sagemaths to me.
 
 Should we update the way to cite it accordingly?
 

As a French guy, I would remark that our Holy Nicolas Bourbaki would
certainly appreciate Sagemath or SageMath but not Sagemaths: for
people of my generation, it is quite forbidden to say mathématiques
(plural)!

(Ok, it seems that some new generation want to kill Nicolas B.: just
have a look at one of the logos of the French Inria (the 2nd one)
http://www.inria.fr/institut/inria-en-bref/charte-logo/charte-logo-inria/charte
)

Please make the change, the frequent confusion with this:
http://www.sage.fr/
is very, very painful :-)

+1!

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.
attachment: tdumont.vcf

Re: [sage-devel] Is CMake OK for a standard spkg?

2015-02-06 Thread Thierry Dumont
Le 06/02/2015 08:15, Francois Bissey a écrit :
 Cmake is a reverse approach compared to autotools. You need cmake installed 
 to configure the software. The system to build (make or something else) is
 somewhat OS dependent. autotool generate a script and you don’t need 
 auto tool installed on the target system.
 
 The main issue that you need to bootstrap it. i.e. cmake is used to build 
 cmake.
 
 Francois
 

This means we can only rely on a system wide installed cmake ? For the
user, it is only one package to install (apt-get...).
 But the autotools, too, are supposed to be installed system wide. So,
where is the problem? I understand that Sage uses as few as possible
dependencies as possible -which extremly nice-, but cmake is now widely
used.

I think that, sooner or later, sage will need cmake: most programmers
are switching from the autotools to cmake: it is much easier to learn,
to adapt and to use, and extremely powerfull. I have ported all my codes
(generally C++ + some Fortran + MPI +...) to cmake. I feel much better
now :-)

t.d.


 On 6/02/2015, at 19:54, Jeroen Demeyer jdeme...@cage.ugent.be wrote:

 On 2015-02-05 23:06, William wrote:
 I wonder what is the latest on Sage and cmake? Ondrej  Certik was
 just telling me about csympy, which uses cmake, and wondered whether
 that would be a deal break for inclusion of csympy as standard in Sage.
Definitely 4 years ago it would have been.

 Isn't cmake more like automake, i.e. run at packaging-time, not build-time?

 I don't know how reliable/portable cmake is, but generally I don't like yet 
 another build system. IMHO, nothing beats autotools and SCons is a disaster 
 (but I'm sure other people have other opinions on this). I don't know where 
 on this scale CMake lies.

 -- 
 You received this message because you are subscribed to the Google Groups 
 sage-devel group.
 To unsubscribe from this group and stop receiving emails from it, send an 
 email to sage-devel+unsubscr...@googlegroups.com.
 To post to this group, send email to sage-devel@googlegroups.com.
 Visit this group at http://groups.google.com/group/sage-devel.
 For more options, visit https://groups.google.com/d/optout.
 

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.
attachment: tdumont.vcf

Re: [sage-devel] Re: User Survey

2014-12-08 Thread Thierry Dumont


From my point of view, the sage-devel list is turning a bit funny. Ok, 
this is the end of the year but I do not think that people have started 
to drink (at least, they certainly do not drink in front of their computer).


These problems related to energy, ecology, and so on are certainly very 
interesting (my lab is a member of the association EcoInfo in France, 
so...). But be careful: people can rapidly decide that a discussion list 
is polluted, boring, and so on... an finally, leave.


This discussion, after the very long and passionate one about the code 
is a bit strange and certainly hors sujet as we say in 
French(apologize: I cannot remember how to say it in English).


My experience with a list in France devoted to calcul (computations, 
in the sens of PDE solving and so on) is that, after a lot of 
unnecessary debates -even interesting-,  the only possibility was to put 
the list under moderation.


But ok, I like to read about the watts and computing :-)

t.d.



--
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.
attachment: tdumont.vcf

Re: [sage-devel] Re: What are we unable to do right now ?

2014-12-06 Thread Thierry Dumont

Hi,
If I read this: http://en.wikipedia.org/wiki/Risch_algorithm
I understand that : f=x/(sqrt(x^4+10*x^2-96*x-71)) has an anti-primitive.
 I do not have maple, so I do nt know if Maple can integrate it; bur 
sage cannot:



f=x/(sqrt(x^4+10*x^2-96*x-71))
integral(f,x)
integrate(x/sqrt(x^4 + 10*x^2 - 96*x - 71), x)

t.

--
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.
attachment: tdumont.vcf

Re: [sage-devel] PyClaw

2014-12-03 Thread Thierry Dumont
Le 03/12/2014 09:35, Thierry a écrit :
 Hi,
 
 perhaps this does not even require maintaining a spkg, does the following
 work ?
 
 sage -i pip
 sage -pip install clawpack
 
 Ciao,
 Thierry
 
may be.

But is it the good way to do?
Is it not better to have an uniform method for installing things?

I can make an spkg which makes only sage -pip install clawpack (+ what
is necessary to do to build an spkg). An advantage would be to have
better compatiblity: PyClaw uses matplotblib, an there may be
compartibility problems...

What do you think about that?

t.
 
 On Wed, Dec 03, 2014 at 08:41:35AM +0100, Thierry Dumont wrote:
 I would like to know if anybody tried to install PyClaw in Sage.

 http://www.clawpack.org/doc/pyclaw/

 I am interested, and I propose to make an spkg.

 Yours

 t.d.

 -- 
 You received this message because you are subscribed to the Google Groups 
 sage-devel group.
 To unsubscribe from this group and stop receiving emails from it, send an 
 email to sage-devel+unsubscr...@googlegroups.com.
 To post to this group, send email to sage-devel@googlegroups.com.
 Visit this group at http://groups.google.com/group/sage-devel.
 For more options, visit https://groups.google.com/d/optout.
 
 begin:vcard
 fn:Thierry  Dumont
 n:Dumont;Thierry 
 org;quoted-printable;quoted-printable:CNRS  Universit=C3=A9 Lyon 1 (UMR 
 5208).;Institut Camille  Jordan - Math=C3=A9matiques -
 adr:;;43, Bd. du 11 Novembre;Villeurbanne;;69622 Cedex;France
 email;internet:tdum...@math.univ-lyon1.fr
 tel;work:+33 (0)4 72 44 85 23
 tel;fax:+33 (0)4 72 43 16 87 
 x-mozilla-html:FALSE
 url:http://math.univ-lyon1.fr/~tdumont
 version:2.1
 end:vcard

 

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.
attachment: tdumont.vcf

Re: [sage-devel] Re: PyClaw

2014-12-03 Thread Thierry Dumont
Le 03/12/2014 11:32, Simon King a écrit :
 Hi Thierry,
 
 On 2014-12-03, Thierry Dumont tdum...@math.univ-lyon1.fr wrote:
 sage -i pip
 sage -pip install clawpack

 But is it the good way to do?
 Is it not better to have an uniform method for installing things?
 
 I think I remember some people said that thie *should* become the
 default way of installing most of the things, namely all things that
 work out of the box and do not need to be patched for Sage.
 
 Best regards,
 Simon
 
 


The sage -pip seems for me a bit dangerous: may be some installation
will work out of the box with sage 6.x and python_package 18.y and no
more with any other values of x and y. No?
The spkg method allows to freeze versions. I think we have this at many
places in sage (at least I often read -here- about switching to a new
version of say, Singular and problems related to such change.

But ok, I'll do what the chief will propose :-)

t.

yours
t.

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.
attachment: tdumont.vcf

[sage-devel] PyClaw

2014-12-02 Thread Thierry Dumont
I would like to know if anybody tried to install PyClaw in Sage.

http://www.clawpack.org/doc/pyclaw/

I am interested, and I propose to make an spkg.

Yours

t.d.

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.
attachment: tdumont.vcf

Re: [sage-devel] Re: Call qsort from cython code .... with an inlined comparison function ?!

2014-11-23 Thread Thierry Dumont

Le 23/11/2014 18:07, Volker Braun a écrit :

Did you profile your code on the C-level? e.g. using gprof? As a rule of
thumb, guesses about where the bottleneck is are wrong :-)  Its entirely
conceivable that branch prediction and speculative execution solve this
already for you.



Is gprof enough powerful with modern architectures on such programs? 
from my point of view, no.
There are non free, commercial, tools like vtune which can do fantastic 
measurement job. Vtune shows, for example, that a call to std::copy is 
not as fast as a for loop, which is turned by the compiler in a memcopy 
(probably std::copy is not!). I do not think we can see this with gprof.

But ok, you are not supposed to buy vtune...

What about likwid https://code.google.com/p/likwid ? It is free. Did 
somebody used it to measure cython code performances?


Likwid (and Vtune) have in common to use  performance counters on Intel 
and AMD processors (not sure for AMD with Vtune...).


What is the size of what you are sorting ? If it is small enough to fit 
in the caches, and better in the L1 cache, you can possibly improve 
something with your modification, but otherwise it is certainly memory 
bounded and you cannot do much...
You have to measure the bandwidth of your program. Vtune does this, 
possibly likwid too.


t.d.

C++ std::sort will be able to inline the comparator.

Link-time optimization (e.g. gcc -flto) can in principle also inline on
the level of object code, after the compilation did not inline (because
of different compilation units, say).Though the libc sort is in a shared
library.


On Sunday, November 23, 2014 4:33:46 PM UTC, Nathann Cohen wrote:

Hello everybody,

I wrote a bruteforce Cython code recently (#17309) which spends most
of its time on calls to qsort.

This is normal, sorting is sort of the most expensive thing I do,
but to call qsort you need to provide a comparison function. Now, as
qsort is compiled in a library, the comparison function cannot be
inlined inside of qsort and I suspect that it has a nontrivial cost
(given how simple the comparison is).

Thus, if I copy/paste the original code of qsort into my Cython file
the code should be faster, only that is ugly.

Sooo... Do you know if there ais  way to re-compile my code
along with the code of qsort without having to copy/paste it ?

Thanks,

Nathann

--
You received this message because you are subscribed to the Google
Groups sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send
an email to sage-devel+unsubscr...@googlegroups.com
mailto:sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com
mailto:sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


--
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.
attachment: tdumont.vcf

Re: [sage-devel] Re: Call qsort from cython code .... with an inlined comparison function ?!

2014-11-23 Thread Thierry Dumont

Le 23/11/2014 19:07, Francesco Biscani a écrit :

On 23 November 2014 at 18:07, Volker Braun vbraun.n...@gmail.com
mailto:vbraun.n...@gmail.com wrote:

C++ std::sort will be able to inline the comparator.



Just look at the assembly code:-)


+1

std::sort() will do exactly what you describe, only in a type-safe and
compiler-checked automatic way.

--
You received this message because you are subscribed to the Google
Groups sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send
an email to sage-devel+unsubscr...@googlegroups.com
mailto:sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com
mailto:sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


--
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.
attachment: tdumont.vcf

Re: [sage-devel] Re: Call qsort from cython code .... with an inlined comparison function ?!

2014-11-23 Thread Thierry Dumont

Le 23/11/2014 19:09, Nathann Cohen a écrit :

Hello !


What about likwid https://code.google.com/p/likwid ? It is free. Did
somebody used it to measure cython code performances?


Never tried vtune, nor likwid.


What is the size of what you are sorting ? If it is small enough to fit in
the caches, and better in the L1 cache, you can possibly improve something
with your modification, but otherwise it is certainly memory bounded and you
cannot do much...


I sort many small arrays. Several kB, not more.


You have to measure the bandwidth of your program. Vtune does this, possibly
likwid too.


Oh. Do you think that it can be used from outside the program, i.e. on
a running Sage session ?


With Vtune it is possible (you start and stop collection with a call to 
the library (do not imagine I am paid by Intel :-) ,I am not.). With 
likwid, I don t know.
But, ok, it seems your objects can stay in the L1 cache. In that case, 
there is a possibility to improve performances by doing what you propose 
to do. I had recently a problem  like yours: an ode solver needs to 
solve linear systems, and I got a slight improvement by replacing the 
call to lapack by my own routine, probably because the lapack routine I 
called (which is called at many places in the program) imposes a far 
branch at each call... and for small systems (size 5), it is penalizing.
But what about the quick sort? is it sure that the implementation cannot 
degenerate? it is well known all the efficiency can be lost if the key 
used for partition is not chosen  as it should be... What about 
replacing the quick sort by an other method ? (the tree based one?).


t.d.



Nathann



--
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.
attachment: tdumont.vcf

Re: [sage-devel] Re: Call qsort from cython code .... with an inlined comparison function ?!

2014-11-23 Thread Thierry Dumont

Le 23/11/2014 20:53, Jeroen Demeyer a écrit :

On 2014-11-23 19:05, Thierry Dumont wrote:

Vtune shows, for example, that a call to std::copy is
not as fast as a for loop, which is turned by the compiler in a memcopy
(probably std::copy is not!).

If that's the case, get a better C++ compiler.


heum... it is icc :-)
A c++ compiler as some unpredicable aspects...

--
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.
attachment: tdumont.vcf

Re: [sage-devel] Re: ipython notebook

2014-11-02 Thread Thierry Dumont

Le 23/10/2014 10:40, Volker Braun a écrit :

Did you run make after pulling the git branch? The zeromq and pyzmq
packages are new and need to be compiled.


On Thursday, October 23, 2014 7:57:46 AM UTC+1, Jori Mantysalo wrote:

On Wed, 22 Oct 2014, Volker Braun wrote:

  Its in 6.4.beta6. Run with sage --notebook=ipython



I have tried this (sage --notebook=ipython) with 6.4.rc0: this works 
very nicely, and this is impressive!


I have a question, may be a beginners question: is it possible to use an 
existing profile ? I would like to make slides, using the rise 
profile; so I tried:

sage --notebook=ipython --profile=rise
which gives nothing (it gives the same thing as
 sage --notebook=ipython).

I have verified that: ipython profile=rise works (as explained in 
http://nbviewer.ipython.org/github/damianavila/live_reveal/blob/master/Install_RJSE.ipynb).



Yours,

t.

--
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.
attachment: tdumont.vcf

Re: [sage-devel] Re: ipython notebook

2014-11-02 Thread Thierry Dumont

Le 02/11/2014 23:36, Samuel Lelievre a écrit :


2014-11-02 08:35:25 UTC, tdumont:

Le 23/10/2014 10:40, Volker Braun a écrit :
  Did you run make after pulling the git branch? The zeromq and
pyzmq
  packages are new and need to be compiled.
 
 
  On Thursday, October 23, 2014 7:57:46 AM UTC+1, Jori Mantysalo
wrote:
 
  On Wed, 22 Oct 2014, Volker Braun wrote:
 
Its in 6.4.beta6. Run with sage --notebook=ipython
 

I have tried this (sage --notebook=ipython) with 6.4.rc0: this works
very nicely, and this is impressive!

I have a question, may be a beginners question: is it possible to
use an
existing profile ? I would like to make slides, using the rise
profile; so I tried:
sage --notebook=ipython --profile=rise
which gives nothing (it gives the same thing as
   sage --notebook=ipython).

I have verified that: ipython profile=rise works (as explained in

http://nbviewer.ipython.org/github/damianavila/live_reveal/blob/master/Install_RJSE.ipynb

http://www.google.com/url?q=http%3A%2F%2Fnbviewer.ipython.org%2Fgithub%2Fdamianavila%2Flive_reveal%2Fblob%2Fmaster%2FInstall_RJSE.ipynbsa=Dsntz=1usg=AFQjCNFTAb1Dom-ITKAodolsLYixmwvlkw).

what about

 sage -ipython notebook --profile=rise



Nothing more than: sage -ipython notebook
yours.
t.

--
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.
attachment: tdumont.vcf

Re: [sage-devel] Re: Interested in co-writing an article?

2014-10-12 Thread Thierry Dumont

Le 12/10/2014 06:12, rjf a écrit :



On Friday, October 10, 2014 6:26:24 PM UTC-7, Alasdair wrote:

I've written an article about using Sage to develop explicit
Runge-Kutta formulas for the numerical solution of ODEs.


Since the use of a computer algebra system to develop explicit R-K
formulas is pretty much
of a classic operation, and can be done by Maxima which is open source,
and in fact seems to
be done by Maxima in your paper, with a gloss of Sage on top, it is not
clear that you
have something new to contribute.  Besides, high-order RK methods are,
as I recall,
not  very appealing in practice.



This is a genuinely false assertion: in celestial mechanics people use 
implicit (Gaussian) RK method of order 16!

But ok, I dont think this is the place to discuss this...





--
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.
attachment: tdumont.vcf

Re: [sage-devel] Interested in co-writing an article?

2014-10-10 Thread Thierry Dumont


I am very interested by what you have developped. It looks a bit like 
what I am doing.

I 'll contact you directly.
yours
t.

Le 11/10/2014 03:26, Alasdair a écrit :

I've written an article about using Sage to develop explicit Runge-Kutta
formulas for the numerical solution of ODEs.  I've sent it off to a few
journals, all of whom have rejected it - clearly it's not quite the
right fit for any of them: it's too technical for education journals,
and not theoretical enough for computer algebra journals.  So I'm
throwing it open to co-authorship, in the hope that somebody may be
interested in working with me to produce a publishable article.

You can check it out at http://arxiv.org/abs/1402.3883

If you're interested in helping me polishing this up (and getting full
co-authorship) let me know!

By the way, if this is not the right forum for a question like this, I'm
happy for this query to be forwarded elsewhere.

cheers,
Alasdair

--
You received this message because you are subscribed to the Google
Groups sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send
an email to sage-devel+unsubscr...@googlegroups.com
mailto:sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com
mailto:sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


--
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.
attachment: tdumont.vcf

[sage-devel] Incorrect random link.

2014-06-17 Thread Thierry Dumont

Hello,

The random link on the web page, when pointing to SageTex, is incorrect


Random Link: SageTeX - embedding Sage code inside LaTeX documents.

(It is pointing to a non existing url in CTAN).

Yours
t.d.

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.
attachment: tdumont.vcf

[sage-devel] Benchmarks

2014-02-02 Thread Thierry Dumont


Hello,
I was looking at the benchmarks in 
http://www.sagemath.org/tour-benchmarks.html


All are very obsolete (sage  4.1.1, linux 32 bits, a core I5 processor). 
 Redoing the sage examples results in an improvement  factor of 4 at 
least (but not a constant factor).


But I do not have access to mathematica to redo the comparisons!
(I have matlab...).

I would not take a long time to actualize this.

Yours.
t.d.

--
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/groups/opt_out.
attachment: tdumont.vcf

Re: [sage-devel] math software and China

2014-01-22 Thread Thierry Dumont

May be software piracy is not the problem (or there are other problems).
Consider for example scilab, which is a free replacement for Matlab (at
least partially): it has a huge success in China, even if it is very
easy to get non official versions of matlab for only some Yuans.
But Scilab is quite an official software in China, with software
contests for students!
Have a look at this:

http://www.scilab.org.cn/

Le 21/01/2014 15:06, John Cremona a écrit :
 I do know someone in Beiljing who does want to run a Sage Days --
 there was a posting to this list a few months ago.  He is Zhibin Liang
 and did a number theory PhD in Cambridge (UK) not long ago.
 
 If China has such huge resource then surely someone there could run a
 Sage notebook server.  Are they somehow asking for someone outside
 China to provide one which can be used from China?  Surely any open
 Sage server could be used from there?
 
 John
 
 On 21 January 2014 13:53, kcrisman kcris...@gmail.com wrote:
 Strange subject line, right?  But read this post from ask.sagemath:
 +++

 thank you very much!

 better a notebook servers to China,there are at least 600.000.000 people in
 internet.

 many kinds of Python books in China bookstore,but no many people deeply
 study it.

 in China,many people use mathematica,because mathematica 9.01 and maple 17
 is free download every where

 magma 2.15 free download in China.

 in China nobody and no college pay magma V2.20,if pay one times,magma V2.20
 will be free downloaded all China

 in China,95/100 windows OS are free downloaded,no pay a cent to Bill_gate

 +++

 Well, I guess the situation with respect to software piracy in China (and
 presumably elsewhere) is well-known.  I especially find the quote about
 Magma v2.20 interesting.

 Anyway, what are the implications of this for Sage - even the cloud?  I have
 no prediction, but it seems pretty important.  Certainly one issue this same
 poster has mentioned before is that the Great Firewall causes problems (see
 William and cjsh's brief conversation at
 http://ask.sagemath.org/question/3227/ ).

 So I think that this is worth discussing, especially if an entire huge
 country is essentially committed to proprietary software because it doesn't
 function in a proprietary way there; it makes some practical arguments for
 open source rather less compelling.  Are there any researchers thinking of
 planning a Sage Days in the PRC?  That would be really ground-breaking.

 - kcrisman

 --
 You received this message because you are subscribed to the Google Groups
 sage-devel group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to sage-devel+unsubscr...@googlegroups.com.
 To post to this group, send email to sage-devel@googlegroups.com.
 Visit this group at http://groups.google.com/group/sage-devel.
 For more options, visit https://groups.google.com/groups/opt_out.
 

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/groups/opt_out.
attachment: tdumont.vcf

Re: [sage-devel] Re: UTF-8 and old terminals (new startup banner)

2013-07-08 Thread Thierry Dumont

Le 08/07/2013 10:51, Nils Bruin a écrit :

On Monday, July 8, 2013 4:05:29 AM UTC+2, Volker Braun wrote:

Frédéric Chapoton has written a patch at
http://trac.sagemath.org/14733 http://trac.sagemath.org/14733 that
will beautify the Sage startup banner using some UTF-8 characters to
draw the box. This will display incorrectly in terminals that do not
support UTF-8. In that case, Sage still works but the box around the
banner is garbled (most likely rendered by placeholder signs for
non-ASCII characters).


-1 to a UTF-8 banner. There's hardly anything in the sage command line
that requires a UTF-8 capable terminal (all the colour stuff should shut
off automatically for a dumb terminal). Why require it for *just* the
banner?

More personally, I dislike the UTF-8 banner because it looks too nice.
To me it doesn't fit with the simple prompt-and-return-value interface
(see banners of magma, maple, R, matlab, pari/GP, python, IPython, GAP,
Singular). The graphics looking lines are more suggestive of a
menu-driven interface to me, like the text-based dialog interfaces. So
to me, the +-|-built borders raise expectations more appropriate for
what sage command line offers.



Is the banner of R so simple? Probably it does not use UTF8, but it 
speakes your mother's language (French in my case)...

--
You received this message because you are subscribed to the Google
Groups sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send
an email to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/groups/opt_out.




--
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/groups/opt_out.


attachment: tdumont.vcf

[sage-devel] ppa mirror ?

2013-06-22 Thread Thierry Dumont


Hello,

Is there  only one ppa server for Ubuntu ?

If YES, may be it would be reasonable  to make mirrors: in my lab, I 
install sage on all the machines using the ppa: it means 5 interactive 
servers (we use ltsp for every day computer access) + a cluster of 12 
machines +
Maybe the tube is large between Lyon (France) and Cape-Town but I 
think it is by no means serious...


I could look at making a mirror...

t.

--
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/groups/opt_out.


attachment: tdumont.vcf

Re: [sage-devel] LELA for matrices?

2013-06-02 Thread Thierry Dumont

Le 02/06/2013 19:28, Volker Braun a écrit :

On Sunday, June 2, 2013 9:01:01 AM UTC+1, Charles Bouillaguet wrote:

There is a presumably standard sparse-blas  API :
http://math.nist.gov/spblas/


Yes, though it doesn't seem to mandate any matrix storage format. So
apparently you can't let it run on a given chunk of memory but you need
to trust its internal (implementation-dependent) storage.

Does anybody have any opinion on the performance of sparse blas and the
reference implementation?


Sparse Matrices are a big problem for people like me working in the 
field of numerical solution of PDEs (elliptic and parabolic ones); and 
nowadays, there are some interesting researches.


- Whatever the data structure you use (and CSR or CSR like structures 
are used by everybody), the main problem is that the algorithms show a 
poor numerical intensity; let me explain: linear solvers are generally 
iterative krylov type methods (- evaluate a polynomial of the matrix 
times a vector): the arithmetic intensity is the ratio:


 q=bytes transfered between ram and cache /number of floating 
points performed


q is very low with sparse matrices and the performances are typically 
bounded by memory bandwidth to much less than 1 gigaflop.
To improve this, the best is to modify the algorithms (a bit too long to 
explain here!) to try to make more operations by byte transfered: I 
think nobody knows a miraculous data structure, and so we keep the CSR.


- Ok, this is the scientific computing perspective, where you want to 
solve say Poisson equation in 3d with 10^9 unknowns. But I am not sure 
it is what we want to do in Sage, at least nowadays; you can solve 
moderate size systems with sparse matrices (say a 2d Poisson equation 
-- there are 5 non zero terms by line-- with 10^6 unknowns using SuperLU 
which is a *direct* method (LU adapted to sparse matrices), which uses 
CSR structures, and it will work very well.


- In that case, I recall that the main problem will be actually to 
*create* the CSR structure: you want to enter non zero coefficients 
(i,j)- a_ij in any order. The mechanism used by by scipy (and thus 
sage) is very very slow much too slow (may be it changed... this 
must be tested).


- Making CSR structures for other sets of coefficients is not difficult 
(at least in C++), if the coefficients have the same sizeof.


t.d.


--
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.


attachment: tdumont.vcf

Re: [sage-devel] Re: new optional (or experimental) package CSDP?

2013-04-29 Thread Thierry Dumont

Le 29/04/2013 19:23, kcrisman a écrit :



On Wednesday, April 10, 2013 11:52:30 PM UTC-4, Dima Pasechnik wrote:

Dear all,
we'd like to add CSDP, (a fast semidefinite programming solver, one
of the very best around),
as an optional package.
https://projects.coin-or.org/Csdp/ https://projects.coin-or.org/Csdp/



A very good ide! BUT: have you seen that, on 
https://projects.coin-or.org/Csdp/ the first links you can see are broken ?




I assume this works on Linux as well - there were some remarks in the
flagmatic user guide that indicated not, but maybe that wasn't because
of CSDP.  I guess I recall that optional packages should work on all
(most?) platforms we support Sage on.

--
You received this message because you are subscribed to the Google
Groups sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send
an email to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.




--
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.


attachment: tdumont.vcf

[sage-devel] sound in Sage..

2013-03-20 Thread Thierry Dumont

Hi,

May be this can look a bit crazy: is somebody interested by introducing 
sound output in Sage (and other sound tools?). Actually I don't know how 
to do this, but there are lot of Python tools.


I would like to make a course on the FFT with an application to mp3 
encoding: build a small mp3 encoder in Sage; so I need at least to 
produce sound.


After all, I think *lab can make this, and everyting in *lab should be 
developed in Sage, no?


Yours
t.

--
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.


attachment: tdumont.vcf

Re: [sage-devel] sound in Sage..

2013-03-20 Thread Thierry Dumont

There is this also:

http://nsound.sourceforge.net/users_guide/index.html
and many other packages

Ok,
I'll work on this.

t.

--
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.


attachment: tdumont.vcf

Re: [sage-devel] Re: Shibboleth and Sage ?

2013-02-18 Thread Thierry Dumont

Le 18/02/2013 17:06, Harald Schilly a écrit :



On Saturday, February 16, 2013 11:00:05 AM UTC+1, tdumont wrote:

Shibboleth ...


I've implemented it once for a custom internal application. Getting it
running itself is rather easy, because there is an Apache module +
service available (that's also the only way how it got working at all).
Then, all requests are tagged and you can read a custom information
field (like an ID) from inside the requests environment. I don't think
it's that hard to get this into Sage, but some specific knowledge about
the notebook server is necessary.

H



Sometime ago, I devopped a small patch to do ldap authentification; this 
patch is not very beautiful, it can no more be used with nowaday's 
versions of the notebook, and also too many things change when I change

the ldap server, from my university to the french cnrs.
The idea is to find something more generic. To start with, the openID 
part in the notebook does not sem to complicated, and I hope it will 
help for Shibboleth.


t.d.


--
You received this message because you are subscribed to the Google
Groups sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send
an email to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.




--
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.


attachment: tdumont.vcf

[sage-devel] Shibboleth and Sage ?

2013-02-16 Thread Thierry Dumont

Dear Colleagues,

I am wondering if a Sage interface to Shibboleth 
(http://en.wikipedia.org/wiki/Shibboleth_%28Internet2%29) would be 
inresting / difficult to build.


In France, Shibboleth is popular in academic institutions and it would 
be interesting to allow a Sage server to work with it. The concept seems 
 different from OpenID...


Did any body looked at this ?
yours
t.

--
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.


attachment: tdumont.vcf

Re: [sage-devel] Re: Simulation in Sage

2013-02-12 Thread Thierry Dumont

Le 12/02/2013 11:55, Volker Braun a écrit :

+1 for having a FEM implementation.

I've seen some of the codes in numerical GR (Cactus) and they are
definitely not generic FEM implementations that one could apply to a
wide range of problems ;-)

On Tuesday, February 12, 2013 7:12:42 AM UTC, tdumont wrote:

I like FreeFem++
http://www.freefem.org/ff++/index.htm
http://www.freefem.org/ff++/index.htm
because it does not hide mathematics! But integrating it in Sage would
certainly be a hard task, I think. Any opinion about this?


It already has a shared library interface, thats a great plus. I think
it would be easy to tie it in with a simple ipc messaging system much
like the Mathematica mathlink demo I posted about a month ago.

What we primarily need to figure out is how to present the functionality
to the user. I guess thats basically three pieces of information: mesh
construction/refinement, the PDE itself, and boundary data. It would be
nice if you could just throw a symbolic PDE in there and get out
something reasonable...


I know very well the guys in University Paris VI which develop FreeFem; 
FreeFem is widely used in the community of PDEs in France and even, a 
lot of money has been put in the development.

I start a discusssion with them.

Yours
t.


--
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.


attachment: tdumont.vcf

Re: [sage-devel] Re: Simulation in Sage

2013-02-11 Thread Thierry Dumont

Le 11/02/2013 22:57, William Stein a écrit :

On Mon, Feb 11, 2013 at 10:38 AM, Christian Kuper
christian.ku...@t-online.de wrote:

Hello Harald,

thanks for your quick reply


Honestly personal answer: no. But I'm happy to be proven wrong :-)



I would be greatly interested in your opinion why you think no. Simulation
does play a big role when analysing systems (which I use Sage for) and I
personally like having the whole toolbox in one piece. However, it surely
does not make sense to integrate everything into Sage and I am not fully
aware of the Sage philosophy of what would be sensible to put into Sage and
what not.


The mission statement of the Sage project is: Create a viable free
open source alternative to Magma, Maple, Matlab, and Mathematica.
I came up with this statement one year after starting the project, and
have stuck with it since; it seems to provide good general guidance.

Thus if there is some functionality of interest in Matlab (say), then
it belongs in Sage.I'm guessing the Simulink package in Matlab
thus justifies something relevant to this email as belonging in Sage.

William





Well, as I am doing numerical analysis and scientific computing, I 
agree...


But if we look at the list of Matlab Toolboxes:
http://www.mathworks.fr/products/
we can say that a lot have been done (if we are optimistic), or that a 
lot remains to be done...


More seriously:
-we would need to have Finite Elements (and finite volumes), and tools
 to build Finite Elements meshes (matlab pde toolbox...); at least this 
would be a great tool for teaching to have FE integrated in Sage. But 
then the  question will be: which FE code to put in Sage? Many are 
oriented towards a group of applications, and very limited when they are 
free.

I like FreeFem++
http://www.freefem.org/ff++/index.htm
because it does not hide mathematics! But integrating it in Sage would 
certainly be a hard task, I think. Any opinion about this?


-in my country, many people use matlab only for graphics; Sage as good 
graphics, but not yet exactly at the same level as matlab.


-parallelism: matlab as some interesting things...Sage has only mpi and 
forks...


So, there is much to do (which is great)...

t.d.



Since it is a normal python package, the first step of integrating this
into sage is to package it as an experimental SPKG. Then, it is at least
very easy to install.



Fully agree, I did not have making a simulation part of the standard in
mind. As I said, I created a personal experimental package and integrated
it ito one of my Sage installs. This is absolutly sufficient for my personal
use. However, if the community thinks it is worthwhile I would put it up for
review.

Christian

--
You received this message because you are subscribed to the Google Groups
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an
email to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.








--
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.


attachment: tdumont.vcf

Re: [sage-devel] translations of a paragraph into German and French needed in #13657

2013-01-24 Thread Thierry Dumont

Le 24/01/2013 10:04, Julien Puydt a écrit :

Le 24/01/2013 09:35, Francois Bissey a écrit :

On 24/01/13 19:58, Thierry Dumont wrote:


Dima,

I can make the translation into French.

==

Pour calculer les valeurs propres et les vecteurs propres d'une matrice
à coefficients flottants réels ou complexes, la matrice doit être
définie respectivement sur RDF (Real Double Field) ou CDF (Complex
Double Field). Si aucun anneau n'est spécifié et si on utilise des
coefficients réels ou complexes, alors la matrice est définie par défaut
respectivement sur les corps RR ou CC, corps qui ne permettent pas
d'effectuer ces calculs dans tous les cas.

===

Note:
- I do not translate Real Double Field  and Complex Double Field (Corps
des réels doubles does not mean many things.
- In good French sghould be replaced by 



I don't want to be really picky but is coefficients flottants the
accepted jargon for floating point in French. I never heard that
expression before - I would admit that I haven't been in France or
talking science in French since early 2003 and my courses in numerical
computations is from the early 90s.


I was also wondering if à virgule flottante rather than flottants
wouldn't have been better.

Snark


Yes ok, we can say:

...à coefficients en virgule flottante...

instead of:
...à coefficients flottants
...

t.


--
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To post to this group, send email to sage-devel@googlegroups.com.
To unsubscribe from this group, send email to 
sage-devel+unsubscr...@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel?hl=en.


attachment: tdumont.vcf

Re: [sage-devel] translations of a paragraph into German and French needed in #13657

2013-01-23 Thread Thierry Dumont


Dima,

I can make the translation into French.

==

Pour calculer les valeurs propres et les vecteurs propres d'une matrice 
à coefficients flottants réels ou complexes, la matrice doit être 
définie respectivement sur RDF (Real Double Field) ou CDF (Complex 
Double Field). Si aucun anneau n'est spécifié et si on utilise des 
coefficients réels ou complexes, alors la matrice est définie par défaut 
respectivement sur les corps RR ou CC, corps qui ne permettent pas 
d'effectuer ces calculs dans tous les cas.


===

Note:
- I do not translate Real Double Field  and Complex Double Field (Corps 
des réels doubles does not mean many things.

- In good French sghould be replaced by 


Le 24/01/2013 03:20, Dima Pasechnik a écrit :

To wrap up http://trac.sagemath.org/sage_trac/ticket/13657
we need translations (for the Sage tutorial)
of the following pargraph into German and French:


For computing eigenvalues and eigenvectors of matrices over floating
point real or complex numbers, the matrix should be defined over ``RDF``
(Real Double Field) or ``CDF`` (Complex Double Field), respectively. If
no ring is specified and floating point real or complex numbers are used
then by default the matrix is defined over the ``RR`` or ``CC`` fields,
respectively, which do not support these computations for all the
cases::

For your entertainment, that's my humble attempt to fix the German one:
(hopefully it's easier to correct than to redo from scratch :-))

Zur Berechnung von Eigenwerten und Eigenvektoren fuer Matrizen ueber
Gleitcomma reellen oder komplexen Zahlen, sollte die Matrix ueber
``RDF`` (Real Double Field) oder bzw.`` CDF `` (Complex Doppel Field)
definiert werden.  Wenn keine Ring angegeben ist, und Gleitkomma reellen
oder komplexen Zahlen werden verwendet, standardmaessig sollte die
Matrix ueber die ``RR`` oder bzw. ``CC`` Koerper, die nicht fuer alle
Faelle diese Berechnungen unterstuetzt, definiert werden::


I've already added a Russian translation. By the way, does anyone know
why
http://trac.sagemath.org/sage_trac/attachment/ticket/13657/trac_13657-linal_RDF.ru.patch
looks as if the encoding is wrong? The patch, and the corresponding
file doc/ru/tutorial/tour_linalg.rst, have utf-8 encoding.

Is it a trac bug?

Thanks,
Dima




--
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To post to this group, send email to sage-devel@googlegroups.com.
To unsubscribe from this group, send email to 
sage-devel+unsubscr...@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel?hl=en.


attachment: tdumont.vcf

Re: [sage-devel] Re: Stampede Cluster with Intel's Many Integrated Core (MIC) coprocessors

2013-01-05 Thread Thierry Dumont

Le 05/01/2013 16:23, Volker Braun a écrit :

Fundamentally, the Xeon Phi programming model is not really that much
different from OpenCL/Cuda. You send data to the coprocessor card, run
some code there, and pull back the result to the host CPU. It doesn't
speed up anything that is not specifically targeted at the coprocessor
card.

If you want to use it, you first of all need a problem that is
sufficiently parallelizable. Write Xeon Phi code in C/C++, compile it
with the special compiler, wrap it into a shared library, load it into
Cython/Python.

The Intel MKL basically does that, so if we get around to implementing
the proposal that I wrote earlier then at least linear algebra would be
sped up on stampede.

--
You received this message because you are subscribed to the Google
Groups sage-devel group.
To post to this group, send email to sage-devel@googlegroups.com.
To unsubscribe from this group, send email to
sage-devel+unsubscr...@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel?hl=en.


I have a small experience with the Xeon Phi (alias MIC): a pure C++ 
code, about 25000 instructions was ported in 10 minutes on the Xeon Phi: 
once the code is working on a classical Intel machine with an Intel 
compiler), it works on the Xeon Phi (we have a joint project with people 
from Intel to port numerical projects on this platform). This is nice 
and very impressive. Also, complicated data structures can be used: so, 
it seems very nice and easy.


But the devil is waiting for you: getting good performances is much more 
difficult, as everyone can imagine: my code is build with the TBB 
library which seems to be a (the?) good choice for this architecture: at 
the the first execution, the code was running 2 times slower than on 
classical Intel machines (Sandy Bridge). The problem with performances, 
is that:
1) you must be sure to have permanently more than 60 threads available 
for running,
2) you must absolutely use the vector unit (512 bits), and this is not 
so easy: what can be vectorized in Sage's libs?. Ok, the sources will 
remain in C, C++, but vectorizing means often rewrite a marge part of 
the code.

Remember also that the Xeon has only 8gb of ram.

One of the port we tried was a classical EDO solver (Radau5) recoded in 
C++: the code evaluates the Jacobian matrix of some f: IR^n-IR^n by 
finite differences: this can be vectorized, this is not too difficult, 
but it works better if n is a multiple of 8 (because 512= 8x64).


But altogether, developing on this architecture is much more classical 
than developing with cuda: for the old guys like me it's a bit like 
programming on Cray machine in 1990this is quite nice.


If there is some project to do something around Sage and Xeon Phi, I am 
interested (we will by 2 this year). But which project?


t.d.

--
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To post to this group, send email to sage-devel@googlegroups.com.
To unsubscribe from this group, send email to 
sage-devel+unsubscr...@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel?hl=en.


attachment: tdumont.vcf

Re: [sage-devel] Re: Graph neighbours - room for huge performance boost

2013-01-02 Thread Thierry Dumont

Le 02/01/2013 09:22, Nathann Cohen a écrit :

Hellooo !!!

You are totally right about the performance issue, but do you know the
memory size of a Sage graph compared to dict of dict ? I have no idea --
I have just been *VERY* scared by the size of a dict of dict compared to
a C array in the past.

Nathann

--


A similar problem exists withn sparse matrices used by scipy:; scipy 
builds a dict of (i,j) for all the non zero coefficients of the matrix; 
this is so slow that it cannot be used in any real application !


t.d.

--
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To post to this group, send email to sage-devel@googlegroups.com.
To unsubscribe from this group, send email to 
sage-devel+unsubscr...@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel?hl=en.


attachment: tdumont.vcf

Re: [sage-devel] Re: Graph neighbours - room for huge performance boost

2013-01-02 Thread Thierry Dumont

Le 02/01/2013 13:54, Nathann Cohen a écrit :

I suppose that for many graph algorithms the graph can well stay
immutable, and this does not really need a dictionary (perhaps at a
slight cost of efficiency of determining whether two vertices are
adjacent).
And many algorithms actually do not need the latter, as they parse the
neighbourhouds of vertices and the vertices themselves sequentially.
In these cases representing graphs as lists of edges is very bad, one
would be much better off using a tuple of sets (or even the list of
lists) to represent the graph.

I don't know whether there are backhands available to deal with this.


Not a backend, but still... :-P

http://www.sagemath.org/doc/reference/sage/graphs/base/static_sparse_graph.html



This structure is used for the sparse matrices which appear in the 
solution of discretized PDE (known as csl or csr structures, have a look 
at scipy): everybody uses this, and, at the time I write thousands of 
codes are running this.


OK, BUT: how do you build this structure ?

In my applications (PDEs), the pairs of coefficients (i,j) appear in 
*any* order. Do you know an efficient algorithm to build the structure ?
This is here that the dictionary appears: you first put your 
coefficients in the dictionary in the order they appear; when your graph 
has been fully constructed, you transform it into  this static graph 
structure.


The problem is that Python dictionaries are *very* slow. Do you know how 
they are implemented?


Personally (but not is Sage), I use a C++ stl::map:   mapint,int.
Actually, C++ maps are represented by B-Trees. They are reasonably fast 
and the transformation into the static graph structure is very easy: you 
just use a mapint,int::iterator to get the coefficients in the order 
they will appear in the final structure.
If you want do do this in parallel (current problems can have 10^10 
edges), it's a bit more tricky, but feasible, and it is not the concern, 
here.


t.d.


I also prefer to write a good graph structure for my algorithms than
to use Sage's when it is worth spending the extra time :-)

Nathann



--
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To post to this group, send email to sage-devel@googlegroups.com.
To unsubscribe from this group, send email to 
sage-devel+unsubscr...@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel?hl=en.


attachment: tdumont.vcf

Re: [sage-devel] Re: Graph neighbours - room for huge performance boost

2013-01-02 Thread Thierry Dumont

Le 02/01/2013 18:22, Nils Bruin a écrit :

On Jan 2, 5:29 am, Thierry Dumont tdum...@math.univ-lyon1.fr wrote:

The problem is that Python dictionaries are *very* slow. Do you know how
they are implemented?

That's an interesting observation. I think python developers have put
a lot of time into optimizing their dict structures, because they are
used *everywhere* in python itself (global variables and attribute
lookups are all dictionary based). The main hurdle for hash tables is
the computation of the hash function. So perhaps your indices are slow
to hash? Or perhaps your code is written in such a way that there's
quite a bit of allocation/deallocation for lookup of a key (e.g. the
construction of a tuple)?

I'll try to make precise measurements and comparisons, otherwise this 
discussion is non sense I ll do it, when I'll have time :-(


But anyway, why a hash table? In C++, to build these graph structures we 
are talking  about, I only use B-Tree based structures, for which we 
only need to have an order (actually a weak ordering), and an order on 
pairs of integers is something simple to compute; also B-Trees allow 
much more memory locality than containers based on hash tables. If dict 
rely on hash tables (because we do not presuppose we have an 
ordering?--may be this is necessary for other purpose--) this is 
certainly slower...


I'll look a this...

For your application it seems you know a lot about the key format
beforehand, so it's possible that that allows a more efficient
implementation anyway. However, if you find yourself stuck with having
to use python dictionaries and you're unhappy with the speed, my guess
would be:
  - check if you can use/design a key that's fast to hash
  - check if you can carry around entire keys in your code (i.e., don't
pack/unpack into/from tuples all the time)
As far as hash tables go, Python dicts are supposed to be one of the
state-of-the-art implementations.



--
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To post to this group, send email to sage-devel@googlegroups.com.
To unsubscribe from this group, send email to 
sage-devel+unsubscr...@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel?hl=en.


attachment: tdumont.vcf

[sage-devel] Tour-Benchmark.

2012-12-30 Thread Thierry Dumont

Dear Colleagues,

I just want to point out that at least one of the results of the 
Tour-Benchmark should be modified/updated: the 

Matrix Multiplication in Sage vs. MATLAB and Mathematica.

On my personal, quite old, with a Celeron 3Ghz, 2 core machine, 64 bits, 
I get:


752 ms
which is very far from the result on the web site:
3.28 s per loop.

The very impressive performances of Atlas is: 1.06100795755968e10 flops.
As the matrix is large, Atlas use 2 threads, and this gives 
5.30503978779841e9 flops by core, which is what can be expected with 
such a processor.


Ok, this will be certainly much better with a more modern processor, but 
I think nowadays, no processor will take 3.28 second...


Yours,
t.d.

--
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To post to this group, send email to sage-devel@googlegroups.com.
To unsubscribe from this group, send email to 
sage-devel+unsubscr...@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel?hl=en.


attachment: tdumont.vcf

  1   2   >