Integers : detailed table of contents¶
- ulong_extras.h – arithmetic and number-theoretic functions for single-word integers
- Simple example
- Random functions
- Basic arithmetic
- Miscellaneous
- Basic arithmetic with precomputed inverses
- Greatest common divisor
- Jacobi and Kronecker symbols
- Modular Arithmetic
- Modular Arithmetic with Fixed Operand
- Divisibility testing
- Prime number generation and counting
- Primality testing
- Chinese remaindering
- Square root and perfect power testing
- Factorisation
- Arithmetic functions
- Factorials
- Primitive Roots and Discrete Logarithms
- Elliptic curve method for factorization of
ulong
- fmpz.h – integers
- Simple example
- Types, macros and constants
- Memory management
- Random generation
- Conversion
- Input and output
- Basic properties and manipulation
- Comparison
- Basic arithmetic
- Greatest common divisor
- Modular arithmetic
- Bit packing and unpacking
- Logic Operations
- Chinese remaindering
- Primality testing
- Special functions
- fmpz_vec.h – vectors of integers
- fmpz_factor.h – integer factorisation
- fmpz_mat.h – matrices over the integers
- Simple example
- Types, macros and constants
- Memory management
- Basic assignment and manipulation
- Window
- Random matrix generation
- Input and output
- Comparison
- Transpose
- Concatenate
- Modular reduction and reconstruction
- Addition and subtraction
- Matrix-scalar arithmetic
- Matrix multiplication
- Inverse
- Kronecker product
- Content
- Trace
- Determinant
- Transforms
- Characteristic polynomial
- Minimal polynomial
- Rank
- Column partitioning
- Nonsingular solving
- Row reduction
- Strong echelon form and Howell form
- Nullspace
- Echelon form
- Hermite normal form
- Smith normal form
- Special matrices
- Conversions
- Cholesky Decomposition
- LLL
- Classical LLL
- Modified LLL
- fmpz_lll.h – LLL reduction
- fmpz_poly.h – univariate polynomials over the integers
- Introduction
- Simple example
- Definition of the fmpz_poly_t type
- Types, macros and constants
- Memory management
- Polynomial parameters
- Assignment and basic manipulation
- Randomisation
- Getting and setting coefficients
- Comparison
- Addition and subtraction
- Scalar absolute value, multiplication and division
- Bit packing
- Multiplication
- FFT precached multiplication
- Squaring
- Powering
- Shifting
- Bit sizes and norms
- Greatest common divisor
- Discriminant
- Gaussian content
- Square-free
- Euclidean division
- Division with precomputed inverse
- Divisibility testing
- Division mod p
- Power series division
- Pseudo division
- Derivative
- Evaluation
- Newton basis
- Interpolation
- Composition
- Inflation and deflation
- Taylor shift
- Power series composition
- Power series reversion
- Square root
- Power sums
- Signature
- Hensel lifting
- Input and output
- Modular reduction and reconstruction
- Products
- Roots
- Minimal polynomials
- Orthogonal polynomials
- Fibonacci polynomials
- Eulerian numbers and polynomials
- Modular forms and q-series
- CLD bounds
- fmpz_poly_mat.h – matrices of polynomials over the integers
- Simple example
- Types, macros and constants
- Memory management
- Basic properties
- Basic assignment and manipulation
- Input and output
- Random matrix generation
- Special matrices
- Basic comparison and properties
- Norms
- Transpose
- Evaluation
- Arithmetic
- Row reduction
- Trace
- Determinant and rank
- Inverse
- Nullspace
- Solving
- fmpz_poly_factor.h – factorisation of polynomials over the integers
- fmpz_mpoly.h – multivariate polynomials over the integers
- Types, macros and constants
- Context object
- Memory management
- Input/Output
- Basic manipulation
- Constants
- Degrees
- Coefficients
- Comparison
- Conversion
- Container operations
- Random generation
- Addition/Subtraction
- Scalar operations
- Differentiation/Integration
- Evaluation
- Multiplication
- Powering
- Division
- Greatest Common Divisor
- Square Root
- Univariate Functions
- Internal Functions
- Vectors
- Ideals and Gröbner bases
- Special polynomials
- fmpz_mpoly_factor.h – factorisation of multivariate polynomials over the integers
- long_extras.h – support functions for signed word arithmetic
- longlong.h – support functions for multi-word arithmetic
- mpn_extras.h – support functions for limb arrays
- aprcl.h – APRCL primality testing
- arith.h – arithmetic and special functions
- fft.h – Schoenhage-Strassen FFT
- qsieve.h – Quadratic sieve