Opened 3 years ago

Closed 3 years ago

#23868 closed enhancement (fixed)

speed_up_tableau_conjugate

Reported by: mantepse Owned by:
Priority: major Milestone: sage-8.1
Component: combinatorics Keywords:
Cc: Merged in:
Authors: Martin Rubey Reviewers: Travis Scrimshaw
Report Upstream: N/A Work issues:
Branch: abf4060 (Commits) Commit: abf4060c58ac2ddcee553d146a5c5c23ea55cc87
Dependencies: Stopgaps:

Description (last modified by mantepse)

a speedup mainly for reasonably small tableaux (the main problem is the checking in Partition when calling self.shape().conjugate(), but even without this check, the new version is faster):

sage: l = [t for t in SemistandardTableaux(6)]
sage: %timeit [conjugate(t) for t in l]
1 loop, best of 3: 3.35 s per loop
sage: %timeit [conjugate2(t) for t in l]
1 loop, best of 3: 684 ms per loop
sage: l2 = [StandardTableaux(4000).random_element() for i in range(10)]
sage: %timeit [conjugate(t) for t in l2]
1 loop, best of 3: 1.04 s per loop
sage: %timeit [conjugate2(t) for t in l2]
1 loop, best of 3: 990 ms per loop

Change History (5)

comment:1 Changed 3 years ago by mantepse

  • Branch set to u/mantepse/speed_up_tableau_conjugate

comment:2 Changed 3 years ago by mantepse

  • Authors set to Martin Rubey
  • Branch u/mantepse/speed_up_tableau_conjugate deleted
  • Component changed from PLEASE CHANGE to combinatorics
  • Description modified (diff)
  • Status changed from new to needs_review
  • Type changed from PLEASE CHANGE to enhancement

comment:3 Changed 3 years ago by mantepse

  • Branch set to u/mantepse/speed_up_tableau_conjugate
  • Commit set to abf4060c58ac2ddcee553d146a5c5c23ea55cc87

comment:4 Changed 3 years ago by tscrim

  • Reviewers set to Travis Scrimshaw
  • Status changed from needs_review to positive_review

LGTM.

comment:5 Changed 3 years ago by vbraun

  • Branch changed from u/mantepse/speed_up_tableau_conjugate to abf4060c58ac2ddcee553d146a5c5c23ea55cc87
  • Resolution set to fixed
  • Status changed from positive_review to closed
Note: See TracTickets for help on using tickets.