Sage · Week 1 · Planned · ~2 hrs planned · 100 XP

Install Sage, first session

Sage is the prototyping environment for the next 51 weeks. Before any cryptography happens, you want a reliable local install plus comfort with the embedded SageCell for quick experiments. The install on macOS via conda-forge is the path of least resistance; brew has a history of being broken on Sonoma onward.

Quest Install Sage locally; run the cell below in the embedded SageCell to verify the math kernel responds.

Sage · sagecell.sagemath.org Open the full cell ↗

First click loads the SageCell runtime. Output appears below the editor.

Load-bearing idea

Sage is not a wrapper around Python; Sage is a Python superset for which mathematical objects (rings, fields, elliptic curves, modular forms, polynomial rings) are first-class with custom syntax. R.<x, y> = QQ[] is not Python, exactly; it is Sage’s preparser elaborating into Python. Knowing this distinction matters when you start importing Sage from regular Python projects in Q4.

For week one, the goal is a working local install plus the muscle memory to drop a one-off computation into the embedded cell on this site (which routes through sagecell.sagemath.org’s free public servers).

Retrieval prompts

  • What’s the difference between R.<x> = QQ[] and R = QQ['x']? When does each parse correctly?
  • Where does Sage live on disk after the conda-forge install?
  • Why is the embedded SageCell a different runtime than your local install? What can you not do in the embedded cell?

Re-derivation log

After running the cell above: can you predict what factor(x^99 - y^99) returns? Run it. Were you right? If not, what did you learn about cyclotomic factorizations?

Not started yet.