系统输出受限超平面排列的符号向量

计算科学 计算几何 图书馆 智者
2021-12-15 00:53:05

(我之前在 Sage 的专用问答网站上问过这个问题,但没有得到回应,所以我认为值得在这里尝试。)

我有一种在 Sage 中构建超平面排列的方法,其中涉及将较大排列的限制限制在其中的一个超平面上。我想输出这种排列区域的符号向量列表,其中符号向量中坐标的顺序对应于我要强加在超平面上的特定顺序。由于 Sage 的超平面排列包做出了一些看似武断的决定,因此结果出人意料地棘手:

  • 超平面排列构造函数似乎不保留输入其中的超平面的顺序,所以如果我只运行内置的 sign_vector 方法,则结果向量的坐标可能会按照我想要的方式重新排列。
  • 另一方面,我不确定如何手动确定符号向量,因为我不确定 Sage 如何决定在受限排列中协调超平面。因此,虽然我有原始环境空间中的超平面方程,但我不确定如何自动将它们转换为我所限制的超平面中的方程。

是否有人对如何系统地解决这些任意决定或如何找到不同的解决方法有建议?或者,如果可能的话,我更愿意留在 Sage 中,您是否推荐其他软件来按符号向量列出超平面排列的区域?

1个回答

在深入研究了安排包的源代码后,我看到安排的构造函数对提供的超平面列表进行了排序,这就是导致第一个要点中提到的加扰的原因。我相信当我构建我开始的排列时和我限制时都会发生这种情况,所以我认为不值得费心解读这些排序操作。

相反,我尝试使用第二个要点的解决方法,只使用超平面的方程(我知道)并在所有区域的代表点(我可以委托给 Sage)评估它们。在这一点上,直接为约束中的超平面计算方程并从中构造实际的超平面排列对象就更简单了。不过,作为参考,Sage 自动执行此操作的方式是在超平面 H 的方程中选择系数最大的变量来限制(通过选择第一个这样的变量来打破平局)并从另一个方程中消除该变量通过减去 H 方程的倍数得到超平面。