R^3에 f(x, y, z) = 0으로 정의된 도형을 xy평면에 정사영 시키면

V = { (x, y) | ∃z, f(x, y, z) = 0 }가 나오지
그런데 이걸 z를 찾아가면서 구해야 한다는건 그렇게 마음에 드는 표현은 아님
그래서 도형 x^2+y^2+z^2 =1 을 xy평면에 정사영한걸 한번 구해보면 x^2+y^2≤1 으로 구해짐

xz=1을 정사영해보면 이건 x≠0으로 구해지고
이런 식으로 정사영된 도형의 식을 z 없이 구했을 때 보통은 부등호가 등장하는게 필수불가결함

그래서 처음부터 부등호로 시작하는게 semialgebraic set임
Real algebraic geometry에서는 f_i=0, g_j>0들로 정의된 도형들 유한개의 합집합으로 표현되는걸 semialgebraic set으로 정의하는데

f≥0은 f>0과 f=0으로 각각 구해서 합집합으로 구하고, g≠0는 g^2>0으로 넣을 수 있음
그리고 가장 먼저 확인하는게 semialgebraic set의 정사영이 semialgebraic set이라는 것임
증명은 Tarski-Seidenberg Principle을 통해서 보이는데

간단히 말하면 z가 존재하는 것과 동치가 되는 조건을 부등식 또는 등식으로 찾을 수 있다는걸 말함
예를 들어 x^2+y^2+z^2-1=0, xz-1/3>0으로 정의된 도형을 생각하면 각각을 z에 대해 내림차순으로 정리해서

f_1(z)=xz -1/3 >0
f_2(z)=z^2 + (x^2+y^2-1) =0

이때

f_2'=2z나 f_2를 f_1로 나눈 나머지 x^2+y^2-1+ 1/(9x^2)에 x^2를 곱해서

g_1=x^4+x^2y^2-x^2+1/9

이런 정보들을 가지고 적절한 부호 찾기를 통해 정사영된 도형 V의 식을 계산할 수 있음
V : x^4+x^2y^2-x^2+1/9<0

실제 계산은 안해보는걸 추천함

아니면 알고리즘 코드 찾아서 하거나