# Sage Days @ LISN 2025
Nous utiliserons ce document collaboratif pour partager des liens et astuces durant les journées Sage au LISN, 2-3 Juillet 2025
## Accéder à SageMath
- [Accès en ligne](https://mydocker.universite-paris-saclay.fr/shell/join/gkctIyHvdZkofetGeMju) sur le service souverain [myDocker@Paris-Saclay](https://mydocker.gitlab.dsi.universite-paris-saclay.fr/)
- [Installer SageMath](https://www.sagemath.org/download.html)
## Introduction à SageMath
Nous commencerons par explorer ensemble l'introduction de ce [cours d'*Algèbre et Calcul Formel*](https://nthiery.github.io/agregation/Introduction/Cours.html) (Option C Agrégation). Pour y accéder interactivement, suivre le lien d'accès à Sage ci-dessus, «Lancer l'environnement» puis choisir «JupyterLab et tableau de bord du cours Algèbre et Calcul Formel». Puis suivre les instructions et ouvrir l'introduction.
Par la suite, vous poursuivrez vous même l'exploration, en fonction de votre expérience et de vos intérêts. Voici quelques propositions de ressources:
- Le livre [*Computational Mathematics, with Sage*](https://www.sagemath.org/sagebook/english.html): chapitres *First steps*, *Combinatorics*, *Graph Theory*, ...
- Les [tutoriels thématiques de SageMath](https://doc.sagemath.org/html/en/thematic_tutorials/): voir par exemple le [tutoriel sur les compréhensions](https://doc.sagemath.org/html/en/thematic_tutorials/tutorial-comprehensions.html#tutorial-comprehensions) ou celui sur la [visualisation de systèmes de racines](https://doc.sagemath.org/html/en/reference/combinat/sage/combinat/root_system/plot.html#sage-combinat-root-system-plot);
- Le cours [SageMath: research and experimentation in Combinatorics](https://github.com/VivianePons/2024_ALEA/) de Viviane à Alea 2024;
- La suite du cours [*Algèbre et Calcul Formel*](https://nthiery.github.io/agregation/Introduction/Cours.html) ([ouvrir sur myDocker](https://mydocker.universite-paris-saclay.fr/shell/join/gkctIyHvdZkofetGeMju));
- Un [cours d'introduction à la programmation, avec Python](https://py-edu-fr.pages.heptapod.net/py-edu-fr/intro-prog/) ([ouvrir sur myDocker](https://mydocker.universite-paris-saclay.fr/shell/join/IvvgFOBBFzGLwuGJeFSb));
- Un [tutoriel pour l'environnement JupyterLab](https://tutoriels-jupyter.pages.in2p3.fr/README.html) ([ouvrir sur myDocker](https://mydocker.universite-paris-saclay.fr/shell/join/IvvgFOBBFzGLwuGJeFSb));
- Les défis du [Projet Euler](http://projecteuler.net) ([version en Français](http://submoon.freeshell.org/fr/sphinx/euler.html)).
## Projets
* Natural number game : Hoan, Viviane, Léonard, Bianca
* Treillis / framing lattices : Clément
* Blossoming trees contribution : Wenjie
* Graphes : Elena, Judith
* Install : Adeline, chiara, Marie
* tuto / livre : Chiara
* Tuto combi : Parsa
* Algèbre de Hopf : Pierre
* matrices, polynômes : Sarah
### Installation paquets gap sur mydocker
Ouvrir un terminal
```
mamba install gcc gxx nano
```
Éditer le fichier de configuration de gap:
```
nano /opt/conda/lib/gap/sysinfo.gap
```
de sorte à définir `GAP_CC` et `GAP_CXX` comme suit:
```
GAP_CC="gcc "
GAP_CXX="g++ -std=gnu++11 "
```
Installer gap's `PackageManager`:
```
git clone https://github.com/gap-packages/PackageManager.git ~/.gap/pkg/PackageManager
```
### Pour installer un nouveau package (par exemple `fr`)
Depuis un terminal, lancer gap:
```
gap
```
Lancer les commandes suivantes:
```
LoadPackage("PackageManager");
InstallPackage("fr");
```
## The natural number game (Initiation a Lean)
https://adam.math.hhu.de/#/g/leanprover-community/nng4
## Partager son code (Viviane 3/7 9h30)
* code de recherche
* repo git [exemple](https://github.com/VivianePons/SWeakOrder/)
* Licence, exemples, doc, install
* Zenodo [exemple](https://zenodo.org/records/8380308)
* packages, [exemple](https://github.com/VivianePons/multipolynomial-bases/)
* Publication, [exemple JOSS](https://joss.theoj.org/)
## Contribution workflow (Chiara 3/7 10h)
https://codimd.math.cnrs.fr/UEtFYpNoSGeqInIjFcZf6Q