有没有办法通过之前在 SAGE 中定义的变量来表达数学表达式?
例如,如果我有变量a = b + c
,我希望 SAGE 将表达式重写b + c + d
为a + d
.
谢谢你。
有没有办法通过之前在 SAGE 中定义的变量来表达数学表达式?
例如,如果我有变量a = b + c
,我希望 SAGE 将表达式重写b + c + d
为a + d
.
谢谢你。
事实上,如果你不知道你想要表达式树的哪一部分,那么替换这样的表达式是一件很重要的事情。在此处查看 Richard Fateman 的评论。
问题的核心在于,即使是执行您想要的操作的命令也不是字符串,而是表达式。
sage: var("a b c d")
(a, b, c, d)
sage: (a+d).subs({a:b+c})
b + c + d
sage: (b+c+d).subs({b+c:a})
b + c + d
因此,您将不得不使用“通配符”。
sage: w0 = SR.wild(0)
sage: (b+c+d).subs({b+c+w0:a+w0})
a + d
有关详细信息,请参阅
sage: x.match?
sage: SR.wild?
在交互式外壳或笔记本中。