#19890: Improve standardization of words and permutations
-------------------------------------+-------------------------------------
       Reporter:  elixyre            |        Owner:
           Type:  enhancement        |       Status:  positive_review
       Priority:  major              |    Milestone:  sage-7.1
      Component:  combinatorics      |   Resolution:
       Keywords:                     |    Merged in:
        Authors:  Jean-Baptiste      |    Reviewers:  Travis Scrimshaw,
  Priez, Aladin Virmaux              |  Vincent Delecroix
Report Upstream:  N/A                |  Work issues:
         Branch:                     |       Commit:
  u/tscrim/improve_standardization-19890|  
61b15f4115dec4a07d21a30dba8c503c5296ae17
   Dependencies:                     |     Stopgaps:
-------------------------------------+-------------------------------------
Changes (by vdelecroix):

 * status:  needs_review => positive_review
 * reviewer:  Travis Scrimshaw => Travis Scrimshaw, Vincent Delecroix


Old description:

> Improvement of the standardization computation
>
>  - the current one:
> {{{
> sage: sage: w = list(Words(100, 100000).random_element())
> sage: sage: from sage.combinat.permutation import to_standard
> sage: sage: %time sig = to_standard(w)
> CPU times: user 4min 42s, sys: 2.65 s, total: 4min 45s
> Wall time: 4min 53s
> }}}
>  - using the merge sort algorithm:
> {{{
> sage: sage: w = list(Words(100, 100000).random_element())
> sage: sage: from sage.combinat.permutation import to_standard
> sage: sage: %time sig = to_standard(w)
> CPU times: user 2.33 s, sys: 147 ms, total: 2.47 s
> Wall time: 2.5 s
> }}}

New description:

 Improvement of the standardization computation

  - the current one:
 {{{
 sage: w = list(Words(100, 10000).random_element())
 sage: from sage.combinat.permutation import to_standard
 sage: %time sig = to_standard(w)
 CPU times: user 3.06 s, sys: 0 ns, total: 3.06 s
 Wall time: 3.03 s
 }}}
  - the new version:
 {{{
 sage: w = list(Words(100, 10000).random_element())
 sage: from sage.combinat.permutation import to_standard
 sage: %time sig = to_standard(w)
 CPU times: user 28 ms, sys: 12 ms, total: 40 ms
 Wall time: 61.2 ms
 }}}

--

--
Ticket URL: <http://trac.sagemath.org/ticket/19890#comment:18>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica, 
and MATLAB

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

Reply via email to