1

我正在尝试用GiNaC做一些非常简单的事情:

void assert(bool x) {
    if (!x)
        throw runtime_error("Assertion error");
}

#include <ginac/ginac.h>

int main(int argc, char *argv[]) {
    assert(sqrt(ex(32)) == 4 * sqrt(ex(2))); // Raises runtime_error
}

我想简化sqrt(32),使其等于4 * sqrt(2)。当然,从数学的角度来看确实如此,但 GiNaC 并没有“意识到”这一点。文档没有提到这些简化,我真的不知道这是否可能......

4

0 回答 0