On Feasibility of Declarative Diagnosis
- URL: http://arxiv.org/abs/2308.15867v1
- Date: Wed, 30 Aug 2023 08:56:19 GMT
- Title: On Feasibility of Declarative Diagnosis
- Authors: W{\l}odzimierz Drabent
- Abstract summary: We argue that useful ways of declarative diagnosis of logic programs exist, and should be usable in actual programming.
This paper discusses their possibly main weaknesses and shows how to overcome them.
- Score: 0.0
- License: http://arxiv.org/licenses/nonexclusive-distrib/1.0/
- Abstract: The programming language Prolog makes declarative programming possible, at
least to a substantial extent. Programs may be written and reasoned about in
terms of their declarative semantics. All the advantages of declarative
programming are however lost when it comes to program debugging. This is
because the Prolog debugger is based solely on the operational semantics.
Declarative methods of diagnosis (i.e. locating errors in programs) exist, but
are neglected. This paper discusses their possibly main weaknesses and shows
how to overcome them. We argue that useful ways of declarative diagnosis of
logic programs exist, and should be usable in actual programming.
Related papers
- Combining Logic with Large Language Models for Automatic Debugging and Repair of ASP Programs [1.0650780147044159]
FormHe is a tool that combines logic-based techniques and Large Language Models to identify and correct issues in Answer Set Programming submissions.
We show that FormHe accurately detects faults in 94% of cases and successfully repairs 58% of incorrect submissions.
arXiv Detail & Related papers (2024-10-28T12:30:48Z) - NExT: Teaching Large Language Models to Reason about Code Execution [50.93581376646064]
Large language models (LLMs) of code are typically trained on the surface textual form of programs.
We propose NExT, a method to teach LLMs to inspect the execution traces of programs and reason about their run-time behavior.
arXiv Detail & Related papers (2024-04-23T01:46:32Z) - WatChat: Explaining perplexing programs by debugging mental models [33.238462470842386]
We build systems for explanation in two domains: JavaScript type coercion, and the Git version control system.
We show that WatChat's explanations exhibit key features of human-written explanation, unlike those of a state-of-the-art language model.
arXiv Detail & Related papers (2024-03-08T14:10:25Z) - Inferring Non-Failure Conditions for Declarative Programs [0.0]
Unintended failures during a computation are painful but frequent during software development.
Programming failures, such as calling a partially defined operation with unintended arguments, are often not caught due to the assumption that the software is correct.
This paper presents an approach to verify such assumptions.
arXiv Detail & Related papers (2024-02-20T12:25:36Z) - Weakly Supervised Semantic Parsing with Execution-based Spurious Program
Filtering [19.96076749160955]
We propose a domain-agnostic filtering mechanism based on program execution results.
We run a majority vote on these representations to identify and filter out programs with significantly different semantics from the other programs.
arXiv Detail & Related papers (2023-11-02T11:45:40Z) - Natural Language Embedded Programs for Hybrid Language Symbolic Reasoning [84.12154024070024]
We propose natural language embedded programs (NLEP) as a unifying framework for addressing math/symbolic reasoning, natural language understanding, and instruction following tasks.
Our approach prompts a language model to generate full Python programs that define functions over data structures which contain natural language representations of structured knowledge.
A Python interpreter then executes the generated code and prints the output.
arXiv Detail & Related papers (2023-09-19T17:54:21Z) - The Magic of IF: Investigating Causal Reasoning Abilities in Large
Language Models of Code [74.3873029963285]
Causal reasoning, the ability to identify cause-and-effect relationship, is crucial in human thinking.
We show that Code-LLMs with code prompts are significantly better in causal reasoning.
arXiv Detail & Related papers (2023-05-30T17:02:58Z) - Understanding Programs by Exploiting (Fuzzing) Test Cases [26.8259045248779]
We propose to incorporate the relationship between inputs and possible outputs/behaviors into learning, for achieving a deeper semantic understanding of programs.
To obtain inputs that are representative enough to trigger the execution of most part of the code, we resort to fuzz testing and propose fuzz tuning.
The effectiveness of the proposed method is verified on two program understanding tasks including code clone detection and code classification, and it outperforms current state-of-the-arts by large margins.
arXiv Detail & Related papers (2023-05-23T01:51:46Z) - Non-Programmers Can Label Programs Indirectly via Active Examples: A
Case Study with Text-to-SQL [61.950839050383514]
APEL is a framework in which non-programmers select among candidate programs generated by a seed semantic (e.g., Codex)
For each utterance, APEL actively searches for a simple input on which the candidate programs tend to produce different outputs.
It asks the non-programmers only to choose the appropriate output, thus allowing us to infer which program is correct.
arXiv Detail & Related papers (2022-05-25T00:35:12Z) - Natural Language to Code Translation with Execution [82.52142893010563]
Execution result--minimum Bayes risk decoding for program selection.
We show that it improves the few-shot performance of pretrained code models on natural-language-to-code tasks.
arXiv Detail & Related papers (2022-04-25T06:06:08Z) - Enforcing Consistency in Weakly Supervised Semantic Parsing [68.2211621631765]
We explore the use of consistency between the output programs for related inputs to reduce the impact of spurious programs.
We find that a more consistent formalism leads to improved model performance even without consistency-based training.
arXiv Detail & Related papers (2021-07-13T03:48:04Z)
This list is automatically generated from the titles and abstracts of the papers in this site.
This site does not guarantee the quality of this site (including all information) and is not responsible for any consequences.