How sagemath/sage works
SageMath is an interactive mathematical software system. A representative workflow is to request a combinatorial design or code, use construction and catalog modules to build it, and work with the resulting mathematical object; finite-field arithmetic supports several such constructions. The repository also includes a rich-output display manager for presenting results. The excerpts focus on designs, coding theory, runtime environment, and display, so this is a partial view of Sage’s much broader mathematical capabilities; relationships are included only where the README or source index supports them.
Main entry points: database.py Design Catalog · bibd.py BIBD Constructions · code_constructions.py Code Constructions · linear_code.py Linear Codes
Components 17
Combinatorial Designs
- BIBD Constructions
src/sage/combinat/designs/bibd.py - Design Catalog
src/sage/combinat/designs/database.py - Block Designs
src/sage/combinat/designs/block_design.py - Difference Families
src/sage/combinat/designs/difference_family.py - Orthogonal Arrays
src/sage/combinat/designs/orthogonal_arrays.py - Incidence Structures
src/sage/combinat/designs/incidence_structures.py
Coding Theory
- Code Constructions
src/sage/coding/code_constructions.py - Linear Codes
src/sage/coding/linear_code.py - Code Database
src/sage/coding/databases.py
Algebra Foundations
- Finite Fields
src/sage/rings/finite_rings/finite_field_constructor.py - Integer Mod Rings
src/sage/rings/finite_rings/integer_mod_ring.py - Polynomial Rings
src/sage/rings/polynomial/polynomial_ring_constructor.py
Runtime and Display
- Sage Interface
src/sage/all.py - Runtime Environment
src/sage/env.py - Rich Output Manager
src/sage/repl/rich_output/display_manager.py - Display Backend
src/sage/repl/rich_output/backend_base.py
Other components
- Mathematics User
Connections 22
- Mathematics User → Sage Interface: uses
- BIBD Constructions → Design Catalog: uses constructions
src/sage/combinat/designs/bibd.py - BIBD Constructions → Block Designs: uses
src/sage/combinat/designs/bibd.py - BIBD Constructions → Difference Families: uses
src/sage/combinat/designs/bibd.py - BIBD Constructions → Orthogonal Arrays: uses
src/sage/combinat/designs/bibd.py - Design Catalog → Orthogonal Arrays: builds from
src/sage/combinat/designs/database.py - Design Catalog → BIBD Constructions: builds from
src/sage/combinat/designs/database.py - Design Catalog → Difference Families: builds from
src/sage/combinat/designs/database.py - Design Catalog → Block Designs: builds from
src/sage/combinat/designs/database.py - Block Designs → Incidence Structures: uses
src/sage/combinat/designs/block_design.py - Design Catalog → Integer Mod Rings: uses arithmetic
src/sage/combinat/designs/database.py - Design Catalog → Finite Fields: uses arithmetic
src/sage/combinat/designs/database.py - Code Constructions → Linear Codes: constructs
src/sage/coding/code_constructions.py - Code Constructions → Finite Fields: uses arithmetic
src/sage/coding/code_constructions.py - Code Constructions → Integer Mod Rings: uses arithmetic
src/sage/coding/code_constructions.py - Code Constructions → Polynomial Rings: uses arithmetic
src/sage/coding/code_constructions.py - Linear Codes → Finite Fields: uses arithmetic
src/sage/coding/linear_code.py - Linear Codes → Polynomial Rings: uses arithmetic
src/sage/coding/linear_code.py - Code Database → Linear Codes: uses
src/sage/coding/databases.py - Code Database → Finite Fields: uses arithmetic
src/sage/coding/databases.py - Rich Output Manager → Display Backend: selects backend
src/sage/repl/rich_output/display_manager.py - Runtime Environment → Sage Interface: configures
src/sage/all.py