首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >比较/交叉比较标准

比较/交叉比较标准
EN

Stack Overflow用户
提问于 2009-08-31 11:52:40
回答 2查看 401关注 0票数 0

如果有任何开放源码已经做到了这一点,我很有兴趣听到它。但我还没有看过,所以我正在试着推出我自己的。

示例:

代码语言:javascript
复制
variable x = compareCriteriaBetween 3 and 6
variable y = compareCriteriaLesserThanOrEqual 5

对我来说,困难的部分是找到一种优雅的方法来比较compareCriteria并创建一个交叉点。在本例中,两者之间的交集是‘介于3和5之间’。

我怎样才能以一种“告诉不要问”的方式来实现它呢?请注意,compareCriteria可以是完全无关的(例如startsWithLetter和betweenNumber)。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2009-09-01 11:22:24

如果你的表达式中只有常量,你应该是安全的(我认为!) undecidability。一旦你能用+-*/来表达关于整数的一般语句,问题就出现了(参见Peano arithmetic)。

即使您停留在可判断性的范围内,也没有算法可以接受任意语句P( x )和Q(x),并为所有x计算一个等价于P(x) & Q(x)的语句R(x),其中x可以在任意域(整数、字符串、矩阵、实数、复数、逻辑语句!,...)上取值。要做到这一点,你需要领域特定的技巧,以及严格限定的languages,其中P,Q和R都是公式化的。存在针对某些领域的软件产品--其中一个被称为Mathematica...

试着回到最基本的问题:你想解决什么问题?

票数 1
EN

Stack Overflow用户

发布于 2009-08-31 12:37:13

如果你只对简单的条件感兴趣,比如整数/浮点数上的小于等于或介于之间,你可以重写3到6为(大于等于3小于等于6)。如果将其与小于等于5的逻辑结合使用,则可以使用布尔代数来获得(大于等于3的(小于等于6的和小于等于5的)),然后将内括号简化为小于等于5,并将结果重写为介于3和5之间。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1357097

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档