Regina 7.3 Calculation Engine
Classes | Namespaces | Functions
polynomial.h File Reference

Implements single variable polynomials over arbitrary rings. More...

#include "regina-core.h"
#include "utilities/stringutils.h"
#include "core/output.h"
#include <iostream>

Classes

class  regina::Polynomial< T >
 Represents a single-variable polynomial with coefficients of type T. More...
 

Namespaces

namespace  regina
 Contains the entire Regina calculation engine.
 

Functions

template<typename T >
void regina::swap (Polynomial< T > &a, Polynomial< T > &b) noexcept
 Swaps the contents of the given polynomials. More...
 
template<typename T >
Polynomial< T > regina::operator* (Polynomial< T > poly, const typename Polynomial< T >::Coefficient &scalar)
 Multiplies the given polynomial by the given scalar constant. More...
 
template<typename T >
Polynomial< T > regina::operator* (const typename Polynomial< T >::Coefficient &scalar, Polynomial< T > poly)
 Multiplies the given polynomial by the given scalar constant. More...
 
template<typename T >
Polynomial< T > regina::operator/ (Polynomial< T > poly, const typename Polynomial< T >::Coefficient &scalar)
 Divides the given polynomial by the given scalar constant. More...
 
template<typename T >
Polynomial< T > regina::operator+ (const Polynomial< T > &lhs, const Polynomial< T > &rhs)
 Adds the two given polynomials. More...
 
template<typename T >
Polynomial< T > regina::operator+ (Polynomial< T > &&lhs, const Polynomial< T > &rhs)
 Adds the two given polynomials. More...
 
template<typename T >
Polynomial< T > regina::operator+ (const Polynomial< T > &lhs, Polynomial< T > &&rhs)
 Adds the two given polynomials. More...
 
template<typename T >
Polynomial< T > regina::operator+ (Polynomial< T > &&lhs, Polynomial< T > &&rhs)
 Adds the two given polynomials. More...
 
template<typename T >
Polynomial< T > regina::operator- (Polynomial< T > arg)
 Returns the negative of the given polynomial. More...
 
template<typename T >
Polynomial< T > regina::operator- (const Polynomial< T > &lhs, const Polynomial< T > &rhs)
 Subtracts the two given polynomials. More...
 
template<typename T >
Polynomial< T > regina::operator- (Polynomial< T > &&lhs, const Polynomial< T > &rhs)
 Subtracts the two given polynomials. More...
 
template<typename T >
Polynomial< T > regina::operator- (const Polynomial< T > &lhs, Polynomial< T > &&rhs)
 Subtracts the two given polynomials. More...
 
template<typename T >
Polynomial< T > regina::operator- (Polynomial< T > &&lhs, Polynomial< T > &&rhs)
 Subtracts the two given polynomials. More...
 
template<typename T >
Polynomial< T > regina::operator* (const Polynomial< T > &lhs, const Polynomial< T > &rhs)
 Multiplies the two given polynomials. More...
 
template<typename T >
Polynomial< T > regina::operator/ (Polynomial< T > lhs, const Polynomial< T > &rhs)
 Divides the two given polynomials. More...
 

Detailed Description

Implements single variable polynomials over arbitrary rings.


Copyright © 1999-2023, The Regina development team
This software is released under the GNU General Public License, with some additional permissions; see the source code for details.
For further information, or to submit a bug or other problem, please contact Ben Burton (bab@maths.uq.edu.au).