Summary
This paper aims at improving reasoning with large language models (LLMs) by prompting them in a way that they parse the problem into a language that is understandable by a SAT solver, and then employ an off-the-shelf SAT solver to solve the problem. Empirical results on multiple datasets show the benefit of the proposed approach.
Strengths
* The idea of obviating the need for planning by employing a SAT solver is neat.
* Empirical results are strong.
* The approach works on various tasks/datasets.
* The analysis in Table 5 is quite interesting.
Weaknesses
* I believe the benchmarks used in this work may slightly overestimate the performance of the proposed model and the approach may not work as well on more realistic use cases (see the limitations section for more detail)
* It is not clear to me how some bodies of work can fit within the parse-plan-execute framework described on Page 4. Could you comment on how the approaches such as [1, 2] that use LLMs as a tool within a reasoning algorithm can be described in this framework? How about decomposition-based approaches such as [3, 4]?
* [minor] The descriptions in Section 3 and, to some extent, Section 2 could be significantly shortened and some experimental details could be moved to the supplementary (e.g., decoding strategy, temperature, etc.). This makes room for a more elaborate description of different categories of related work (as opposed to putting everything into one category) and for moving some example failures from the appendix to the main text.
[1] LAMBADA: Backward Chaining for Automated Reasoning in Natural Language
[2] Selection-inference: Exploiting large language models for interpretable logical reasoning
[3] Decomposed prompting: A modular approach for solving complex tasks
[4] Least-to-most prompting enables complex reasoning in large language mod
Questions
* Could you comment on the applicability of the approach on more realistic use cases (see limitations section for detail)?
* It has been shown in [1] that in the case of logical reasoning, dealing with “unknown” examples is difficult for CoT. How does SatLM deal with unknowns (e.g., for the ProofWriter dataset)? Could the “selective prediction” analysis be extended to deal with “unknown” labels? e.g., the UNSAT class.
* Any intuition why SatLM works sub-par to ProgLM on the GSM dataset, but significantly outperforms it on the GSM-SYS subset?
Rating
7: Accept: Technically solid paper, with high impact on at least one sub-area, or moderate-to-high impact on more than one areas, with good-to-excellent evaluation, resources, reproducibility, and no unaddressed ethical considerations.
Confidence
4: You are confident in your assessment, but not absolutely certain. It is unlikely, but not impossible, that you did not understand some parts of the submission or that you are unfamiliar with some pieces of related work.
Limitations
Many of the current LLM reasoning datasets (including some of the benchmarks in this work) have been created by first generating a puzzle in a formal language and then turning it into text either using templates or using human annotators. Therefore, the performance of approaches that translate back to a formal language (including the current work) may be overestimated on these benchmarks. Could the authors comment on the applicability of their approach to more realistic applications in the following two cases as examples:
1- Consider a logical reasoning puzzle described below:
Fiona assassinated the mayor. If somebody killed the mayor, they must go to prison. Should Fiona go to prison?
My guess is that if you translate to a formal language, you will get something like this:
assassinated(Fiona, mayor)
killed(X, mayor) -> go(X, prison)
go(Fiona, prison)?
which makes the solver not be able to produce the correct answer.
2- Consider the mathematical puzzle below:
Fiona has 10 apples, 15 dragon fruits, and 11 coconuts. How many tropical fruits does Fiona have?