1

我让 Pari 计算了一些多项式并将它们写入文件中。现在我想把它们读回来,我遇到

*** 表达式嵌套太深。

文件中没有循环,它只是第 n 行上的 {P[n]=(some (Laurent) polynomial in q);}。

该文件只有约 500 KB,我读过更大的文件。

我尝试检查是否有错误并且找不到它们。接下来,我尝试简化文件并读取前一百个多项式左右。这行得通,然后我尝试只加载一个较大的多项式。它不起作用,然后我删除了文件中的一些项,发现如果删除了足够多的项,它就可以读入它。

例如我输入

default(parisize,10000000000);
P=vector(1000,i,0);
\r {filename}

或者

default(parisize,10000000000);
P=vector(1000,i,0);
read(filename)

文件只是表格的一行

P[139]=(q^152352 + ... + 33495418*q^1184)/q^76176

这是可以阅读的

文件只有一行完全相同,除了给定的额外+1

P[139]=(q^152352 + ... + 33495418*q^1184+1)/q^76176

无法读入。

4

1 回答 1

0

我建议在汇总的术语列表中每 100 或 1000 个术语添加括号,以便将一组中的加号数限制在某个合理的数字。似乎表达式解析器在遇到每个 + 时都递归地调用它自己。您可以通过插入括号来减少递归的深度。

于 2019-09-20T15:51:37.607 回答