【问题标题】:Boolean expressions with unused variables?带有未使用变量的布尔表达式?
【发布时间】:2018-09-25 02:44:19
【问题描述】:

我正在审核一个知识库,并注意到一些布尔表达式,例如:

A 和(A 或 B)

这个布尔表达式值得注意,因为当然,B 的值实际上是不相关的。这可能表明知识库中存在错误,因为表达式的创建者可能打算让它考虑它包含的所有变量。

我有两个问题:

  1. 这种现象有名称吗?
  2. 是否有任何有效的算法来识别这些未使用/冗余变量?我可以使用真值表来做到这一点,但这对于长表达式来说会失效。我还研究了最小化算法,但其中许多不能保证找到最佳解决方案,因此我不确定它们是否能保证识别出任何未使用的变量。

【问题讨论】:

    标签: boolean-logic


    【解决方案1】:
    1. 您正在查看吸收
      1. 这些被称为逻辑等价,并且存在众所周知且经过证明的等价列表。算法可能类似于编程语言的解释器或编译器使用的算法,它们通常基于树。您可以使用树来确定您要查找的表达式类型,然后将其与其对应的逻辑等价匹配。请务必阅读运算符的优先级。

    链接

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-09-02
      • 1970-01-01
      • 1970-01-01
      • 2023-03-13
      • 1970-01-01
      • 2014-03-11
      • 1970-01-01
      • 2014-01-16
      相关资源
      最近更新 更多