Hello TB, Thank you so much for the detailed response - these links are really helpful! I had a few follow-up questions:
- If I do stumble onto documentation that lacks usage examples, how would I go about adding examples? - Is it possible to write more thematic tutorials for Sage or would that have to be on my own site? I think my ideas for this would best be explained through tutorials with embedded Sage computations that (a) explain concepts and guide students to discovering things like the inclusion-exclusion principle and (b) teach the fundamentals of Sage (and Python too). - Are there any avenues where Sage education is explored and used beyond the Sage Education Days? Thank you! Sincerely, Tanmay On Sunday, June 12, 2022 at 9:26:26 AM UTC-7 mathzeta2 wrote: > Hello Tanmay, > > On 11/06/2022 6:16, Tanmay Kulkarni wrote: > > Hello all, > > My name is Tanmay Kulkarni and I am a rising sophomore. I have also been > taking several extracurricular math classes with Squares & Cubes > <https://www.squaresandcubes.com/> on things like number theory, group > theory, discrete math, and linear algebra. In these classes we have > utilized Sage to explore mathematical patterns. For instance, in my > discrete math class, I used Sage's graph functionality to take a stab at > graph isomorphism, which eventually lead to a magazine article > <https://chalkdustmagazine.com/features/a-walk-on-the-random-side/> on > using random walks on graphs to solve graph isomorphism. > > Very nice! > > > During these various explorations, I realized that Sage was a very > powerful tool to explain and provide intuition for complex mathematical > concepts, however, (a) it is mainly used by those working in higher math, > and (b) there is a high barrier of entry to implement concepts (even ones > in lower math) in Sage. > > I completely agree that Sage is a very powerful tool. Gathering intuition > for complex mathematical concepts in many cases includes some > visualization. For example, If someone never heard of Young's lattice, or > even what is a lattice, looking at the plot in this thematic tutorial [1] > can be a big step in understanding (at least in an intuitive manner) what > is this object. In this case, the 6 lines of Sage code that produced the > plot are included, so further exploration becomes easier. > > > Thus, I wanted to contribute to Sage and *implement specific concepts > which I felt high school students like myself would find interesting*, > and use them for educational purposes (e.g. at my school). Two basic ideas > I thought of were: > > 1. *Random walks.* I think mathematics is often far more engaging with > a visual component (for instance, teaching graphing skills and different > types of equations through a Desmos art project), and I think when talking > about probabilities and randomness, an excellent visual representation of > stochastic processes is random walks, which are currently not implemented > in Sage. The other advantage of this is that random walks are often > present > in other places such as physics (in Brownian motion). This could expand > into > 2. *Venn diagrams.* Venn diagrams are incredibly important; however, I > could not find any Sage implementations of Venn diagrams beyond simply > plotting intersecting circles. Having a more solid implementation could > provide a strong, visual intution for a variety of concepts, like basic > set > theory, logical operators, probability, and even open the door for > Edwards-Venn diagrams! Such an implementation would utilize Sage's 2D > graphics (specifically the circle and text functions) as well as the > detailed Set implementation. > > Apart from static visualizations one can find at various docs, there is a > page at the wiki dedicated for examples of Sage Interactions [2]. In > particular, the "miscellaneous" page [3] includes two simple Venn diagram > interactive cells, which might be what you already found. The interactions > at these pages can be a good example of what is possible, but I will warn > that some of them are quite old, and so they are not always implemented > with modern best practice (e.g. deprecated functions). On a side note, here > is a link to a beautiful interactive 7 sets Venn diagram [4] by Santiago > Ortiz, inspired by Newton's theories on light and color spectrum. > > > At Brent Yorgey's blog there are (at least) two posts without words [5][6] > that try to illustrate the inclusion-exclusion principle with Venn > diagrams. I think the plots there were created using the diagrams [7] > package in Haskell. I wonder if there is a similar Python package for > vector graphics, as Sage usually uses matplotlib or TikZ which are > sometimes harder to use. > > > Several people who I contacted referred me to this group, and thus I am > wondering if anybody would be generous enough to (a) provide *thoughts on > the feasibility and usefulness* of such an endeavor, (b) provide some > *direction > or guidance* as to where to begin, and (c) offer any *potential avenues* > where this could be used. > > Until then, I will be beginning to work on any very simple bug fix I can > find to familiarize myself with developing in Sage. > > It is always good to hear about people interested in Sage development. The > Sage documentation [8] contains a lot: The reference manual alone will be > thousands of pages long if printed! If you find a function or object you > are familiar with that is already implemented in Sage, but their > documentation lacks any usage example, or they mention a non-trivial > notation without explanation (it can be tricky to define what is a > "non-trivial notation"), then it can be a good idea to try and add them. > > > I think some of the Sage thematic tutorials [9] were originally prepared > for university courses and later, after being tested in the real world, > were incorporated into the docs. There are many cases of blog posts and > tutorials for Sage programming or for a scientific concept that are not > part of Sage docs, e.g. the SDSU Sage tutorial [10]. Writing similar texts > on your own site is another possibility, and when you stumble upon a bug or > a missing functionality in Sage, opening a trac ticket will be appreciated. > > > Thank you so much! > > Sincerely, > Tanmay Kulkarni > > > Regards, > TB > > [1] > https://doc.sagemath.org/html/en/thematic_tutorials/algebraic_combinatorics/rsk.html > [2] https://wiki.sagemath.org/interact > [3] https://wiki.sagemath.org/interact/misc > [4] https://moebio.com/research/sevensets/ > [5] https://mathlesstraveled.com/2017/05/31/post-without-words-18/ > [6] https://mathlesstraveled.com/2017/06/02/post-without-words-19/ > [7] https://archives.haskell.org/projects.haskell.org/diagrams/ > [8] https://doc.sagemath.org/ > [9] https://doc.sagemath.org/html/en/thematic_tutorials/index.html > [10] https://mosullivan.sdsu.edu/Teaching/sdsu-sage-tutorial/index.html > -- You received this message because you are subscribed to the Google Groups "sage-devel" group. To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/sage-devel/bf2f8f57-628d-473a-a7b6-dfa0893694e5n%40googlegroups.com.