불등가 단조 부울 함수의 비동형 개수 계산

불등가 단조 부울 함수의 비동형 개수 계산

초록

본 논문은 변수 이름을 바꾸어 얻을 수 없는 단조 부울 함수(이하 MBF)의 개수를 구하는 새로운 전략을 제시한다. 함수들을 ‘프로파일’이라는 특성에 따라 분류하고, 대칭군의 작용을 이용해 중복을 제거함으로써 7변수 경우의 비동형 MBF 수를 490,013,148개로 정확히 계산하였다.

상세 분석

단조 부울 함수는 입력 벡터가 부분 순서 관계를 만족하면 출력도 동일한 순서를 유지하는 특성을 가진다. 이러한 함수들의 전체 개수는 Dedekind 수라 불리며, n이 8을 초과하면 정확한 값이 알려지지 않을 정도로 급격히 증가한다. 그러나 실제 응용에서는 변수들의 순열에 의해 서로 동형인 함수들을 하나로 묶어 고려하는 것이 더 의미 있다. 즉, 대칭군 S_n이 작용하는 집합을 궤도로 나누어 각 궤도(비동형 클래스)의 대표를 세는 것이 목표가 된다. 기존 연구에서는 n≤6까지의 비동형 MBF 개수만이 알려졌으며, n=7에서는 계산 복잡도가 폭발적으로 증가한다는 점이 큰 장애물이었다.

저자들은 ‘프로파일’이라는 개념을 도입한다. 프로파일은 함수의 최소 진실점(minimal true points) 혹은 최대 거짓점(maximal false points)의 분포를 나타내는 벡터로, 같은 프로파일을 가진 함수들은 구조적으로 유사하고 동일한 대칭군의 고정점 집합을 공유한다. 따라서 전체 함수 집합을 프로파일별로 분할하면 각 부분에 대해 Burnside의 보조정리를 적용해 고정점 수를 효율적으로 계산할 수 있다. 구체적으로, 각 프로파일에 대해 S_n의 원소(순열)들이 함수를 고정시키는 경우의 수를 구하고, 이를 평균내어 해당 프로파일이 기여하는 비동형 클래스 수를 얻는다.

계산 과정에서는 프로파일 생성 단계에서 조합론적 제한조건을 활용해 불필요한 경우를 사전에 차단하고, 고정점 계산에서는 부분 순서 집합(Lattice)의 구조적 특성을 이용해 동적 프로그래밍 방식으로 중복 연산을 최소화한다. 또한, 병렬 처리와 메모이제이션을 결합해 대규모 데이터베이스를 효율적으로 관리하였다. 이러한 최적화 덕분에 7변수 경우의 전체 탐색 공간을 실질적으로 10⁻⁸ 수준으로 축소할 수 있었으며, 최종적으로 490,013,148개의 비동형 MBF가 존재함을 확인하였다. 결과는 기존에 알려진 n≤6까지의 값과 일관성을 보이며, 독립적인 검증 프로그램을 통해 재현 가능성을 확보하였다.