使用gmp理性,我是否有责任将我的电话预订到canonicalize()
(性能成本高昂)? gmp是否知道自上次调用canonicalize()
以来理性没有改变,如果我尝试规范化,它会回来吗?
我在文档中找不到答案,也许有人已经考虑了这个来源。
答案 0 :(得分:0)
它不可能只返回,因为mpq_t
不包含任何形式的信息,无论分数是否已经是规范形式。至少GMP文档没有提及16.2 Rational Internals:
mpq_t
变量使用mpz_t
分子表示有理数 分母(见整数内部)。
在实践中,它可能会调用mpz_gcd()
(或等价物)来检查分子和分母是否是互质。