【问题标题】:Why are there so many notations for Boolean logic? [closed]为什么布尔逻辑有这么多符号? [关闭]
【发布时间】:2011-09-14 15:10:53
【问题描述】:
  • 英文“and”“or”“not”

  • 设置∩ ∪ '

  • 一阶逻辑∧ ∨ ¬

  • 组合逻辑* + '

  • C 风格编程&& || !

  • 电路图

集合表示法可以通过集合操作不同于位操作这一事实来解释。

C 风格的符号可以通过 ASCII 代码的限制来解释(没有大写或杯子)。

但还是有很多不必要的翻译。

为什么电路图不只使用包含数学符号的方框?这样您就不必查找您不熟悉的每个逻辑门。更别提谷歌很难了:

【问题讨论】:

  • 为什么有这么多语言?
  • C 风格很简单——你看到键盘上的¬ 键了吗?程序员如果不懒惰就什么都不是,他们会重用他们已经拥有的东西。
  • 事实上,我确实有一个¬ 键!
  • Charbel:问题的范围不限于编程语言。数学符号非常多样化。马克:我就是这么说的。 Widor:你这个幸运鸭!

标签: syntax logic boolean


【解决方案1】:

我相信电路的形状不同,因此它们会脱颖而出。如果都是盒子(更不用说手写更长的时间),那么(IMO)将更难阅读电气图。这对你来说可能很难,因为你不是每天都使用这些符号,但是记住 4-5 个符号并不是那么难(和,或,异或,和身份,加上“不”出口的小圆圈和/或入口)。

关于集合和 c - 你已经回答了自己。

关于英语 - 嗯,你不希望人们使用符号,是吗?此外,当这些符号被解读为单词时(与撇号、句号等不同)。

组合与 FOL - 我假设这只是为了方便,有一个明确的分离,并且如果您正在处理 FOL(或更高级别的逻辑)公式或其他方式,请使其更清楚。如果您的逻辑公式中也有数学符号,这一点尤其重要,例如:((3*x+1<y) ∨ (y<4*x))。组合逻辑使用它们的符号是因为其中的许多操作都与它们的数学含义等价,例如:+0、*0、*1。

每个人都只为自己选择最舒适的东西。就是这样。

最后一点,一些编程语言确实使用“and”、“or”、“not”,例如 python,甚至 c 在ciso646...中也将它们作为宏...

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-03-31
    • 1970-01-01
    • 2015-07-08
    • 2011-07-22
    • 2010-09-30
    • 1970-01-01
    相关资源
    最近更新 更多