Welcome to "Today I learned", a blog aboout math

Epsilons add up! I want to write about learning one thing every day. Could be big, could be small, but I just want to learn one thing every day.

  • The minimum requirements for a `CombinatorialFreeModule`

    One of the useful tools in algebraic combinatorics is to consider a module whose basis corresponds to a known combinatorial object. For example, consider the ring of symmetric functions. The dimension of symmetric functions of degree-\(n\) is the number of partitions of the integer \(n\). For this reason, Sage implements the ring of symmetric functions as a CombinatorialFreeModule with basis given by partitions mu. Sage has lots of great functionality for combinatorial objects and for CombinatorialFreeModules. I was recently asked by a colleague, Joe McDonough, “what is the minimal amount of code required to properly implement a custom CombinatorialFreeModule with a basis that is not already an existing combinatorial object in Sage?” Since that question might be relevant to other folks, I decided to record it here.

  • Notes on using Sage for commutative algebra

    This is a living post that will be updated with notes about using SageMath for commutative algebra. Macaulay2 does all of these computations very nicely, and often more quickly than Sage. But for folks with some Python background, writing Sage code tends to feel a bit more natural. This post is meant to be a living set of notes for common things SageMath users might want to do, without having to learn the syntax of Macaulay2. (Last updated 27 July, 2024)

  • Combinatorial crosswords

    Today’s post is inspired by the July 13, 2024 Vox daily crossword puzzle. The post will spoil the clues, so if you want to cross the words first, you should do that then read this post.

  • Reducing symbolic expressions in Sage

    When should a computer algebra system reduce an expression? As humans, there are some “obvious” reductions that we might make to simplify fractions or rational functions, but of course teaching the computer to do symbolic calculations essentially means we code in a huge decision tree to Sage. Sometimes “obvious” reductions slip through the cracks. Today’s post adresses an interesting case that slips through the first round of cracks, but can be caught with a bit of care.

  • A collision between cycle index polynomials

    Today’s post is a short, to describe an example of when the cycle index polynomial of a permutation group is not a total invariant of the group up to conjugacy.

  • Group actions on polynomial rings using SageMath

    Lately I have been working a lot with actions of groups on polynomial rings and quotients of them. For me, the primary way this arises is via some action that permutes variables by permuting their indices. The classic example of this flavor is the symmetric group \(\mathfrak{S}_n\) action on a polynomial ring with \(n\) many generators. SageMath is a really useful tool for studying these sorts of questions, so here are some useful techniques. This is the first in a series of posts, so we’ll focus on a very classical example, the coinvariant ring.

  • Opening a parachute using Mathematica

    One of the classic problems in a first course in differential equations is to model a skydiver jumping out of a plane in the presence of air-resistance. It is good to know how to use software tools to numerically solve these sorts of problems. I recently learned how to do this using Mathematica, which I am excited to share with you.

  • Creating beautiful Hasse diagrams with little effort

    The Hasse diagram of a partially ordered set (poset) is an extremely useful graph to help understand the poset. It is also a pain in the keister to create them in \(\LaTeX\) using Tikz. Here’s how to do it painlessly using Sage.

  • Two definitions of a variety

    This semester I am participating in a reading group that is reading Fulton’s textbook on Toric Varieties. My motivation is to understand recent developments in matroid theory better, but in the process I am finding a need to shore up some basic geometry knowledge. Abstractly I know there are two definitions of an algebraic variety but I couldn’t remember the “coordinate free” one. My mathematical sister Sasha Pevzner showed me a way to remember it and why it makes sense in the context of the first one. This post is all about that.

  • Two realizations of a matroid

    A recent perspective on the study of matroids has been to understand them geometrically. Historically, a matroid has been considered to be realizable (or representable) if it can be written down as a finite set of vectors. The more modern approach views a realization as a vector subspace, thus opening the door for the use of tools from algebraic geometry, which are then extended to matroids which are not realizable.

  • Log concavity implies unimodality

    I have been to many talks where the speaker says something like “its not hard to see that log concavity (with no internal zeroes) implies unimodality,” but I have never seen the proof of this statement written down. So here it is, inspired by a recent talk by Petter Brändén.

  • Parents, amirite?

    I’m fortunate to have the support of the Google Summer of Code this summer to contribute to the SageMath (more commonly called Sage) mathematical software. To me one of the most confusing aspects of doing development in Sage is the “Parent/Element” framework. The goal of this post is to explain some details in the Parent/Element framework via a minimal implementation of some of the code I’m working on.

  • Stirling numbers of the first kind

    The Stirling numbers of the first kind, which I’ll write as \(c(n,k)\), are the number of of permutations of \(n\) with exactly \(k\) cycles. The number \(c(n,k)\) is also the coefficient of \(x^k\) in the product \(x(x + 1)(x+2) \cdots (x+n-1)\).

  • Why is the hat-check problem n!/e?

    The hat-check problem asks: what proportion of all permutations of \(n\)-elements have no fixed points?

  • An example of the geometry of a combinatorial geometry

    About a month ago, Dr. Federico Ardila dropped a survey paper entitled The Geometry of Geometries, surveying new and old aspects of matroid theory. I have been on a kick lately of really enjoying content he has written and also got the opportunity to chat with fellow graduate student Anastasia Nathanson about part of the paper. Dr. Galen Dorpalen-Barry taught me the value of a good example while she was a graduate student, so here is a little write up of the example which Anastasia and I came up with. Hopefully this is as helpful to you as it was to me in understanding section 4.1 of Ardila’s paper.

  • Semimodularity and matroids

    In preparation for my oral exam, I asked my advisor to quiz me on some aspects of partially ordered sets. We had a nice discussion about intervals of Young’s lattice, and distributive lattices. He then asked me about semimodular lattices, and I blanked. He then asked me what how to characterize the lattice of flats of a matroid.

  • A semester reflection

    This semester I have been TA’ing for Calculus II (MATH 1272) at the University of Minnesota. Today is the day of their final exam, so I want to take a moment to reflect on the semester. I certainly have learned a lot about teaching, but right now I’m reminded of a blog post by Terry Tao, enouraging us to “learn and relearn your field”.

  • Combinatorics from topology

    On Monday the 13th, I went to the UMN Topology seminar where I saw a talk from Dr. Mike Hill of UCLA. Admittedly I’m completely lost when it comes to most homotopy theory, but I saw “combinatorics” in the abstract and so I went to the talk hoping that I could get something out of it. A fellow UMN grad student Sasha Pevzner introduced me to the “three things” exercise for getting something out of a talk. So here are my three things from this talk:

  • A great talk by Dr. Anna Weigandt

    Combinatorics for commutative algebra

  • Roll goats!

    Go Navy, Beat Army!