binary - 如何实现 AND/OR 语句逻辑?
问题描述
我对如何使用约束来实现这个语句有疑问:只有 A 或 B 或两者,然后是 C 或 D 或两者。我想用采用二进制值的约束来实现它。这是一个例子:如果A然后B,意味着A=B;A 或 B 或两者兼有,表示 A+B>=1。太感谢了。
解决方案
让我试试。
第一A => B
不一样A=B
。然而,它与 相同B >= A
。如果我们想要:A <=> B
那么确实A=B
。
真正的问题似乎是:A+B>=1 <=> C+D>=1
或
A+B>=1 => C+D>=1
A+B=0 => C+D=0
我们可以把它写成一个不等式系统:
C+D >= A
C+D >= B
C+D <= 2(A+B)
假设所有变量都是二进制的。
推荐阅读
- reactjs - 在 React-RCTWebSocket.modulemap 中重新定义模块“React”
- eclipse - Eclipse 在 MacBook M1 上崩溃
- vba - 脚本在 Outlook 新邮件上增加附件
- php - PHP CURL 使用相同的密钥上传多个文件
- python - 如何从图像中删除背景线条和形状以进行文本提取?
- discord.js - 我正在尝试制作一个简单的 discord.js 机器人
- python - Python - 仅从句子中删除单词
- html - 在 HTML/CSS 中,如何使表情符号与文本大小相同?
- internationalization - 测试翻译后的字符串格式是否正确
- python - Keras text_explain