Symbolic Computation (Computer Algebra)
Symbolic Computation / Computer Algebra
Overview
Symbolic computation is the body of methods that manipulate mathematical expressions as symbols, without converting them to numbers. Starting from the internal representation of expressions, we cover polynomial operations, interpolation, GCD, resultants, and factorization; ideal theory (Gröbner bases); rewriting systems and simplification; symbolic differentiation, integration, limits, and summation; exact linear algebra; algebraic numbers; differential algebra; quantifier elimination and computational algebraic geometry; and formal power series — across all 30 chapters.
By Level
-
Introduction (2 chapters)
Basic concepts of computer algebra, internal representation of expressions (trees, DAGs, hash consing)
-
Basic (5 chapters)
Polynomial representation and operations, interpolation, GCD, resultants and subresultants
-
Intermediate (7 chapters)
Partial fraction decomposition of rational functions, various factorizations, p-adic computation, Gröbner bases
-
Advanced (16 chapters)
Rewriting systems, simplification, symbolic differentiation / integration / limits / summation, exact linear algebra, algebraic numbers, differential algebra, CAD, computational algebraic geometry, formal power series
All Chapters
Introduction — Basic Concepts
-
Chapter 1
Introduction to Computer Algebra
What is computer algebra, the history of CAS (MACSYMA to SymPy), tree representation of expressions, canonical and normal forms, thinking about complexity
-
Chapter 2
Internal Representation of Expressions — Trees, DAGs, Hash Consing
Detailed implementation of expression trees, flattening of n-ary operations, sharing common subexpressions via DAGs, hash consing, comparison of internal representations across major CAS
Basic — Foundations of Polynomial Arithmetic
-
Chapter 3
Polynomial Representation
Dense and sparse representations, recursive and distributed representations, choice of term order, structure of multivariate polynomials
-
Chapter 4
Basic Polynomial Operations
Addition, subtraction, multiplication and division, Horner evaluation, long division, pseudo-division, symbolic differentiation, Newton and Bernstein bases
-
Chapter 5
Polynomial Interpolation
Lagrange interpolation, Newton's divided differences, Neville's algorithm, FFT-based fast interpolation, Chinese Remainder interpolation, Chebyshev nodes
-
Chapter 6
Polynomial GCD Computation
Expression swell, subresultant algorithm, modular GCD, sparse modular GCD, multivariate GCD
-
Chapter 7
Resultants and Subresultants
Sylvester determinant, detecting common roots, Euclidean algorithm and resultants, subresultant PRS, Collins-Brown-Traub, implicit elimination
Intermediate — Rational Functions, Factorization, Ideals
-
Chapter 8
Partial Fraction Decomposition of Rational Functions
Undetermined coefficients, Heaviside cover-up, Hermite reduction, Horowitz's algorithm, preprocessing for symbolic integration
-
Chapter 9
Factorization (over Finite Fields)
Square-free factorization, distinct-degree factorization, Cantor-Zassenhaus, Berlekamp, Kaltofen-Shoup
-
Chapter 10
Factorization (over Integers and Rationals)
Hensel lifting, Zassenhaus, the factor combination problem, LLL lattice reduction, van Hoeij's algorithm
-
Chapter 11
Factorization over Algebraic Number Fields
Factorization over $\mathbb{Q}(\alpha)$, use of the norm, Trager's algorithm, Tschirnhaus transformation, factor combination via LLL
-
Chapter 12
p-adic Computation and Hensel Lifting
p-adic numbers, p-adic absolute value, Hensel's lemma, single- and multiple-factor lifting, Dixon's p-adic linear algebra
-
Chapter 13
Gröbner Bases
Polynomial ideals, S-polynomials, Buchberger's algorithm, sugar strategy, F4 and F5 algorithms
-
Chapter 14
Applications of Gröbner Bases
Solving systems of equations, variable elimination, ideal operations, automatic theorem proving in geometry, robotics
Advanced — High-Level Symbolic Computation
Chapters marked 🔗 are "bridge" chapters: shorter chapters that connect two major topics and explain why the next subject follows naturally. "(Parts 1–2)" denotes a longer chapter split across two files.
-
Simplification and Normal Forms (Parts 1–2)
Term rewriting systems, Knuth-Bendix completion, simplification of trigonometric functions, the zero-recognition problem, Richardson's theorem
-
🔗 From Computer Algebra to Rewriting Systems (Bridge)
Generalization from Gröbner bases to abstract rewriting systems, the reach of Knuth-Bendix, undecidability
-
Expression Rewriting Systems
Term rewriting systems, confluence and termination, Knuth-Bendix completion, pattern matching, AC matching
-
Symbolic Differentiation
Formalizing the chain rule, recursive transformation of expression trees, higher-order derivatives, multivariate partial derivatives, Faà di Bruno's formula, contrast with automatic differentiation
-
🔗 From Mechanical Differentiation to Hard Integration (Bridge)
Why differentiation is easy and integration is hard (the three layers: representation, decision, construction), from Liouville to Bronstein
-
Symbolic Integration (Parts 1–2)
Liouville's theorem, Hermite reduction, the Risch algorithm (logarithmic and exponential parts), heuristic methods
-
Symbolic Limit Computation
Limitations of L'Hôpital's rule, Hardy fields, the Gruntz algorithm, MrvSet and level, extension to special functions
-
Differential Algebra and Symbolic Solution of ODEs
Differential fields, Picard-Vessiot theory, differential Galois groups, Kovacic's algorithm, Liouvillian solutions
-
Formal Power Series and Outlook (Parts 1–2)
The algebra of formal power series, Newton iteration, composition and reversion, series solutions of differential equations, fast computation
-
Symbolic Summation and Hypergeometric Series (Parts 1–2)
Gosper's algorithm, Zeilberger's algorithm, WZ theory, holonomic systems
-
Difference Equations and q-Hypergeometric Series
Linear difference equations, Petkovšek's algorithm, q-differences, q-hypergeometric series, q-analogues of summation algorithms
-
Exact Linear Algebra (Parts 1–2)
Bareiss algorithm, Hermite normal form, Smith normal form, Dixon's p-adic method, LLL lattice reduction
-
🔗 From Exact Linear Algebra to Algebraic Numbers (Bridge) (Parts 1–2)
Characteristic and minimal polynomials, companion matrices, multiplication matrices, resultants, recovering minimal polynomials via LLL
-
Algebraic Numbers and Field Extensions (Parts 1–2)
Minimal polynomials, root isolation, arithmetic of algebraic numbers, algebraic extension fields, Trager factorization, Galois groups
-
Computational Algebraic Geometry
Radical of ideals, primary decomposition, Hilbert functions, singularity detection, dimension computation
-
Quantifier Elimination and CAD
Tarski-Seidenberg theorem, Collins' CAD, projection and lifting, partial CAD, QEPCAD and Redlog
Reading
-
The Dream of Making Machines Do Algebra
[Reading]
How do Mathematica and SymPy expand, differentiate, and integrate expressions? The difference between numeric and symbolic, the idea of treating an expression as a tree, and the puzzle of "differentiation is easy, integration is hard" — told in a relaxed, informal style.