0

我有一个源文件,例如(不失一般性(仅用于图像可能的语法)):

function a()
    return g // global variable without any internal structure exactly
end

function b(x, y)
    local z = x * y
    return z + 1
end

function c(z, t)
    return b(z * z, a())
end

// ...etc

我想将任何函数 WRT 区分为某个变量。

我们可以将所有形式参数视为导出时内部结构未知的函数。

如果我进一步正确,那么以下是事实(因为依赖符号'是符号的一部分,因为全局变量是替代时间阶段的运算符(def:g{g}为一,但g{y}为零)):

function a'()
    return g';
end

function b'(x, y, x', y')
    local z' = x' * y + x * y'
    return z' + 0
end

但是最后一个函数怎么办?即,用实际参数代替函数b

是否有任何现成的通用算法实现来处理上述内容?如何处理高阶导数(特别有趣,如何处理形式参数)?还有其他可能不清楚的情况吗?

4

1 回答 1

1

我建议让您的参数成为知道如何响应导数的符号表达式,并让所有操作都接受函数并返回函数。然后你会得到一个知道如何表示为导数的最终表达式。此外,您可以在稍后执行偏导数之类的操作,因为您有符号表达式。

有关我的意思的真实示例,请参阅http://www.elem.com/~btilly/kelly-criterion/js/advanced-math.js了解我为解决 JavaScript 中的微积分问题而编写的库,并搜索对于http://www.elem.com/~btilly/kelly-criterion/betting-returns2.html的源代码中的“根据要求进行优化”,看看我是如何使用它的。请参阅http://www.elem.com/~btilly/kelly-criterion/了解我编写该代码的原因。

在那个例子中,我当然没有使用中缀表示法。但这是一个标准的解析问题,我认为你知道如何解决。

于 2014-09-29T15:37:03.680 回答