Documentation: Invariants of Binary Forms and Rational Functions

Overview

This notebook provides a set of tools for computing algebraic invariants of binary forms and rational functions. These invariants are critical in invariant theory and are widely used in mathematical research involving polynomial algebra, algebraic geometry, and Galois theory. The tools in this notebook are designed to facilitate symbolic computations and explore the rich structure of these objects.

Key Features

Dependencies

Functions and Their Usage

1. Transvection of Binary Forms

def transvection(f, g, x, y, s):

    """Computes the s-th transvection of two binary forms."""

2. Invariants of Cubic Binary Forms

def inv3(cubic):

    """Computes the J4 invariant of a cubic binary form."""


3. Invariants of Quartic Binary Forms

def inv4(quartic):

    """Computes J2 and J3 invariants of a quartic binary form."""

4. Invariants of Quintic Binary Forms

def inv5(quintic):

    """Computes J4, J8, and J12 invariants of a quintic binary form."""


5. Invariants of Rational Cubic Functions

def inv_rat_cubic(coefficients):

    """Computes invariants of a rational cubic function."""



Example Use Cases

Compute the Invariants of a Cubic Polynomial

cubic = [1, 2, 3, 4]

J4 = inv3(cubic)

print(J4)

Compute the Invariants of a Rational Cubic Function

coefficients = [1, 0, -3, 2, 1, 2, -1, 3]

invariants = inv_rat_cubic(coefficients)

print(invariants)


Notes

This document is a high-level overview. For detailed mathematical proofs and theoretical context, check the original research papers