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

2019 
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 sequential-disjunctive goal formulas of the form $G_0 \bigtriangledown G_1$ where $G_0, G_1$ are goals. These goals have the following intended semantics: sequentially $choose$ the first true goal $G_i$ and execute $G_i$ where $i (= 0\ {\rm or}\ 1)$. These goals thus allow us to specify a task $G_0$ with the failure-handling (exception handling) routine $G_1$. This new goal can also be seen as a logic-equivalent of the $if$-$then$-$else$ statement in imperative language. We also discuss sequential-conjunction clauses which are {\it dual} of sequential-disjunctive goals.
    • Correction
    • Source
    • Cite
    • Save
    • Machine Reading By IdeaReader
    6
    References
    0
    Citations
    NaN
    KQI
    []