P-NP 문제는 계산 복잡성 이론에서 가장 중요한 미해결 문제 중 하나로, 두 가지 클래스 P와 NP의 관계를 탐구한다. P 클래스는 다항 시간 내에 해결할 수 있는 문제들의 집합이며, 이 문제들은 효율적인 알고리즘을 통해 빠르게 해결할 수 있다. 반면 NP 클래스는 주어진 해답이 맞는지를 다항 시간 내에 검증할 수 있는 문제들의 집합을 의미한다. 즉, NP 문제는 해결하기 어려울 수 있지만, 제시된 해결책이 올바른지를 빠르게 확인할 수 있다.
P-NP 문제는 '모든 NP 문제는 P 문제인가?'라는 질문에 집중한다. 즉, NP 클래스에 속하는 모든 문제가 P 클래스에 속하는지 여부를 묻는 것이다. 만약 P=NP라면, 모든 NP 문제를 효율적으로 해결할 수 있는 알고리즘이 존재한다는 것을 의미하게 된다. 반대로, P≠NP라면, 효율적으로 해결할 수 없는 NP 문제들이 존재하게 된다.
P-NP 문제의 해결 여부는 컴퓨터 과학, 수학, 그리고 관련 기술의 발전에 큰 영향을 미칠 것으로 여겨진다. 이 문제는 2000년 클레이 수학 연구소에 의해 7개의 밀레니엄 문제 중 하나로 지정되었으며, 이를 해결하는 연구자에게 100만 달러의 상금이 수여될 예정이다. P-NP 문제는 복잡성 이론, 알고리즘 디자인, 암호학 등 여러 분야에 걸쳐 깊은 함의를 가지고 있다. 현재까지 P와 NP의 관계에 대한 증명이나 반증은 제시되지 않았으며, 많은 이론가와 연구자들이 이 문제의 해답을 찾기 위해 노력하고 있다.