불연속성에서 지정 제한을 평가할 때 제한 기능의 일관되지 않은 동작
Aug 19 2020
다음 표현식을 고려하십시오.
(* In *) expr1 = Hold[Limit[Sign[x], x -> y, Direction -> "FromAbove"] == Sign[y]]
이제 특정 값을 y
다음으로 대체하겠습니다 .
(* In *) expr2 = expr1 /. y -> 0
지금 평가하면 일관성없는 결과가 나타납니다.
(* In *) ReleaseHold[expr1]
(* Out *) True
(* In *) ReleaseHold[expr2]
(* Out *) False
제 생각 expr1
에는 잘못 평가되었습니다. 나는 Limit
함수 y == 0
가이 문제로 이어지는 특별한 경우가 가능하다는 것을 어떻게 든 "잊었다" 고 생각한다 . 이것을 어떻게 피할 수 있습니까? Limit[Sign[x], x -> y, Direction -> "FromAbove"]
올바른 결과로 다음과 같은 결과 를 얻을 것으로 예상합니다 .
(* Out *) Piecewise[{{Sign[y], y != 0}, {1, y == 0}}]
답변
2 Pillsy Aug 19 2020 at 21:25
다음 과 같이에 대한 GenerateConditions옵션 을 사용하려고합니다 Limit
.
limit = Limit[Sign[x], x -> y, GenerateConditions -> True]
(* ConditionalExpression[Sign[y], y != 0] *)
limit /. y -> 0
(* Undefined *)
이것은 많은 상징적 기능과 함께 작동합니다. 제 생각에는 기본적으로 전체적으로 설정되어야 True
하지만 현재 기본값은 Automatic
이며 다른 기능으로 다른 작업을 수행합니다.