3

In the logic programming community, I have heard many people talk about "committed choice logic programming language", but I am not very clear about its definition. I searched the internet, but no formal answer was found (It seems related to concurrent logic programming?).

Does the "committed-choice logic programming language" just mean "pure logic programming language" plus some impure operators, e.g. !, *->, once in Prolog?

Why is it called "committed-choice"?

Thanks.

chansey
  • 1,266
  • 9
  • 20

1 Answers1

0

Committed-choice logic programming is an approach to concurrent logic programming. It partitions conjunctions of clauses on the right side of the unifier into guards and non-guards. Any particular clause can be explored concurrently, but once any of the guard clauses has been satisfied, only it continues, with the others cancelled.

https://en.wikipedia.org/wiki/Logic_programming -- see the section on concurrent logic programming.

Raels
  • 400
  • 2
  • 8