PURPOSE: To back up the development of a program with high efficiency with prolog characteristics maintained by performing the dynamic addition and deletion of clauses even to a prolog program which performs the translation and then the execution.
CONSTITUTION: An execution processor 21 takes an indexing instruction train 202 out of a designated predicate information table 201. The control is shifted as necessary to the instruction trains against the clauses 203-1,..., 203-i,..., 203-n. In case a clause is registered to a predicate during the run of a program, an indexing instruction 202 is canceled to said predicate. The new clause is added to the end of the clause under registration. While a translation processor 22 takes a predicate information table out of the head of a list registered into a table stored in an untranslated predicate register memory 205 and registers the indexing instruction train corresponding to said predicate into a predicate information table 201.