Lines Matching refs:Times
65 // Tests (Plus, Times, Zero, One) defines a commutative semiring.
69 CHECK(Times(w1, w2).Member());
73 CHECK(ApproxEqual(Times(w1, Times(w2, w3)), Times(Times(w1, w2), w3)));
78 CHECK(Times(w1, Weight::One()) == w1);
79 CHECK(Times(Weight::One(), w1) == w1);
85 CHECK(!Times(w1, Weight::NoWeight()).Member());
86 CHECK(!Times(Weight::NoWeight(), w1).Member());
91 CHECK(ApproxEqual(Times(w1, w2), Times(w2, w1)));
94 CHECK(Times(w1, Weight::Zero()) == Weight::Zero());
95 CHECK(Times(Weight::Zero(), w1) == Weight::Zero());
103 // Check Power(w, 3) is Times(w, Times(w, w))
104 CHECK(Power(w1, 3) == Times(w1, Times(w1, w1)));
108 CHECK(ApproxEqual(Times(w1, Plus(w2, w3)),
109 Plus(Times(w1, w2), Times(w1, w3))));
111 CHECK(ApproxEqual(Times(Plus(w1, w2), w3),
112 Plus(Times(w1, w3), Times(w2, w3))));
123 // Check when Times() is commutative that it is marked as a semiring.
130 Weight p = Times(w1, w2);
135 CHECK(ApproxEqual(p, Times(w1, d)));
143 CHECK(ApproxEqual(p, Times(d, w2)));
151 CHECK(ApproxEqual(p, Times(d, w1)));
164 CHECK(Times(w1, w2).Reverse() == Times(rw2, rw1));