有什么模块可以处理布尔表达式的?

有什么模块可以处理布尔表达式的?

比如

[Copy to clipboard] [ - ]
CODE:
(A&!B)|(!C&D&E)



[Copy to clipboard] [ - ]
CODE:
(A ^B)|(^C D E)

之类的?
正则替换后eval
但是我不求0或1的结果值...
原要求是这样的,有两组 布尔表达式,在忽略 X和Y的情况下 比较他们是否相等,意义上相等.
一组的形式是这样:

[Copy to clipboard] [ - ]
CODE:
(A|((C&!D)&E)|(!Y&X))

一组的形式是这样:

[Copy to clipboard] [ - ]
CODE:
(E*((C*~D)*~X)+A)

也就是说,布尔式的项的顺序不是固定的。要比较意义上的相等(在忽略指定项的情况下)。
怎么整呢?

貌似没有这个module.

一个可行的办法是全排列0|1作比较.
生成全排列参考Algorithm::Permute