问题标签 [negation]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
prolog - Prolog中唯一集合的否定和测试
我刚刚开始尝试使用 Prolog,我正在尝试编写一个规则来确定列表是否仅包含唯一元素。我让它在第二个变体中工作(通过否定阳性测试),但我完全不明白为什么第一个变体不起作用。
鉴于此文件:
GNU Prolog 解释器给出以下响应:
为什么第一反应是“不”?(我本来希望 member 返回 false,被否定为 true,因此 notmemeber 在 uniqueElements 的每次迭代中都返回 true)。我想我期待 '\+' 表现得像 '!' 在 C if 子句或 Python 中的 'not' 关键字中执行。这是误会吗?
php - 变量前面的感叹号 - 需要说明
我已经使用 PHP 有一段时间了,但这对我来说一直是个谜,变量前面的感叹号(负号)的正确使用。
说明什么!$var
?是 var false
,为空,未设置等吗?
这里有一些我需要学习的例子......
示例 1:
这个例子有效吗?如果$string
为空,if 语句真的有效吗?
示例 2:
这个例子有效吗?
我从不使用上述任何示例,我将这些示例限制if ($var)
为仅具有布尔值的变量。我只需要知道这些示例是否有效,这样我就可以扩大if ($var)
语句的使用范围。它们看起来很干净。
谢谢。
apache - Apache 将逻辑否定 ¬ 重定向到波浪号 ~
我有一个要重定向的 URL,但是我似乎无法将字符输入 vim。
字符是¬(逻辑否定),我想将它重定向到〜(波浪号)。
Vim 不允许我将此字符复制到终端中,而我的键盘中没有它!
c++ - 否定运算符和比较
让我们看一些代码示例:
根据 C++ 标准,我们知道,首先进行否定,而不是比较。但是如果我们稍微扩展一下这个例子:
该程序的输出将是:
- 第一次调用(控制调用)很清楚。我们检查是否调用了我们想要的运算符。
- 第二个电话是我首先陈述的证明。首先调用否定运算符,然后调用结果(布尔)运算符>。
- 第三个电话是困扰我的。
这里提出了我的问题。为什么SomeObjInstance > 0
call 不同于SomeObjInstance.operator>(0)
. 我知道以第二种方式(作为成员)调用操作员并不常见,但为什么这种调用不同?如果成员操作员不存在,我总是坚持将SomeObjInstance > 0
其转换为成员调用SomeObjInstance.operator>(0)
或函数调用。bool operator>(const Test &, int)
在 C++ 标准中描述了这种行为,或者这可能是某种未定义的行为?
prolog - swi-prolog 否定
我很难在 Prolog 中寻找关于否定的明确答案,所以如果这是一个明显的问题,我深表歉意:
我正在尝试编写一个简单的代码,从逻辑上说“如果 X 喜欢 Y 并且只喜欢 Y,X 和 Y 就会彼此相爱”。我的 .pl 代码如下所示:
然后我运行我的程序并简单地问:
但它总是假的。按照我的逻辑,它应该回来说“X=john, Y=mary”。
我尝试了一些将否定与削减分开的组合,尝试使用多行来定义“爱”......我可能错过了否定的主要原则,或者也许有更简单的方法来实现我正在尝试的内容在这里做。如果您能提供帮助,请告诉我!
我正在使用 Debian 软件管理器中的 SWI-Prolog (swipl),如果这有帮助的话,尽管我怀疑这会产生很大的不同。
prolog - 序言否定 \+
有四个篮子,每个篮子都有独特的颜色。我编写了一个序言程序来根据一些事实和规则来告诉颜色顺序。这是 .pl 文件:
iright 和 nextto 谓词是正确的。我的查询是myprogram(Data)
,我希望结果应该是
但实际上提示表明
我知道问题在于否定,但不知道如何以及为什么。请帮忙。
当我使用trace.
java - 当配置文件不活动时包括 bean 定义
在我的应用程序中,我使用了几个配置文件来使某些 bean 符合自动装配的条件。我缺少的是当某个配置文件不活动时使 bean 有资格进行自动装配的可能性。
我想到的最好的方法是这样的:
- 假设我们有一个所有可能配置文件的列表,例如{A, B, C, D}。
- 对特定执行活动的配置文件是 {A, C}。
- 我所做的是为所有可能的非活动配置文件创建人工配置文件。在示例情况下,我将创建 {not_B, not_D} 配置文件。
- 我想根据
X
我为 profile激活的非活动配置文件激活 beannot_X
。在我的情况下,如果我希望 bean 在配置文件 B 不活动时有资格进行自动装配,我会注释它们@Profile("not_B")
但是,此解决方案需要预先了解所有可能的配置文件。
你能想出更好的解决方案吗?
python - 使用 ~ 反转一个 numpy 布尔数组
我可以~A
用来反转一个 numpy 布尔数组,而不是相当笨拙的函数np.logical_and()
吗np.invert()
?
确实,~
似乎工作正常,但我在任何 nympy 参考手册中都找不到它,而且 - 更令人担忧的是 - 它当然不适用于标量(例如bool(~True)
返回True
!),所以我有点担心......
prolog - Prolog中的“非”运算符或否定
背景
我需要编写一个关系 power(P) 来查看一个列表并确定 P 的一个元素是否都为零。
这是我所拥有的:
一些资源建议使用剪切运算符 (!),它控制回溯,我认为这不是我想要的。
我还遇到了不可证明的运算符 (\+),它似乎交换了结果(不可证明返回是),我认为这也不是我想要的。
我确实找到了Prolog Dictionary,但我无法弄清楚“not”是什么意思或如何使用它(正如您可以想象的那样,Ctrl+F 会找到许多“not”的实例)。
问题
我怎么能在序言中说“H不为零”?
编辑该列表是整数列表。