4 #include <barvinok/NTL.h>
13 /* This is not thread-safe, but neither is NTL */
29 QQ
& operator += (const QQ
& a
) {
34 return canonicalize();
37 QQ
& operator *= (const QQ
& a
) {
40 return canonicalize();
43 QQ
& operator *= (const ZZ
& a
) {
49 #ifdef NTL_vector_decl
50 NTL_vector_decl(QQ
,vec_QQ
);
52 typedef Vec
<QQ
> vec_QQ
;
55 vec_QQ
& operator *= (vec_QQ
& a
, const ZZ
& b
);
56 vec_QQ
& operator *= (vec_QQ
& a
, const QQ
& b
);
58 std::ostream
& operator<< (std::ostream
& os
, const QQ
& q
);
59 std::istream
& operator>> (std::istream
& os
, QQ
& q
);
61 #ifdef NTL_io_vector_decl
62 NTL_io_vector_decl(QQ
,vec_QQ
);