Priority, Cut, If-Then-Else and Exception Handling in Logic Programming
Keehang Kwon

TL;DR
This paper introduces a high-level approach to express priority operations like default reasoning, if-then-else, and exception handling in logic programming using computability logic and prioritized sequential-disjunctive goal formulas.
Contribution
It proposes a novel goal formulation using computability logic that captures priority, default reasoning, and exception handling in a unified, high-level manner.
Findings
Goals of the form G0 G1 specify task execution with failure handling.
Sequential-disjunctive goals serve as a logic-based equivalent of if-then-else.
The approach unifies priority operations within a formal logical framework.
Abstract
One of the long-standing problems on logic programming is to express {\it priority}-related operations -- default reasoning, if-then-else, cut, exception handling, etc -- in a high-level way. We argue that this problem can be solved by adopting computability logic and prioritized sequential-disjunctive goal formulas of the form where are goals. These goals have the following intended semantics: sequentially the first true goal and execute where . These goals thus allow us to specify a task with the failure-handling (exception handling) routine . This new goal can also be seen as a logic-equivalent of the -- statement in imperative language. We also discuss sequential-conjunction clauses which are {\it dual} of sequential-disjunctive goals.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsLogic, Reasoning, and Knowledge · Logic, programming, and type systems · Formal Methods in Verification
