布尔逻辑设计 - 归约

2024-03-28

我有以下功能需要减少/简化。

F(A,B,C,D) = BC + (A + C'D') 其中 ' 表示补集

Here's my solution:

= BC + (A + C'D')'

= BC + (A + (C+D)

= BC + (A + C + D)

= BC + C + A + D

= C(B + 1) + A + D

= C*1 + A + D

= C + A + D

它是否正确?


与传统代数一样,如果你对等式的一侧做了某事,你就必须对另一侧做同样的事情,包括求补。这里我们陈述原方程:

F'(A,B,C,D) = BC + (A + (CD)')

由于我们有 F' 而不是 F,我的直觉告诉我要对两边进行补足,但首先我将补足分配到术语 (CD)' 中,以便从长远来看让生活更轻松:

F' = BC + (A + (C'+ D'))

现在我们可以对等式两边进行补充:

1: F = '(BC)'(A + (C'+ D')) 分配补数后 OR 变为 AND

现在让我们将补数分布在里面,看看我们得到了什么:

2:F = (B'+C')(A'(CD))

现在我们可以将正确的项 (A'(CD)) 分配给进行或运算的两个项:

3:F=B'(A'(CD)) + C' (A'(CD))

我们看到正确的术语消失了,因为我们有一个 CC',因此我们剩下:

4:F = A'B'CD

希望我没有犯错误。我知道您已经找到了答案,但阅读本文的其他人可能有类似的问题,因此我这样做是为了避免被问到重复的问题。祝你好运!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

布尔逻辑设计 - 归约 的相关文章

  • 什么是真与假?它与 True 和 False 有何不同?

    我刚刚了解到有truthy and falsypython 中的值与正常值不同True and False 有人可以深入解释一下什么吗truthy and falsy价值观是 我应该在哪里使用它们 有什么区别truthy and True价
  • 检查字符串是否不为 Null 且不为 Empty

    如何检查字符串是否不是null并且不为空 public void doStuff String str if str null str here I want to check the str is empty or not handle
  • 如何表达两个值不相等?

    有没有类似的方法equals 表示 不等于 我想要完成的示例如下 if secondaryPassword equals initialPassword JOptionPane showMessageDialog null You ve s
  • 这个布尔表达式可以简化吗?

    A Or B And Not A And B 您正在寻找一个XOR 根据语言 它可能是单个操作
  • 为什么这个表达式的计算结果为 0?

    为什么表达 5 lt 3 lt 1 在 MATLAB 中计算结果为 0 每个单独的语句都评估为 true 所以我很困惑为什么它的评估结果为 false 因为它实际上看起来像这样 5 lt 3 lt 1 5 1 最终答案 0
  • javascript 中是否有使用原始变量?

    一个非常简单的问题 是否存在在 javascript 中使用原始数据类型更可取的情况 我特别被原始布尔值困扰 请考虑以下代码 var bool new Boolean false if bool alert bool it will ale
  • 除了 Simple Solver 之外,还有什么软件可以求解给定输入/输出的数字电路?

    All 我在这里找到了一个名为 简单求解器 的东西 http home roadrunner com ssolver syn html 你可以在这里下载 http www softpedia com progDownload Simple
  • “?” 是什么意思?和“:”在布尔语句中做什么? [复制]

    这个问题在这里已经有答案了 我认为这个问题是一个通用的编程问题 但假设我要为 Java 请求这个 下面的语句有什么作用 return a b c b c 我看过语法 s and 在许多主题中都有 我在其中找到了这个特定的主题检查三个布尔值中
  • 我在应用德摩根定律时遇到问题...反馈?

    每次我的作业中出现这些问题时 我都会做错 有人能帮助我理解吗 还是老师的钥匙关了 我无法知道 因为我没有得到正确的答案 它只能让我知道我的答案是错误的 Assume x 7 and y 5 应用德摩根定律 选择与以下逻辑表达式等效的逻辑表达
  • Pandas 中的逐元素逻辑或

    我知道 AND 对应于 并不是 什么是逐元素逻辑 OR 运算符 我知道 或 本身不是我要找的 对应的运算符是 df df lt 3 df 5 将按元素检查 value 是否小于 3 或等于 5 如果您需要一个函数来执行此操作 我们有np l
  • 理解条件逻辑

    我正在编写一个 python 程序 它接受计划英语中的给定句子并从中提取一些命令 现在很简单 但我从命令解析器中得到了一些意想不到的结果 经过一番研究后 我的条件逻辑似乎没有按照我的预期进行评估 当然 这是一种非常不优雅的方法 而且太冗长了
  • Golang 中的位掩码和按位运算

    一般来说 我是编程的初学者 所以如果我在提出这个问题时犯了一些错误 我很抱歉 我正在遵循的教程将详细介绍此代码 package main import fmt const isAdmin 1 lt lt iota isHeadquarter
  • 德摩根定律和 C++

    对于以下每个表达式 编写等效的 C 表达式 不带任何一元否定运算符 仍然允许 使用德摩根定律 P Q P Q P Q P Q For x 5 x 7 x lt 5 x gt 7 a gt 3 b gt 4 c 5 我的回答 x gt 5 x
  • 将 bool 作为参数传递。 C++

    我想做的是下面的例子 我们首先定义一个布尔值 bool cat false 让我们在这里制作一本假书 bool setcat bool booltoset booltoset true return booltoset 现在让我们用 cat
  • 为什么 (0 < 5 < 3) 返回 true?

    我在 jsfiddle net 上玩 我很好奇为什么这会返回 true if 0 lt 5 lt 3 alert True 这也是如此 if 0 lt 5 lt 2 alert True 但这并没有 if 0 lt 5 lt 1 alert
  • 解决命题逻辑/布尔表达式的工具(SAT Solver?)

    我对命题逻辑和布尔表达式主题很陌生 所以这就是我需要帮助的原因 这是我的问题 在汽车行业 当您购买汽车时 有数千种不同的组件可供选择 并非每个组件都是可组合的 因此对于每辆车都存在许多用命题逻辑表达的规则 就我而言 每辆车都有 2000 到
  • 在Javascript中将rgba值转换为一个整数

    我已经可以将 32 位整数转换为其 rgba 值 如下所示 pixelData i red pixelValue gt gt 24 0xFF green pixelValue gt gt 16 0xFF blue pixelValue gt
  • 如果任何源列为 true,则将布尔值聚合为 true

    假设我有下表 id column a column b column c 1 t f t 2 t f f 3 f t f 从上表中 我想 select rows from id 1 2 结果应该是 column a column b col
  • 为什么“a == x or y or z”总是评估为True?我如何将“a”与所有这些进行比较?

    我正在编写一个安全系统 拒绝未经授权的用户访问 name input Hello Please enter your name if name Kevin or Jon or Inbar print Access granted else
  • 将这个 if-then 逻辑转换为布尔表达式?

    我在使这段代码更简洁 最好是单个布尔表达式 方面有点绞尽脑汁 这是我的代码 if d Unemployed if type Unemployed tmp Unemployed true else tmp Unemployed false

随机推荐