https://123dok.net/document/yev14rj4-synthesizing-concurrent-programs-using-answer-set-programming.html