Mathematica 中提供了对模式进行限制的一般方法. 这可以通过在模式后面
/;condition 来实现,此运算符

读作"斜杠分号",其作用是当所指定的 condition 值为
True 时模式才能使用.
可以在变换规则中用

,也可以在单个模式中用

. 可以将
/;condition 放在

定义域或

规则后告诉
Mathematica 只有当指定的条件满足时才能使用此定义或规则. 但要注意

不能放在

或

规则后,因为这些是立即被处理的(见
"立即定义和延时定义" ).
运算符

可以用来限制运算规则的使用范围. 典型的情况是先定义与恨广泛的一类表达式匹配的模式,然后再给出一些数学上的限制使其作用于较少的一类表达式上.
在定义模式或规则时,可以把

放在不同的位置. 例如,可以将

放在规则的右端,其形式为

,也可以将其放在左端,其形式为

. 还可以把它插在表达式
lhs 的中间. 但要注意在指定条件中使用的模式名称必须在该条件涉及的模式中出现,否则在判断条件是否成立的过程中所使用的名称就不一定限制在与模式匹配的表达式值之中,这时
Mathematica 会使用一些全局变量,而不是取决于模式匹配的值.
通常用

使模式和变换规则使用到具有某一性质的表达式上,在
Mathematica 中有一类函数去测试表达式的性质. 这类函数后有一个

,表明它们在"提问".
以

结尾的
Mathematica 测试函数的一个重要特性是:当它无法确定一个表达式具有所指出的特性时,测试函数的返回值为
False.