In this thesis, a model for parallel prolog inference system is proposed in which the parallelism is realized by pipeline processing for the solutions. Moreover, to enhance the AND parallelism, the ordering of all subgoals in a clause is determined in run time or in compile time, using the producer and consumer relationships among subgoals sharing common variables. The OR parallelism is not applied to this model because of the communication complexity.
This model is applied to multiprocessor system. In this system, a processor has a local processor list and this processor searches this list for a process which is ready for execution. The process is ready for execution when the producers of its consumed variables are done.
본 논문에서는 논리 언어인 프롤로그를 병렬로 수행하는 모델을 제안하였다. 프롤로그는 OR parallelism 과 AND parallelism을 실현함으로써 수행되며, 특히 AND parallelism은 제안된 모델의 중요한 대상이다.
본 모델은 subgoal들 사이의 종속 관계를 조사하여 그들의 순서도를 찾고, 그 순서도를 이용하여 효율적인 AND parallelism을 실현하였다. 또한 이 순서도를 컴파일 시에도 찾게 함으로써 수행 시의 부담을 줄였다.
이 모델의 장점을 최대화할 수 있는 다중처리시스템을 예시하고 본 모델을 그 시스템에 적용시킴으로써, 본 모델이 실제적인 다중처리기의 구현의 이론적인 근거가 됨을 보여 주었다.