If-Then-Else and Exception Handling in Logic Programming

2016 
One of the long-standing problems on logic programming is to express exception handling 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
    []