我正在组建一个需要使用saturation arithmetic的小型库。
作为其中的一部分,我打算实现两个特殊情况的浮点类型,它们被钳制到[0.0,1.0]和[-1.0,1.0]。
在命名[0.0,1.0]范围方面,我发现以下两个看似非常有帮助的问题:
但我正在努力寻找一种命名/表达[-1.0,1.0]范围的方法。我认为这部分与搜索引擎处理数字上的否定符号的方式有关,但它可能只是因为它没有特殊名称。
此范围是否有特殊名称或描述适合在类型名称中使用的合理简短方法?
我也考虑过问这个数学问题,但由于我主要是一名程序员而且对数学略有厌恶,所以我更有信心先问这里,以防万一我被术语和方程式轰炸我不明白
我觉得奇怪的是,某些序列/数字类别具有特殊名称(例如斐波纳契序列,mersenne primes),但这些重要的范围似乎没有。
答案 0 :(得分:1)
由于[0.0,1.0]是"标准化",可以调用[-1.0,1.0]"双极归一化"。
答案 1 :(得分:1)
[0,1]通常被称为单位区间,但这也是该点。如果您为每个要使用的间隔构建一些过分的名称,那么您只会让人感到困惑。由[-1,1]表示的从-1到1的闭合间隔通常被称为" 从[-1,1] "的闭合间隔;因为这只是形式化它的最直接方式。你也可以称之为" tanh"或者"同伦的箭头顶点"但这些比任何事情都更令人困惑。
对于类型或对象名称,我会简单地使用Fatal error:
The required JNI library cannot be found: java.lang.UnsatisfiedLinkError: no minisatproverx5 in java.library.path
at edu.mit.csail.sdg.alloy4compiler.translator.TranslateAlloyToKodkod.execute_command(TranslateAlloyToKodkod.java:390)
at ejdolly.JDollyImp.initializeAlloyAnalyzer(JDollyImp.java:128)
at ejdolly.JDolly.hasNext(JDolly.java:181)
at org.testorrery.ForLoopIterator.hasNext(ForLoopIterator.java:40)
at refactoringTest.RefactoringTest.runTests(RefactoringTest.java:145)
at refactoringTest.MainRunner.main(MainRunner.java:83)
Caused by: java.lang.UnsatisfiedLinkError: no minisatproverx5 in java.library.path
at java.lang.ClassLoader.loadLibrary(Unknown Source)
at java.lang.Runtime.loadLibrary0(Unknown Source)
at java.lang.System.loadLibrary(Unknown Source)
at kodkod.engine.satlab.NativeSolver.loadLibrary(NativeSolver.java:73)
at kodkod.engine.satlab.MiniSatProver.<clinit>(MiniSatProver.java:148)
at kodkod.engine.satlab.SATFactory$5.instance(SATFactory.java:106)
at kodkod.engine.fol2sat.Bool2CNFTranslator.translate(Bool2CNFTranslator.java:55)
at kodkod.engine.fol2sat.Translator.toCNF(Translator.java:426)
at kodkod.engine.fol2sat.Translator.generateSBP(Translator.java:365)
at kodkod.engine.fol2sat.Translator.toBoolean(Translator.java:343)
at kodkod.engine.fol2sat.Translator.translate(Translator.java:189)
at kodkod.engine.fol2sat.Translator.translate(Translator.java:143)
at kodkod.engine.Solver$SolutionIterator.next(Solver.java:495)
at kodkod.engine.Solver$SolutionIterator.next(Solver.java:1)
at edu.mit.csail.sdg.alloy4compiler.translator.A4Solution$Peeker.<init>(A4Solution.java:719)
at edu.mit.csail.sdg.alloy4compiler.translator.A4Solution$Peeker.<init>(A4Solution.java:709)
at edu.mit.csail.sdg.alloy4compiler.translator.A4Solution.solve(A4Solution.java:941)
at edu.mit.csail.sdg.alloy4compiler.translator.TranslateAlloyToKodkod.execute_command(TranslateAlloyToKodkod.java:388)
... 5 more
java.lang.NullPointerException
at ejdolly.JDolly.hasNext(JDolly.java:182)
at org.testorrery.ForLoopIterator.hasNext(ForLoopIterator.java:40)
at refactoringTest.RefactoringTest.runTests(RefactoringTest.java:145)
at refactoringTest.MainRunner.main(MainRunner.java:83)
或类似名称来执行您所遵循的任何命名约定。