问题标签 [transitivity]

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.

0 投票
1 回答
189 浏览

mysql - 通过mysql中的传递性获取行

假设我有下表:

其中similarTo 是id 的外键。我想要的是一个查询,它可以双向获取 id 的传递闭包到 2 个级别。换句话说,我们拥有的是: A --> B ---> C 以及 C --> B --> A

所以在这种情况下,我希望它返回:

本质上,我将函数(图像 A)similarTo(图像 B)存储在表中。这个函数是双向的,所以如果 A 与 B 相似,那么 B 与 A 相似。现在我需要一个查询,它可以通过最多两个级别/步骤找到与给定图像相似的所有图像......(也就是说,如果给定 A --> B --> C --> D,现在如果我想找到所有与 A 相似的图像,它将返回 B,C)

0 投票
2 回答
328 浏览

python - 是否有任何 Python2 实现,其中排序是可传递的?

是否有任何现有的 Python2 实现,其中排序是可传递的?也就是说,如果不创建用户定义的类型就不可能看到这种行为:

由于这个反例,CPython 不具有传递性

但是,CPython 中的这种排序仅记录为实现细节。

0 投票
1 回答
641 浏览

algorithm - 不一致(非传递)人类偏好的排序算法

假设我有一个文件,每行都有一个单行(笑话)。我想按照我觉得它们有多好笑来对这些笑话进行分类。我的第一个想法是实现任何排序算法(最好是进行尽可能少的比较)并让比较算法接受我的输入;我只是坐在那里,选择它呈现给我的每一对笑话中哪一个更有趣。

这是有问题的。我的笑话偏好不是一个完整的命令。它缺乏传递性。例如,我可能认为 B 在呈现时比 A 更有趣,而 C 比 B 更有趣,但是当呈现 A 和 C 时,我发现 A 比 C 更有趣。如果“>”表示“比,更有趣, ” 这意味着 C > B 和 B > A 并不意味着C > A。所有排序算法的正确性都取决于此。

但似乎仍然应该有一种算法对笑话列表进行排序,以便顶部的笑话比其他笑话更受欢迎,而底部的笑话不受欢迎,即使有个别例外

我不知道如何谷歌这个。有这种偏好排序的算法吗?这里的答案不适用,因为它强制用户的偏好具有传递性。

0 投票
1 回答
838 浏览

prolog - Prolog:检查简单事实的传递性

我的目的是在 Prolog 中实现一个简单的传递性示例(仅针对我自己)。

这些是我的事实:

我写了这个谓词来检查是否A信任C,只要有一个B信任CA信任这个的,这就是真的B

谓词例如返回truetrusts(p1, p2)trusts(p1, p5)trusts(p5, p6)已经返回ERROR: Out of local stack

Prolog 会这么快地淹没堆栈吗?

还是我的想法/实施trusts不良/浪费系统内存?

0 投票
1 回答
121 浏览

prolog - 简单及物性检查的不必要谓词定义?

对于给定的事实:

这个解决方案:

...用于改善Prolog 中描述的堆栈溢出问题:检查传递性以获取简单的事实

解决方案本身就像一个魅力。但是,我对双倍的trust_direct(A, B). 为什么这是必要的?

谓词不应该trusts(A, C)已经涵盖了trust_direct(A, B)关系吗?

0 投票
1 回答
68 浏览

r - 计算列表中所有网络的传递性

我有 500 个随机网络存储在一个列表中

我能够使用单独计算每个网络的传递性

如何计算所有网络的传递性并将值输出到 Excel 表中以便进行一些统计分析。请有任何想法。

0 投票
1 回答
61 浏览

sql - SQL Server 查询以查找带有可能循环循环的传递关系中的最小日期

对这个查询和一些提示/建议感到有点头疼,我们将不胜感激。我找不到与我的问题真正相关的任何东西 - 我在传递闭包上发现了一些东西,这不是我所需要的,因为我的数据可能会创建一个循环/循环,我认为这会导致递归调用无限循环.

假设我有两个基本表格,其下方显示数据。完全披露:Memberships表是一个 CTE,它已经做了相当多的逻辑来计算CServiceDate列的值。Transfers表是一个实际的表,除了 PK 和FromMembershipIDToMembershipID关系之外不包含很多 内容。

会员资格

转移

问题 我需要从查询中获取 Memberships CTE 中的每一行(即每个 MembershipID),我想返回所有相关 MembershipID 的 MIN CServiceDate。我将此 MIN 值称为 ECSD(预期信用服务日期)。ECSD的计算只有两个条件:

  • 如果通过查看 FromMembershipID 和 ToMembershipID 列,通过Transfers表以某种方式将成员资格记录与当前 MembershipID 关联,则该成员资格记录被视为与当前 MembershipID“相关”。例如,对于 MembershipID 20,如果我们查看Transfers表,我们可以看到 MembershipIDs 20、19、18 和 17 都是通过传递性相关的(此外:通过Transfers表,我们可以看到 MembershipIDs 15 和 16 与彼此,但不是 [20,19,18,17] )
  • 在上面直接派生的可传递相关成员列表中,在计算 ECSD 时可在传递关系列表中考虑的唯一成员是 MembershipDate 早于当前 MembershipID 的成员。例如,基于给定 MembershipID 的 MembershipDates 和Transfers表,如果查看 MembershipID 17,则在计算 MembershiID 17 的 ECSD 时不能考虑 MembershipID 19,因为 MembershipID 19 的 MembershipDate(2016 年 4 月 8 日)不早于MembershipID 17's (Dec-06-2011)

