관계식이 항상 충족되도록 매개 변수를 구합니다.

Nov 26 2020

여러 변수로 매개 변수화 된 함수가 있다고 가정 해 보겠습니다. 간단한 예로서$$F(x,y) = ax^2 +by^2-cxy+1$$ 매개 변수에 대한 일부 값 세트 (정말 중요하지 않음)를 찾고 싶습니다. $$ F(x,y)>0$$도메인의 모든 지점을 유지합니다. 따라서 (1,1,1)과 같이 반환되는 값을 원합니다. 가능한 모든 값이 필요하지는 않습니다. 관계가 유지되는 하나의 예일뿐입니다.

Mathematica에이를 수행 할 수있는 함수가 있습니까? 내가 작동해야하는 실제 기능은 훨씬 더 복잡하고 매개 변수가 몇 개 더 있지만 간단하게 수행 할 수 있습니까?

나는 알고 SolveAlways있지만 평등 대신 관계를 적용 할 때 그것을 좋아하지 않습니다.

도움을 주셔서 감사합니다!

답변

8 user64494 Nov 26 2020 at 23:53

당신은 무엇을 선호합니까:

Resolve[ForAll[{x, y}, a*x^2 + b*y^2 - c*x*y + 1 > 0], Reals]
(*(a == 0 && b >= 0 && c == 0) || (a >= 0 && b >= 0 && c == 0) || (a > 0 && 4 a b - c^2 >= 0*)

또는

FindInstance[  Resolve[ForAll[{x, y}, a*x^2 + b*y^2 - c*x*y + 1 > 0],Reals],{a, b,c}, Reals,3]
(*{{a->96,b->12,c->0},{a->0,b->275,c->0},{a->0,b->113,c->0}}*)

?

다음에, Resolve[ForAll[{x, y}, a*x^2 + b*y^2 > 0 && a < 0 && b < 0], Reals]결과는 FalseFindInstance[ Resolve[ForAll[{x, y}, a*x^2 + b*y^2 > 0 && a < 0 && b < 0], Reals], {a, b}, Reals]생성 {}. 이 출력은 해결책이 없다고 말합니다.

6 MichaelE2 Nov 27 2020 at 01:24

SolveAlways[eqns, vars]문서에 따르면 Solve[ ! Eliminate[! eqns, vars]]. 이것은 Reduce부등식을 처리 할 수있는로 번역 될 수 있습니다 .

red = Reduce[
  Not@Reduce[Not[a*x^2 + b*y^2 - c*x*y + 1 > 0], {a, b, c}, {x, y}], 
  Reals]
(*
  (c < 0 && b > 0 && a >= c^2/(4 b)) || (c == 0 && b >= 0 && 
     a >= 0) || (c > 0 && b > 0 && a >= c^2/(4 b))
*)

이것은 @ user64494의 결과와 동일합니다.

res = Resolve[ForAll[{x, y}, a*x^2 + b*y^2 - c*x*y + 1 > 0], Reals]
Reduce[res \[Implies] red && red \[Implies] res]
(*  True  *)