At the risk of futilely not answering the question, there are reasons why this material is difficult to find.
The connection between the choice and “can actually solve my specific problem in a certain time, I’m ready to wait,” is not so strong. So often, examples, test suites, and experimental results are the best indicator (and therefore presented).
In addition, most solvers perform heuristic rewriting and task manipulation before attempting to solve. Thus, the classical, syntactic ways of expressing defined fragments are not always applicable, since other problems can be rewritten as decibel (I hope not the other way around, but I could not promise that this would never happen!).
Finally, many solvers use heuristic half-solution procedures that work well, but are difficult to describe in something more formal than code. Thus, there are things that may not appear in any known identifiable fragment, but for which answers can be found.
source share