ECSD 列的预期输出

请注意:

  • MembershipID 可以在 FromMembershipID 和 ToMembershipID 列中显示多次。这些列值不必是唯一的。
  • (编辑后添加)我希望将此解决方案应用于传输深度超过 2 层的较大数据集。请参阅下面的示例:

示例 2

会员资格

转移

预期结果

请注意:我在传输表中添加了一个 pid 列。第一次忘记包括在内。

谢谢!

0 投票
1 回答
100 浏览

sql - SQL Server 查询以根据传递关系查找最小日期

对这个查询和一些提示/建议感到有点头疼,我们将不胜感激。我找不到与我的问题真正相关的任何东西 - 我在传递闭包上发现了一些东西,这不是我所需要的,因为我的数据可能会创建一个循环/循环,我认为这会导致递归调用无限循环.

假设我有两个基本表格,其下方显示数据。完全披露:Memberships表是一个 CTE,它已经做了相当多的逻辑来计算CServiceDate列的值。Transfers表是一个实际的表,除了 PK 和FromMembershipIDToMembershipID关系之外不包含很多 内容。

会员资格

转移

问题 我需要从查询中获取 Memberships CTE 中的每一行(即每个 MembershipID),我想返回所有相关 MembershipID 的 MIN CServiceDate。我将此 MIN 值称为 ECSD(预期信用服务日期)。ECSD的计算只有两个条件:

  • 如果通过查看 FromMembershipID 和 ToMembershipID 列,通过Transfers表以某种方式将成员资格记录与当前 MembershipID 关联,则该成员资格记录被视为与当前 MembershipID“相关”。例如,对于 MembershipID 20,如果我们查看Transfers表,我们可以看到 MembershipIDs 20、19、18 和 17 都是通过传递性相关的(此外:通过Transfers表,我们可以看到 MembershipIDs 15 和 16 与彼此,但不是 [20,19,18,17] )
  • 在上面直接派生的可传递相关成员列表中,在计算 ECSD 时可在传递关系列表中考虑的唯一成员是 MembershipDate 早于当前 MembershipID 的成员。例如,基于给定 MembershipID 的 MembershipDates 和Transfers表,如果查看 MembershipID 17,则在计算 MembershiID 17 的 ECSD 时不能考虑 MembershipID 19,因为 MembershipID 19 的 MembershipDate(2016 年 4 月 8 日)不早于MembershipID 17's (Dec-06-2011)

ECSD 列的预期输出

请注意:

  • MembershipID 可以在 FromMembershipID 和 ToMembershipID 列中显示多次。这些列值不必是唯一的。
  • 上面提供的表格是简单的关系。成员资格/转移可以低至 1 层深度(即 1 次转移)到 N 层深度,其中转移(如果仅查看 From/ToMembershipID)可以创建循环循环。下面是一个传输关系更深的例子。
  • 可能需要注意的是,如果 TOMembershipID 列中不存在 MembershipID,则该 MembershipID 是最早的(可能有多个)。类似地,如果 FromMembershipID 列中不存在 MembershipID,则它是结束的和最新的成员资格。
    • 对于给定的人,可能存在将某些成员资格联系在一起的块或转移集,但不是全部。

示例 2

会员资格

转移

预期结果

谢谢!

0 投票
1 回答
234 浏览

r - 鄂尔多斯-仁义图的复制

我对 R 真的很陌生,我的课程有一个作业。我必须创建1000个鄂尔多斯-人义模型的网络。问题是,我实际上可以创建一个模型,检查它的参数,如度数分布,绘制它等等。我还可以检查它的传递性等等。但是,我必须将这 1000 个网络的平均聚类系数(局部传递性)与我们一直在 Cytoscape 中研究的一些网络进行比较。这是我已经知道的代码:

我必须从这 1000 个网络中计算标准差和平均 ACC,然后进行比较。我将不胜感激任何帮助。

我实际上尝试了很多:

另外,我尝试过统一图表列表

0 投票
1 回答
425 浏览

math - 有向图的传递性是什么?

在麻省理工学院讲座(计算机科学数学)之后,我正在研究离散结构。在书中,及物性的定义如下:

传递性的定义

然后书上说下图 7.8 中的图形不满足传递性:

将 DAG 转换为 Poset 图 7.8 和 7.9 的说明

但我认为它在图 7.8 中已经传递为 v2 -> v3 和 v3 -> v4,然后是 v2 -> v4。

有人能帮我理解我在这里缺少什么吗?非常感谢你提前!!!