APL의 불리언 스캔, 3개면 충분하다

Symmetries in Boolean Scan

APL은 수많은 불리언 프리미티브를 제공하지만, 각각을 최적화하는 것은 구현자에게 큰 부담이다. 이 글은 스캔의 합성 규칙을 분석해 논리 부정을 전후 처리로 적용하면 서로 다른 스캔을 유도할 수 있음을 보인다. 그 결과 ∧, <, ≠ 세 프리미티브만 빠르게 구현하면 나머지는 대칭성으로 파생 가능하다.

∧, <, ≠ 집합이 모든 열을 적어도 한 번씩 커버하므로, 이들을 빠르게 구현하면 나머지는 대칭성을 적용해 충분히 좋은 구현을 얻을 수 있다.

이 날의 다른 글

2026-10-16