Macaulay2 Engine
Loading...
Searching...
No Matches

◆ create()

M2FreeAlgebra * M2FreeAlgebra::create ( const Ring * K,
const std::vector< std::string > & names,
const PolynomialRing * degreeRing,
const std::vector< int > & degrees,
const std::vector< int > & wtvecs,
const std::vector< int > & heftVector )
static

Definition at line 43 of file M2FreeAlgebra.cpp.

49{
50 assert(K != nullptr);
51 auto F = std::unique_ptr<FreeAlgebra>(FreeAlgebra::create(K, names, degreeRing, degrees, wtvecs, heftVector));
52 M2FreeAlgebra* result = new M2FreeAlgebra(std::move(F));
53 result->initialize_ring(K->characteristic(), degreeRing, heftVector);
54 result->zeroV = result->from_long(0);
55 result->oneV = result->from_long(1);
56 result->minus_oneV = result->from_long(-1);
57
58 return result;
59}
static FreeAlgebra * create(const Ring *K, const std::vector< std::string > &names, const PolynomialRing *degreeRing, const std::vector< int > &degrees, const std::vector< int > &wtvecs, const std::vector< int > &heftVector)
M2FreeAlgebra(std::unique_ptr< FreeAlgebra > F)
const PolynomialRing * degreeRing() const
long characteristic() const
Definition ring.hpp:159
VALGRIND_MAKE_MEM_DEFINED & result(result)

References Ring::characteristic(), FreeAlgebra::create(), degreeRing(), M2FreeAlgebra(), result(), and Ring::Ring().

Referenced by rawRingM2FreeAlgebra().