Size: 14227
Comment:
|
← Revision 88 as of 2019-09-29 16:30:09 ⇥
Size: 11102
Comment:
|
Deletions are marked like this. | Additions are marked like this. |
Line 1: | Line 1: |
Rédiger « SébastienLabbé/CoursSurSage » ici. | #language fr = Jours Sage au LaCIM (UQAM) -- 14, 15 et 16 juillet 2009 = |
Line 3: | Line 4: |
||||||<tablestyle="width: 80%" style="background-color: #E0E0FF;">Sunday, June 21|| || 19:00 ||<-2> '''Meet informally in the lobby of the Resedentia''' || || 21:00 ||<-2> '''From the Resedentia, go to dinner''' || ||||||<tablestyle="width: 80%" style="background-color: #E0E0FF;">Monday, June 22|| ||||||[[http://www.crm.cat/Conferences/0809/ThematicDays/SageDay/index.htm|CRM Thematic Day on Mathematics and Computation]]|| || 9:00 ||<-2> '''Meet with Jordi Quer at the [[http://www.resa.es/eng/residencias/torre_girona|Residencia lobby]], take the train together to CRM''' || ||<|2> 10:30-11:30 ||<|2> William Stein || [[http://wstein.org/talks/20090622-sagedays16-thematic/|'''Sage: Unifying Mathematical Software''']], [[http://wstein.org/edu/2009/sd16/00021-stein-unifying_open_source_math_software-part1.m4v|video part 1]], [[http://wstein.org/edu/2009/sd16/00022-stein-unifying_open_source_math_software-part2.m4v|video part 2]]|| || This will be an overview talk about Sage, which explains the history and motivation for the project, demos some key features of Sage, and discusses where we are going next. It will be accessible to people in all research areas and assumes no prior experience with Sage. || || 11:30-12:00 || Coffee Break || || ||<|2> 12:00-13:00 ||<|2> Henri Cohen || [[attachment:barcelona_cohen.pdf|'''Experimental methods in number theory and analysis''']] [[http://wstein.org/edu/2009/sd16/00023-cohen-experimental_methods-part1.m4v|video part 1]], [[http://wstein.org/edu/2009/sd16/00024-cohen-experimental_methods-part2.m4v|video part 2]] || || In this talk, I would like to give a number of examples of numerical experiments coming from number theory and analysis, mention the tools used to perform them, and show how they sometimes can lead to interesting and deep conjectures. || ||<|2> 14:30-15:30 ||<|2> Àngel Jorba || [[attachment:transpes.pdf|'''Developing tailored software for specific problems''']] [[http://wstein.org/edu/2009/sd16/00025-jorba-tailored_software-part1.m4v|video part 1]], [[http://wstein.org/edu/2009/sd16/00026-jorba-tailored_software-part2.m4v|video part 2]]|| || We will discuss the advantages and inconveniences of developing software (in a general purpose language like C) for concrete problems. I will also mention the results of a pool done by the Spanish project "i-Math" on the use of computational resources of the mathematical research groups in Spain. || || 15:30-16:00 || Coffee Break || || || 16:00-17:00 || Round Table [[http://wstein.org/edu/2009/sd16/00028-panel_discussion-part1.m4v|video part 1]], [[http://wstein.org/edu/2009/sd16/00029-panel_discussion-part2.m4v|video part 2]]|| || ||||||FME|| || 18:45 || Leave from Residencia to UPC || || || 19:00-- || Coding Sprint Organization at UPC [[http://wstein.org/edu/2009/sd16/00031-introductions_by_conference_participants.m4v|video introductions]]|| || ||||||<tablestyle="width: 80%" style="background-color: #E0E0FF;">Tuesday, June 23|| ||||||FME|| ||<|2> 10:30-11:30 ||<|2> Jordi Guàrdia || [[attachment:guardia.pdf|'''New ideas for computing integral bases''']] [[http://wstein.org/edu/2009/sd16/00031-jordi_guardia-part1.m4v|video part 1]], [[http://wstein.org/edu/2009/sd16/00032-jordi_guardia-part2.m4v|video part 2]]|| || The determination of the ring of integers of a number field is one of the main tasks of computational algebraic number theory. The use of higher Newton polygons provides a new insight into the problem, leading to a fast method to compute integral bases, discriminants and prime ideal factorization in number fields. || || 11:30-12:00 || Coffee Break |||| ||<|2> 12:00-13:00 ||<|2> William Stein || [[http://wstein.org/talks/20090623-elliptic_curves/|'''How to use Sage to compute with Elliptic Curves''']] [[http://wstein.org/edu/2009/sd16/00033-wstein-elliptic_curves-part1.m4v|video part 1]] [[http://wstein.org/edu/2009/sd16/00034-wstein-elliptic_curves-part2.m4v|video part 2]]|| || I will explain how to use Sage to define elliptic curves over various fields, do arithmetic on them, and compute standard invariants. Then I'll talk about elliptic curves over finite fields, and how to count points and compute the group structure. Next, I'll talk about elliptic curves over number fields and Sage's implementation of Tate's algorithm. Finally, I'll discuss computing the invariants in the BSD conjecture for elliptic curves over QQ. || || 13:00-14:30 || Lunch || || ||<|2> 14:30-15:30 ||<|2> Clément Pernet & Majid Khonji || [[attachment:SD16_mkhonji_cpernet.pdf|'''Computing exactly with unsafe resources: fault tolerant exact linear algebra and cloud computing''']] [[http://wstein.org/edu/2009/sd16/00035-pernet-linear_algebra_part1.m4v|video part 1]] [[http://wstein.org/edu/2009/sd16/00036-pernet-linear_algebra-part2.m4v|video part 2]]|| || In several ways, challenges in computational mathematics (including computational number theory, graph theory, cryptanalysis, ...) involve large linear algebra computations over Z or Q. Distributed, peer-to-peer or Cloud computing represents nowadays the best perspectives to access large and cheap computing power, but based on unreliable resources. Fault tolerant techniques are therefore developed in order to increase the confidence in the computations, or even to certify it. In the case of exact computations, the algebraic properties of the problems are well suited for the development of algorithm based fault tolerant protocols. In particular, the Chinese Remaindering Algorithm, offering an embarrassingly easy parallelization, can be adapted to work as an error correcting code and tolerate errors. We will present and demonstrate these algorithms and protocols in the case of a distributed computation of the determinant of a matrix over Z. || ||<|2> 15:30-16:30 ||<|2> Martin Albrecht || [[attachment:albrecht_sagedev.pdf|'''How to get started developing Sage''']] [[http://wstein.org/edu/2009/sd16/00037-malb-how_to_be_sage_dev.m4v|video part 1]] [[http://wstein.org/edu/2009/sd16/00038-malb-how_to_be_sage_dev.m4v|video part 2]]|| || In this talk, we will try to highlight a few interesting and relevant bits and pieces for getting into Sage development. We will give an overview of how Sage is structured and step through the Sage development process. The talk is meant to be fairly interactive with people asking questions etc. || || Free evening || Sant Joan festivity |||| ||||||<tablestyle="width: 80%" style="background-color: #E0E0FF;">Wednesday, June 24|| ||||||FME|| ||<|2> 13:00-14:00 ||<|2> William Stein || [[http://wstein.org/talks/20090624-sagedays16-modform/|'''Modular forms and modular abelian varieties in Sage''']] [[http://wstein.org/edu/2009/sd16/wstein-modular_forms-part1.m4v|video part 1]] [[http://wstein.org/edu/2009/sd16/wstein-modular_forms-part2.m4v|video part 2]]|| || I will survey the capabilities in Sage for computing dimensions of modular forms spaces, congruence subgroups, modular symbols, modular forms, Brandt modules, overconvergent modular forms, half-integral weight forms, and modular abelian varieties. I will discuss both what is in Sage, and what is missing. || ||<|2> 14:30-15:30 ||<|2> Christian Eder || [[attachment:eder.pdf|'''Faugere's F5 Algorithm: variants and implementation issues''']] [[http://wstein.org/edu/2009/sd16/eden-f5-part1.m4v|video part 1]] [[http://wstein.org/edu/2009/sd16/eden-f5-part2.m4v|video part 2]]|| || In this talk we shortly recall main properties of Gröbner bases used for their computations. After an introduction on Faugere's F5 Algorithm we examine its points of inefficiency, especially the reduction process, and present the variant F5C improving these. The benefits of this improvement are explained and represented in detail. Moreover some hints implementing F5's data structures are given and the positive effects of F5C on these are shown. In the end we give some insight into the implementation of F5's reduction process in an F4-ish manner, i.e. using symbolic preprocessing. || || 16:00-- || Coding Sprint / Status Report || || ||||||<tablestyle="width: 80%" style="background-color: #E0E0FF;">Thursday, June 25|| ||||||FME|| ||<|2> 10:30-11:30 ||<|2> David Loeffler || [[http://www.dpmms.cam.ac.uk/~dl267/maths/lecturenotes/sagedays16_slides.pdf|'''P-adic modular forms in Sage''']] [[http://wstein.org/edu/2009/sd16/loeffler-padic_modular_forms-part1.m4v|video part 1]], [[http://wstein.org/edu/2009/sd16/loeffler-padic_modular_forms-part2.m4v|video part 2]]|| || I will give a quick introduction to p-adic modular forms, which are a generalisation of classical modular forms. I will first give a quick introduction to the theory, and then describe a few algorithms that can be used to compute them, and give an example of one of these which has been implemented in Sage since 3.4.1. Finally I will talk a little about some issues in inexact p-adic linear algebra that come up in the process. || || 11:30-12:00 || Coffee Break || || ||<|2> 12:00-13:00 ||<|2> David Kohel || '''ECHIDNA: Open source Magma extensions for Sage''' [[attachment:ECHIDNA.sws|sws]], [[attachment:ECHIDNA.pdf|PDF]] [[http://wstein.org/edu/2009/sd16/kohel-echidna-elliptic_curves_and_higher_dimensional_analogues-part1.m4v|video part 1]] [[http://wstein.org/edu/2009/sd16/kohel-echidna-elliptic_curves_and_higher_dimensional_analogues-part2.m4v|video part 2]]|| || I will present the open source GPL repository of Magma code:<<BR>>Elliptic Curves and Higher Dimensional Analogues<<BR>>(http://echidna.maths.usyd.edu.au/kohel/alg/), <<BR>> with associated databases, and its use as an extension to Sage. This repository includes updates to the original packages for quaternion algebras, Brandt modules and generalization of my code for genera of lattices (as a quadratic modules package). As new features, it includes p-adic point counting via canonical lifts for elliptic curves (AGM-X_0(N)), extensions to the Igusa invariants and Mestre's algorithm (to small characteristic) in genus 2, arithmetic of CM fields and CM constructions for curves of genus 2, invariants of genus 3 curves (Dixmier-Ohno and Shioda's hyperelliptic invariants), and numerous other features (e.g. working in generic Picard groups, singular cubic curves and generalized Jacobians of singular hyperelliptics, etc.). The majority of the algorithms are completely new to Magma, and represent algorithms developed over more than a decade (with students and collaborators). The Sage developer community is invited to contribute, document, and improve ECHIDNA, and port features directly to Sage. || || 13:00-14:30 || Lunch |||| ||<|2> 14:30-15:30 ||<|2> Robert Miller || '''Fast compiled graphs in Sage''' [[http://wstein.org/edu/2009/sd16/miller-graph_theory_in_sage-part1.m4v|video part 1]] [[http://wstein.org/edu/2009/sd16/miller-graph_theory_in_sage-part2.m4v|video part 2]]|| || There will be a demonstration and advertisement of new developments in graph theory in Sage. In particular, compiled Sage graphs have finally reached the same level of functionality as NetworkX graphs, the slower Python implementation. || || 16:00-- || Coding Sprint Organizer / Status Report |||| ||||||<tablestyle="width: 80%" style="background-color: #E0E0FF;">Friday, June 26|| ||||||FME|| ||<|2> 10:30-11:30 ||<|2> Rainer Schulze-Pillot || [[attachment:schulze-pillot.pdf|Siegel Theta Series and Modular Forms]] || || Ordinary theta series count (in their Fourier coefficients) the number of ways in which the integral positive definite quadratic form || 11:30-12:00 || Coffee Break || || ||<|2> 12:00-13:00 ||<|2> Emmanuel Thomé || [[attachment:thome.pdf|'''Multiplication of binary polynomials''']] || || Multiplying binary polynomials is an elementary operation which occurs as a basic primitive in several contexts, from computer algebra to coding theory and cryptography. We study here a variety of algorithms for this operation, with the intent of obtaining satisfactory speeds for a wide range of possible degrees. We look into "low level" aspects related to microprocessor-specific optimizations, and higher level algorithms such as of course the Karatsuba and Toom-Cook approaches, but also two different FFT algorithms. Several improvements are presented. We provide comparisons of the timings obtained with those of the NTL library. The software presented can, as of NTL 5.5, be hooked into NTL as an add-on. || || 13:00-14:30 || Lunch || || ||<|2> 14:30-15:30 ||<|2> Maite Aranes || [[attachment:aranes.pdf|'''Manin symbols over number fields''']] [[http://wstein.org/edu/2009/sd16/aranes-manin_symbols_over_number_fields.m4v|video]]|| || I will discuss results about cusps and Manin symbols over a number field K, which should be useful in the computation of spaces of cusp forms for GL(2, K) via modular symbols. I will also present ongoing work on implementations of both of these in Sage. || || 16:00-- ||Coding Sprint // Status Report |||| ||||||<tablestyle="width: 80%" style="background-color: #E0E0FF;">Saturday, June 26|| ||||||FME|| || 10:30-- || Coding Sprint wrapup [[http://wstein.org/edu/2009/sd16/00039.m4v|video part 1]], [[http://wstein.org/edu/2009/sd16/00040.m4v|video part 2]] [[http://wstein.org/edu/2009/sd16/00041.m4v|video part 3]] |||| |
=== Local : PK-S1570, salle E. === On y accède via la porte PK-M500 au niveau métro (près de la rue Jeanne-Mance). [[http://www.uqam.ca/campus/pavillons/pk.htm|Carte du campus]] === Organisé par Sébastien Labbé et le LaCIM === Dans le cadre de son École d'été, le [[http://www.lacim.uqam.ca/|Laboratoire de Combinatoire et d'Informatique Mathématique (LaCIM)]] organise les Jours Sage au LaCIM et ceci pour une deuxième année consécutive à l'[[http://www.uqam.ca/|Université du Québec à Montréal (UQAM)]]. En effet, FrancoSaliola alors post doc au LaCIM avait organisé une semaine sur Sage en mai 2008. Cette année, la formation est donnée par SébastienLabbé, étudiant au doctorat en mathématiques. Les professeurs comme les étudiants sont invités. Comme l'an passé, la formation sur Sage se veut accessible à tous, c'est-à-dire que nous n'assumons pas que les participants ont déjà une expérience avec Python ou avec Sage. À l'image des Sage Days, les Jours Sage au LaCIM seront très interactifs et les participants auront beaucoup de temps pour expérimenter la théorie présentée. Les exercices qui seront proposés au cours de la semaine seront basés sur un le cours [[http://www-irma.u-strasbg.fr/~saliola/sage/SienaLectures/|Introduzione a Sage]] donné par FrancoSaliola en mai dernier à Sienne, en Italie. == Connexion aux terminaux == Pour vous connecter aux terminaux, veuillez suivre les indications suivantes : * À l'écran de SUN, cliquez sur Options > Connexion à distance > Entrer le nom de la machine distante. * Ecrire 'chicoree' et ceci ouvrira l'écran de Fedora. * Le nom d'utilisateur et le mot de passe vous sera fourni sur place. Vous conserverez le meme toute la semaine. == Informations sur les répertoires partagés == Les participants peuvent accéder aux documents (aliments.py, dossier sagelatex) via le répertoire /homelocal/partage/ . Les participants peuvent partager des fichiers entre eux via le répertoire /homelocal/partage/etudiants/ . == Liens == Sage * [[http://www.sagemath.org/|La page web de Sage]] Python * [[http://www.python.org/|La page web de Python]] * [[http://python.ftp-developpez.com/cours/TutoVanRossum/fichiers/TutorielPython.pdf|Tutoriel Python]]: Traduction française du Tutoriel Python. * [[http://diveintopython.adrahon.org/|Plongez au coeur de Python]] (en français). * [[http://www.poromenos.org/tutorials/python|Learn Python in 10 minutes]] Autre * [[http://www.projecteuler.net/|Project Euler]]: Problèms et défis mathématiques et informatiques. Ils nous serviront d'exercices. * [[http://www-irma.u-strasbg.fr/~saliola/sage/SienaLectures/|Introduzione a Sage]]: Cours sur Sage donné par Franco Saliola en mai dernier que nous utiliserons beaucoup beaucoup. Merci à Franco! == Thèmes à aborder au cours de la semaine ne faisant pas encore partie de l'horaire et autres demandes spéciales == Calcul symbolique. Codage des caractères d'un fichier python. Table de hashage. Anneau de polynômes non commutatifs. == Horaire == ATTENTION : L'horaire est encore en construction et est sujet à changement. ||||<tablestyle="width: 80%" style="background-color: #E0E0FF;">Mardi le 14 juillet 2009|| ||<|2> 9:00-9:30 ||'''Arrivée des participants.''' || || Mot de bienvenue. Distribution des mots de passe. || ||<|2> 9:30-10:30 || '''Introduction à Sage''' || || Ceci sera une présentation générale sur Sage qui expliquera l'histoire et les motivations du projet. Nous montrerons plusieurs exemples d'utilisation de Sage. Nous utiliserons des [[https://wiki.sagemath.org/Talks|présentations sur Sage]] déjà fait par d'autres. [[http://www-irma.u-strasbg.fr/~saliola/maths/talks/slides/SageTalk2/SageTalk2.pdf|Présentation de Franco]]. [[http://sage.math.washington.edu/home/schilly/talks/sage_schilly_university_vienna_20080109.pdf|Présentation de Harald Schilly]]. [[http://wstein.org/talks/20090622-sagedays16-thematic/sage-thematic_day.sws|Présentation de William Stein (.sws)]]. || || 10:30-11:00 || Pause || ||<|2> 11:00-12:00 || '''Introduction à Python 1''' || || Nous présenterons les objets de base du langage python : int, float, str, list, tuple, dict. Aussi : map, filter et list-comprehension. Parcours d'une liste avec une boucle. Nous présenterons comment définir une fonction et comment utiliser un fichier pour les définir. Voir l'exemple : [[attachment:sequence.py]] || || 12:00-13:30 || Dîner || ||<|2> 13:30-14:00 || '''Comment fait-on ceci en Sage?''' || || Obtenir de l'aide dans Sage: La touche TAB et Complétion automatique, [[http://www.sagemath.org/help.html|Help Web Page]], [[http://www.sagemath.org/doc/tutorial/|Tutoriel]], [[https://wiki.sagemath.org/|Sage-Wiki]], ?, ??, *mot*?, [[http://groups.google.com/group/sage-support|sage-support]], search_doc, search_src, search_def, ... || ||<|2> 14:00-15:00 || '''Exercices''' || || 1. Trouver 3 exemples dans le Tutoriel et tester-les. 2. Trouver 3 exemples dans le Sage-Wiki et tester-les. 3. Feuilles de travail [[http://www-irma.u-strasbg.fr/~saliola/sage/SienaLectures/worksheets/sws/Worksheet_1___Getting_Help.sws|Getting Help]], [[http://www-irma.u-strasbg.fr/~saliola/sage/SienaLectures/worksheets/sws/Worksheet_2___Lists.sws|Lists]] et [[http://www-irma.u-strasbg.fr/~saliola/sage/SienaLectures/worksheets/sws/Worksheet_3___First_steps_towards_programming.sws|First steps towards programming]] du cours de Franco Saliola. || ||<|2> 15:00-15:30 || '''Calcul, dessins et interact''' || || Démonstration des fonctionnalités de dessins de Sage (plot, plot3d, etc.). Nous utiliserons la [[http://www-irma.u-strasbg.fr/~saliola/sage/SienaLectures/lectures/Siena_Lecture___Calculus__Plotting___Interact.sws|présentation de Franco Saliola]] sur le calcul. || ||<|2> 15:30-17:00 || '''Exercices''' || || 1. Dessiner le graphe de votre fonction favorite. 2. Trouver un exemple de dessin dans le Sage-Wiki et tester-le. 3. Feuilles de travail [[http://www-irma.u-strasbg.fr/~saliola/sage/SienaLectures/worksheets/sws/Worksheet_4___Calculus__Plotting_and_Interact.sws|Calculus, plotting and interact]] du site web de Franco Saliola. || ||||<tablestyle="width: 80%" style="background-color: #E0E0FF;">Mercredi le 15 juillet 2009|| || 9:00 ||'''Arrivée des participants.''' || ||<|2> 9:00-12:00 || '''Temps libre et exercices''' || || (Note: Le présentateur sera absent durant cet avant-midi. Le laboratoire sera disponible pour les participants. Je vous demande d'écrire toutes les choses que vous ne réussissez pas à trouver du premier coup ou toutes autres choses que vous n'aimez pas! Je vais utiliser cette information pour améliorer Sage. Merci.) 0. Terminer les exercices de mardi. 1. Feuilles de travail [[http://www-irma.u-strasbg.fr/~saliola/sage/SienaLectures/worksheets/sws/Worksheet_5___3n_1_Conjecture.sws|The 3n+1 Conjecture]], [[http://www-irma.u-strasbg.fr/~saliola/sage/SienaLectures/worksheets/sws/Worksheet_8___Dictionaries_and_Graph_Theory.sws|Dictionaries and Graph Theory]] et [[http://www-irma.u-strasbg.fr/~saliola/sage/SienaLectures/worksheets/sws/Worksheet_7___Strings_and_the_BWT.sws|Strings and the Burrows-Wheeler Transform]] du site de Franco Saliola. 2. Créer un compte sur [[http://projecteuler.net/|Projet Euler]] et résoudre tous les problèmes! 3. Exercices supplémentaires : Répondre aux questions des [[https://wiki.wstein.org/2008/480a/homework|devoirs du cours]] Math 480a Algebraic, Scientific, and Statistical Computing, an Open Source Approach Using Sage donné par William Stein au printemps 2008. Le [[https://wiki.wstein.org/2008/480a|site du cours]] contient aussi beaucoup d'informations pertinentes tel que les vidéos de tous les cours! || ||<|2> 13:30-14:00 || '''Introduction à Python 2''' || || Nous présenterons les classes en python. Voir l'exemple : [[attachment:aliments.py]] || ||<|2> 14:00-14:30 || '''Makefile, Sage et LaTeX''' || || Nous présenterons comment utiliser sage dans des documents LaTeX via le paquetage optionnel sagetex. Le paquetage sagetex s'installe facilement sur une version de Sage grace a la commande sage -i sagetex-2.1.1 ecrite directement dans le terminal. Pour plus d'informations, veuillez vous referer a la documentation [[attachment:sagetexpackage.pdf]] de quelques pages ecrite par Dan Drake, le createur de sagetex. Voir l'exemple : [[attachment:devoir.tex]]. Nous utilisons la commande make pour compiler le fichier latex grace au fichier [[attachment:makefile]]. Les fichiers [[attachment:sagetex.py]] et [[attachment:sagetex.sty]] doivent aussi etre dans le meme repertoire. De plus, avec la configuration de pdflatex ici sur le serveur, nous devons aussi ajouter le fichier [[attachment:makecmds.sty]] dans le repertoire. || ||<|2> 15:00-15:30 || '''Café du LaCIM''' || || Les participants sont invités au Café du LaCIM au local PK-4214 où Lise, secrétaire du LaCIM, nous accueillera. Café et collations seront servis. || ||<|2> 15:30-17:00 || '''Exercices''' || || 1. Créer une classe Matrice et implémenter la somme et le produit. 2. Continuer [[http://www-irma.u-strasbg.fr/~saliola/sage/SienaLectures/|les feuilles de travail]] de Franco Saliola. 3. Projet Euler. 4. Devoirs du cours de Stein. || ||||<tablestyle="width: 80%" style="background-color: #E0E0FF;">Jeudi le 16 juillet 2009|| || 9:00 ||'''Arrivée des participants.''' || ||<|2> 9:30-10:00 || '''Cython''' || || Démonstration de l'outil Cython qui permet de traduire du code python en code C. Consultez l'exemple presente en classe ici : [[attachment:Huard_cythone.sws]] || ||<|2> 10:30-11:00 || '''L'outil interact''' || || Démonstration de l'outil interact + exercices. Utilisez interact? pour obtenir la documentation. || ||<|2> 11:00-12:00 || '''Théorie des groupes''' || || Démo. Nous utiliserons possiblement la feuille de travail du [[https://wiki.wstein.org/2008/480a/schedule/2008-04-16|cours de W. Stein sur les groupes]]. || ||<|2> 13:30-14:00 || '''Façons d'utiliser Sage efficacement''' || || Nous verrons comment utiliser Sage avec plus d'habiletés avec chacune des façons suivantes : 1. La ligne de commande (utilisation de la commande attach, de la barre de soulignement pour obtenir le dernier calcul, de l'historique, du point d'exclamation (!) pour faire des commandes du terminal et plus encore...) 2. Le notebook (dans ce dernier, cliquez sur Help en haut à droite pour obtenir les conseils). 3. Par internet via [[www.sagenb.org]] (suggéré pour les utilisateurs de Windows). Voir aussi les [[https://wiki.sagemath.org/Tips|conseils]] sur le Sage-Wiki. || ||<|2> 14:00-14:30 || '''Calcul symbolique avec Sage''' || || [[https://wiki.wstein.org/2008/480a/schedule/2008-05-21b|Présentation sur le Calcul Symbolique]] de William Stein. || ||<|2> 14:00-17:00 || '''À déterminer... ''' || || Exercices et démonstrations selon les demandes des participants. || |
Jours Sage au LaCIM (UQAM) -- 14, 15 et 16 juillet 2009
Local : PK-S1570, salle E.
On y accède via la porte PK-M500 au niveau métro (près de la rue Jeanne-Mance). Carte du campus
Organisé par Sébastien Labbé et le LaCIM
Dans le cadre de son École d'été, le Laboratoire de Combinatoire et d'Informatique Mathématique (LaCIM) organise les Jours Sage au LaCIM et ceci pour une deuxième année consécutive à l'Université du Québec à Montréal (UQAM). En effet, FrancoSaliola alors post doc au LaCIM avait organisé une semaine sur Sage en mai 2008. Cette année, la formation est donnée par SébastienLabbé, étudiant au doctorat en mathématiques. Les professeurs comme les étudiants sont invités. Comme l'an passé, la formation sur Sage se veut accessible à tous, c'est-à-dire que nous n'assumons pas que les participants ont déjà une expérience avec Python ou avec Sage. À l'image des Sage Days, les Jours Sage au LaCIM seront très interactifs et les participants auront beaucoup de temps pour expérimenter la théorie présentée. Les exercices qui seront proposés au cours de la semaine seront basés sur un le cours Introduzione a Sage donné par FrancoSaliola en mai dernier à Sienne, en Italie.
Connexion aux terminaux
Pour vous connecter aux terminaux, veuillez suivre les indications suivantes :
À l'écran de SUN, cliquez sur Options > Connexion à distance > Entrer le nom de la machine distante.
- Ecrire 'chicoree' et ceci ouvrira l'écran de Fedora.
- Le nom d'utilisateur et le mot de passe vous sera fourni sur place. Vous conserverez le meme toute la semaine.
Informations sur les répertoires partagés
Les participants peuvent accéder aux documents (aliments.py, dossier sagelatex) via le répertoire /homelocal/partage/ . Les participants peuvent partager des fichiers entre eux via le répertoire /homelocal/partage/etudiants/ .
Liens
Sage
Python
Tutoriel Python: Traduction française du Tutoriel Python.
Plongez au coeur de Python (en français).
Autre
Project Euler: Problèms et défis mathématiques et informatiques. Ils nous serviront d'exercices.
Introduzione a Sage: Cours sur Sage donné par Franco Saliola en mai dernier que nous utiliserons beaucoup beaucoup. Merci à Franco!
Thèmes à aborder au cours de la semaine ne faisant pas encore partie de l'horaire et autres demandes spéciales
Calcul symbolique. Codage des caractères d'un fichier python. Table de hashage. Anneau de polynômes non commutatifs.
Horaire
ATTENTION : L'horaire est encore en construction et est sujet à changement.
Mardi le 14 juillet 2009 |
|
9:00-9:30 |
Arrivée des participants. |
Mot de bienvenue. Distribution des mots de passe. |
|
9:30-10:30 |
Introduction à Sage |
Ceci sera une présentation générale sur Sage qui expliquera l'histoire et les motivations du projet. Nous montrerons plusieurs exemples d'utilisation de Sage. Nous utiliserons des présentations sur Sage déjà fait par d'autres. Présentation de Franco. Présentation de Harald Schilly. Présentation de William Stein (.sws). |
|
10:30-11:00 |
Pause |
11:00-12:00 |
Introduction à Python 1 |
Nous présenterons les objets de base du langage python : int, float, str, list, tuple, dict. Aussi : map, filter et list-comprehension. Parcours d'une liste avec une boucle. Nous présenterons comment définir une fonction et comment utiliser un fichier pour les définir. Voir l'exemple : sequence.py |
|
12:00-13:30 |
Dîner |
13:30-14:00 |
Comment fait-on ceci en Sage? |
Obtenir de l'aide dans Sage: La touche TAB et Complétion automatique, Help Web Page, Tutoriel, Sage-Wiki, ?, ??, *mot*?, sage-support, search_doc, search_src, search_def, ... |
|
14:00-15:00 |
Exercices |
1. Trouver 3 exemples dans le Tutoriel et tester-les. 2. Trouver 3 exemples dans le Sage-Wiki et tester-les. 3. Feuilles de travail Getting Help, Lists et First steps towards programming du cours de Franco Saliola. |
|
15:00-15:30 |
Calcul, dessins et interact |
Démonstration des fonctionnalités de dessins de Sage (plot, plot3d, etc.). Nous utiliserons la présentation de Franco Saliola sur le calcul. |
|
15:30-17:00 |
Exercices |
1. Dessiner le graphe de votre fonction favorite. 2. Trouver un exemple de dessin dans le Sage-Wiki et tester-le. 3. Feuilles de travail Calculus, plotting and interact du site web de Franco Saliola. |
|
Mercredi le 15 juillet 2009 |
|
9:00 |
Arrivée des participants. |
9:00-12:00 |
Temps libre et exercices |
(Note: Le présentateur sera absent durant cet avant-midi. Le laboratoire sera disponible pour les participants. Je vous demande d'écrire toutes les choses que vous ne réussissez pas à trouver du premier coup ou toutes autres choses que vous n'aimez pas! Je vais utiliser cette information pour améliorer Sage. Merci.) 0. Terminer les exercices de mardi. 1. Feuilles de travail The 3n+1 Conjecture, Dictionaries and Graph Theory et Strings and the Burrows-Wheeler Transform du site de Franco Saliola. 2. Créer un compte sur Projet Euler et résoudre tous les problèmes! 3. Exercices supplémentaires : Répondre aux questions des devoirs du cours Math 480a Algebraic, Scientific, and Statistical Computing, an Open Source Approach Using Sage donné par William Stein au printemps 2008. Le site du cours contient aussi beaucoup d'informations pertinentes tel que les vidéos de tous les cours! |
|
13:30-14:00 |
Introduction à Python 2 |
Nous présenterons les classes en python. Voir l'exemple : aliments.py |
|
14:00-14:30 |
Makefile, Sage et LaTeX |
Nous présenterons comment utiliser sage dans des documents LaTeX via le paquetage optionnel sagetex. Le paquetage sagetex s'installe facilement sur une version de Sage grace a la commande sage -i sagetex-2.1.1 ecrite directement dans le terminal. Pour plus d'informations, veuillez vous referer a la documentation sagetexpackage.pdf de quelques pages ecrite par Dan Drake, le createur de sagetex. Voir l'exemple : devoir.tex. Nous utilisons la commande make pour compiler le fichier latex grace au fichier makefile. Les fichiers sagetex.py et sagetex.sty doivent aussi etre dans le meme repertoire. De plus, avec la configuration de pdflatex ici sur le serveur, nous devons aussi ajouter le fichier makecmds.sty dans le repertoire. |
|
15:00-15:30 |
Café du LaCIM |
Les participants sont invités au Café du LaCIM au local PK-4214 où Lise, secrétaire du LaCIM, nous accueillera. Café et collations seront servis. |
|
15:30-17:00 |
Exercices |
1. Créer une classe Matrice et implémenter la somme et le produit. 2. Continuer les feuilles de travail de Franco Saliola. 3. Projet Euler. 4. Devoirs du cours de Stein. |
|
Jeudi le 16 juillet 2009 |
|
9:00 |
Arrivée des participants. |
9:30-10:00 |
Cython |
Démonstration de l'outil Cython qui permet de traduire du code python en code C. Consultez l'exemple presente en classe ici : Huard_cythone.sws |
|
10:30-11:00 |
L'outil interact |
Démonstration de l'outil interact + exercices. Utilisez interact? pour obtenir la documentation. |
|
11:00-12:00 |
Théorie des groupes |
Démo. Nous utiliserons possiblement la feuille de travail du cours de W. Stein sur les groupes. |
|
13:30-14:00 |
Façons d'utiliser Sage efficacement |
Nous verrons comment utiliser Sage avec plus d'habiletés avec chacune des façons suivantes : 1. La ligne de commande (utilisation de la commande attach, de la barre de soulignement pour obtenir le dernier calcul, de l'historique, du point d'exclamation |
|
14:00-14:30 |
Calcul symbolique avec Sage |
Présentation sur le Calcul Symbolique de William Stein. |
|
14:00-17:00 |
À déterminer... |
Exercices et démonstrations selon les demandes des participants. |