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

◆ TEST() [1/9]

TEST ( RingCCC ,
add  )

Definition at line 88 of file RingCCCTest.cpp.

89{
90 RingCCC *R = RingCCC::create(100);
92
93 for (int i = 0; i < ntrials; i++)
94 {
95 // test: (a+b) + (-b) == a
96 ring_elem a = gen.nextElement();
97 ring_elem b = gen.nextElement();
98 ring_elem c = R->add(a, b);
99 ring_elem d = R->negate(b);
100 ring_elem e = R->add(c, d); // should be a
101 EXPECT_TRUE(almostEqual(R, 98, a, e));
102 }
103}
const int ntrials
Definition ARingTest.hpp:42
M2::ConcreteRing< M2::ARingCCC > RingCCC
bool almostEqual(const RingCCC *R, int nbits, ring_elem a, ring_elem b)
virtual ring_elem negate(const ring_elem f) const
static ConcreteRing< M2::ARingCCC > * create(std::unique_ptr< M2::ARingCCC > R)
virtual ring_elem add(const ring_elem f, const ring_elem g) const

References M2::ConcreteRing< RingType >::add(), almostEqual(), M2::ConcreteRing< M2::ARingCCC >::create(), M2::ConcreteRing< RingType >::negate(), RingElementGenerator< RingType >::nextElement(), and ntrials.