= Sage-Combinat: enhancing Sage as a toolbox for computer exploration in algebraic combinatorics =

Sage-Combinat is a software project whose mission is: '''to improve the open source mathematical system [[https://www.sagemath.org/|Sage]] as an extensible toolbox for computer exploration in (algebraic) combinatorics, and foster code sharing between researchers in this area'''.

In practice, Sage-combinat is a collection of branches on top of [[https://www.sagemath.org/|Sage]], developed by a community of researchers. The intent is that most of those branches get eventually integrated into Sage as soon as they are mature enough, with a typical short life-cycle of a few weeks. In other words: just install Sage, and you will benefit from all the Sage-combinat development, except for the latest bleeding edge features.

----

== NEWS ==

 * [[https://trac.sagemath.org/sage_trac/wiki/SageCombinatRoadMap|Road map and current status]]

 * [[https://combinat.sagemath.org:8080|Experimental Sage notebook with the Sage-Combinat patches applied]]

 * A new [[https://combinat.sagemath.org/misc/raw-file/tip/articles/2013-01-17-Poster/main2014.pdf|poster]] for Sage-Combinat!

 * [[https://wiki.sagemath.org/TentativeConventions|Help for new Git workflow]]

== Past news ==

 * June 8-12, 2015 [[http://gauss.math.luc.edu/sagedays/|Sage Days 65]], Loyola University Chicago, USA
   Organized by Mark V. Albert, Aaron Lauve, Peter Tingley

 * April 13-16, 2015 [[https://wiki.sagemath.org/days67|Sage Days 67]], UQAM, Canada
   Organized by Mathieu Guay-Paquet, Viviane Pons, Franco Saliola

 * March 17-20, 2015 [[https://wiki.sagemath.org/days64|Sage Days 64]], University of California at Davis, USA
   Organized by Dan Bump, Anne Schilling and Travis Scrimshaw

 * August 14-17, 2014 [[https://wiki.sagemath.org/days60|Sage Days 60]], Chennai, India

 * April 7-11, 2014 [[https://wiki.sagemath.org/days57|Sage(-Combinat) Days 57]], Cernay, France

 * November 4-8, 2013 [[https://wiki.sagemath.org/days54|Sage(-Combinat) Days 54]], University of California at Davis, USA
   Organized by Dan Bump, Anne Schilling and Travis Scrimshaw

 * June 17-21, 2013 [[combinat/FPSAC13|Sage(-Combinat) days 49]], in Orsay as satellite event to [[https://www.liafa.jussieu.fr/fpsac13/|FPSAC'13]]
   Organized by Alejandro Morales, Anne Schilling, Nicolas M. Thiery

 * January 28 - May 3, 2013: [[https://icerm.brown.edu/sp-s13/|ICERM Semester Program on "Automorphic Forms, Combinatorial Representation Theory and Multiple Dirichlet Series"]], with a strong Sage and Sage-Combinat component, ICERM, Brown, USA

 * February 11-15, 2013 [[https://icerm.brown.edu/sp-s13/|Sage Days: Multiple Dirichlet Series, Combinatorics, and Representation Theory]], ICERM, Brown, USA
   Organized by Franco Saliola, Anne Schilling, Nicolas M. Thiery

 * January 21-25, 2013 [[http://www.aimath.org/ARCC/workshops/onlinedata.html|Online Databases:from L-functions to combinatorics]], Edinburgh
   Organized by Paul-Olivier DeHaye, Nicolas M. Thiery.

 * October 29 - November 9, 2012: [[http://www.cimpa-icpam.org/spip.php?article430|CIMPA summer school Discrete mathematics : combinatorial, dynamical and algorithmic aspects]], with a strong Sage and Sage-Combinat component, Bobo Dioulasso, Burkina Faso

 * July 9-13 2012: [[http://www.ima.umn.edu/2011-2012/SW7.9-13.12/|Sage(-Combinat) Days 40]]: Algebraic Combinatorics, IMA, Minneapolis, USA
   Organized by Gregg Musiker, Franco Saliola, Anne Schilling, Nicolas M. Thiery.

 * May 7-11 2012: [[https://wiki.sagemath.org/days38|Sage(-Combinat) Days 38]]: algebraic combinatorics and the representation theory of algebras, Centre de recherches mathématiques, Montréal, Canada

 * April 18-th 2012: Coxeter/Cluster algebra afternoon at the [[https://wiki.sagemath.org/GroupeUtilisateursParis|Paris Sage User Group meeting]]

 * February 8-10 2012: [[combinat/ClusterPackageDaysHannover|Sage and cluster algebra workshop, University of Hannover]]

 * February 6-10 2012: [[combinat/SageCombinatDaysCernay2012|Sage-Combinat Days Cernay 2012]]

 * March 19-23 2012: [[combinat/EjcGdrIm2012|EJC du GDR-im]] a Rennes [[http://ejcim2012.irisa.fr/index.html|site officiel]]

 * May 2-6, 2011: [[https://wiki.sagemath.org/days30| Sage Days 30]]: Combinatorics (Schubert calculus, cluster algebras) and Number theory (integer vectors, multidimensional digit representations) in Acadia University, Wolfville, Nova Scotia, Canada
   Organized by Eva Curry and Hugh Thomas.

 * January 17-19, 2011: [[https://wiki.sagemath.org/days28|Sage days 28]]: dynamics, geometry, and analytic combinatorics in Orsay

 * July 10, 2010: First release of [[http://sagebook.gforge.inria.fr/|Calcul Mathématique avec Sage]]
   A 315 pages open source french introductory book on computational mathematics, illustrated in Sage, and including a 35 pages chapter on combinatorics (and soon one on graph theory).

 * July 7-15, 2010: [[combinat/AffineSchubertCalculusWorkshop|Affine Schubert Calculus workshop and summer school in Toronto]]
   It includes several Sage and Sage-Combinat sessions.
   Organized by Anne Schilling and Mike Zabrocki.

 * June 14-18, 2010: [[combinat/SageCombinatChevieWorkshopOrsay2010|Joint Sage-Combinat and Chevie Workshop in Orsay]]

 * May 3-7, 2010: [[http://www.fields.utoronto.ca/programs/scientific/09-10/sage/|Sage Days 20.5 in Toronto]]
   Organized by Nantel Bergeron, FrancoSaliola and Mike Zabrocki,
   again with a serious algebraic combinatorics slant

 * February 22-26, 2010: [[https://wiki.sagemath.org/daysmarseille|Sage days 20]]
   The thematic month [[https://www.lirmm.fr/arith/wiki/MathInfo2010/MathInfo2010|MathInfo 2010]] at CIRM, Marseille included a Sage days week. FlorentHivert, NicolasThiéry, and FrancoSaliola were among the organizers and there was a serious combinatorics slant.

 * July 25-29, 2009: [[combinat/FPSAC09|*-Combinat 2009]]

   We held an International Sage Workshop on [[combinat/FPSAC09|Free and Practical Software for Algebraic Combinatorics]] at RISC, Linz, Austria, right after [[http://www.risc.uni-linz.ac.at/about/conferences/fpsac2009/|FPSAC'09]]

 * May 25th, 2009: The Sage-words library demonstrated at the 2nd Canadian Discrete and Algorithmic Mathematics Conference [[http://www.crm.umontreal.ca/CanaDAM2009/index_e.shtml|CanaDAM'09]]
 [[attachment:2009-05-25-CanaDAM.sws|Sage worksheet]], [[attachment:2009-05-25-CanaDAM.pdf|PDF]].

 * April 15th, 2009: Software demonstration accepted for [[http://www.risc.uni-linz.ac.at/about/conferences/fpsac2009/|FPSAC'09]]
 [[attachment:2009-07-20-FPSAC.pdf|PDF]], [[attachment:.2009-07-20-FPSAC.tex|LaTeX Source]] [[attachment:2009-07-20-FPSAC.bbl|LaTeX bibliography]]

 * January 26-30, 2009: [[combinat/SageCombinatWorkshopOrsay|Sage-Combinat Workshop in Orsay]]

 * 2008-06-19: MuPAD-Combinat join forces with Sage

    Sage-combinat was born as a partial port of [[http://mupad-combinat.sf.net|MuPAD-Combinat]]. After months of discussions and experiments, an enthusiastic consensus emerged in the MuPAD-Combinat community to join Sage. Sage-combinat henceforth became the natural successor of {{{MuPAD-Combinat}}}.

   The transition was a massive investment (and is not yet completely
   over): seven years of hard work to port over! However a lot of
   experience was gained since 2000, and most of the design was pretty
   clear, and we could *share* the work.

----

== Who are we? What is Sage-Combinat used for? ==

 * [[combinat/Contributors|Contributors]]

 * [[combinat/Institutions|Institutions and sponsors]]

 * [[combinat/Grants|Grant applications]]

 * [[http://www.sagemath.org/library-publications-combinat.html|Publications citing Sage-Combinat]]

 * [[combinat/CiteSageCombinat|Cite Sage-Combinat]] when you use it for research publications.

 * Plume's review pages on Sage-Combinat: [[http://www.projet-plume.org/en/relier/sage-combinat-0|English]] and [[http://www.projet-plume.org/fr/relier/sage-combinat|French]]

 * [[http://combinat.sagemath.org/misc/raw-file/tip/articles/2013-01-17-Poster/main.pdf|Sage-Combinat's poster]]

 * [[combinat/CoolPictures|Cool pictures we produced with Sage-Combinat for our research]]

----

== How to participate and contribute ==


=== Communication ===

 * Join our mailing lists:
    * Announcement mailing list (to come)
    * [[http://groups.google.com/group/sage-combinat-devel|sage-combinat-devel]]: Developers' mailing list
    * [[http://groups.google.com/group/sage-combinat-commits|sage-combinat-commits]]: A low traffic mailing list which receives an automatic notice whenever a sage-combinat related ticket is modified (and eventually whenever a commit is done on the patch server).
    * [[http://groups.google.com/group/sage-combinat-days|sage-combinat-days]]: Mailing list for the organisation of Sage-Combinat days
 * Check the  [[http://trac.sagemath.org/sage_trac/wiki/SageCombinatRoadMap|road map and current status]]
 * Post bug reports, suggestions, patches on the [[http://trac.sagemath.org/sage_trac/milestone/sage-combinat|Sage-Combinat trac server]] or on the [[http://groups.google.com/group/sage-combinat-devel|mailing list]].

=== Code ===
 
Since Sage 6.0, the
[[http://trac.sagemath.org/wiki/QuickStartSageGit|development workflow]]
has been reworked in depth, and we are in the progress of migrating
the extensions as git branches. Here are some useful links:

 * [[http://trac.sagemath.org/query?status=closed&component=combinatorics&or&status=closed&cc=~sage-combinat&col=id&col=summary&col=component&col=status&col=type&col=priority&col=milestone&order=priority|Closed tickets related to combinatorics]]

 * [[http://trac.sagemath.org/query?status=needs_info&status=needs_review&status=needs_work&status=positive_review&component=combinatorics&or&status=needs_info&status=needs_review&status=needs_work&status=positive_review&cc=~sage-combinat&col=id&col=summary&col=component&col=status&col=type&col=priority&col=milestone&order=priority|In-progress tickets related to combinatorics]]

 * [[https://wiki.sagemath.org/TentativeConventions|Some conventions and help with the new git]]


The Sage-Combinat extensions used to be managed as a collection of
patches on our [[http://combinat.sagemath.org/patches/|patch server]],
using a so-called mercurial queue.
Quite some stuff below is thus outdated, and will be progressively
replaced by information on the new workflow.

 * Browse the [[http://combinat.sagemath.org/code/file/tip/sage/|Sage sources with the Sage-combinat patches applied]] (only useful for Sage version prior to sage-6.0)

 * Developing for Sage-Combinat on Windows: [[combinat/SageDevelWindows|Sage Development on Windows]].

=== Design ===

 * Have a look and participate to [[combinat/DesignDiscussion|design discussions]].

 * Contribute to the list of [[combinat/Weirdness|quirks and weirdness issues]] in the {{{*-Combinat}}} design.

=== Documentation ===

 * [[combinat/HelpOnTheDoc|Some tips and tricks about the documentation system]]

== Links ==

 * The [[http://www.mat.univie.ac.at/~slc/divers/software.html|Combinatorial Software and Databases]] web page maintained by Christian Krattenthaler