Wolfram mathematica 如何清除符号的缓存,即未设置模式自由值4

Wolfram mathematica 如何清除符号的缓存,即未设置模式自由值4,wolfram-mathematica,Wolfram Mathematica,考虑以下代码: ClearCache[f_] := DownValues[f] = DeleteCases[DownValues[f], _?(FreeQ[First[#], Pattern] &)] 问题:有人能详细解释一下u的含义吗?在自由之前。。。段我对Mathematica中的“头模式语法”的研究和理解让我大吃一惊。这个“头模式”匹配任何东西,而?检查在传递给以下函数时,匹配的值是否为

考虑以下代码:

ClearCache[f_] := DownValues[f] = DeleteCases[DownValues[f], 
                                              _?(FreeQ[First[#], Pattern] &)]
问题:有人能详细解释一下u的含义吗?在自由之前。。。段我对Mathematica中的“头模式语法”的研究和理解让我大吃一惊。

这个“头模式”匹配任何东西,而?检查在传递给以下函数时,匹配的值是否为True:FreeQ[First[],Pattern]&

一般来说,p?test是一个模式对象,它代表与p匹配的任何表达式,并且test的应用程序在其上给出True,如您在相关文档中所看到的