功能覆盖:发生了什么以及何时发生

时间:2016-05-23 11:51:09

标签: computer-science discrete-mathematics function-overriding safety-critical

所以,功能覆盖和离散数学。我在关键系统设计中并不完全确定的功能。假设我们有一个功能,如果f()失败; g()会覆盖;如下所示...

g()⊕f()

  • x = 0.1;

  • f(x)x ^ 2当x∈ℕ1时,

  • 当x∈ℕ0时,
  • g(x)2x -x

我理解在输入( x )不在 F()的范围或域内的情况下,则函数 G() 应该作为覆盖, x 将成为 G() g(x)的函数。但在上面的示例中,您会注意到 x 超出了 f() g()的范围。

这是否意味着从未给出输出,因为x是无效输入?

这似乎不太可能是在关键系统中处理的现实例外,因为人们会期望“ g()⊕f()”能够补偿任何输入;但是在最近的一次检查中,这种问题被提供给我,我发现这是一个非常棘手的问题。如果有人能够对此有所了解,那将非常感激;我的书中没有提到任何关于处理这种输入的内容,所有已经教给我的例子都是 x 在至少 g的范围/域内的情况( )

1 个答案:

答案 0 :(得分:0)

事实证明,即使使用g()重写f(),如果输入超出第一个和重写函数的范围;输出是一个错误,因为它从来没有资格进行任何测试。类似地,当我们尝试使用计算器对负数进行分解时。