0

有没有办法通过之前在 SAGE 中定义的变量来表达数学表达式?

例如,如果我有变量a = b + c,我希望 SAGE 将表达式重写b + c + da + d.

谢谢你。

4

2 回答 2

3

事实上,如果你不知道你想要表达式树的哪一部分,那么替换这样的表达式是一件很重要的事情。在此处查看 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?

在交互式外壳或笔记本中。

于 2013-03-12T13:35:55.937 回答
0

正如您在微积分中所见,您可以将 d 表示为变量

a = var('a'); b+c

或者像 b 和 c 变量的函数

于 2013-03-12T12:19:41.150 回答