Uppsägning av logiska program beror kritiskt på urvalsregeln, d.v.s. Den regel som avgör vilken atom som väljs i varje upplösningssteg. I den här artikeln klassificerar vi program (och frågor) enligt de urvalsregler för vilka de avslutas. Detta är en enkät och en enhetlig syn på olika tillvägagångssätt i litteraturen. För varje klass presenterar vi ett tillräckligt, för de flesta klasser även nödvändigt, kriterium för att avgöra att ett program är i den klassen. Vi studerar sex klasser: ett program avslutas starkt om det avslutas för alla urvalsregler; ett program indata avslutas om det avslutar för urvalsregler som endast väljer atomer som är tillräckligt instanterade i sina inmatningspositioner, så att dessa argument inte blir instanterade ytterligare av föreningen; ett program lokal fördröjning avslutas om det avslutar för lokala urvalsregler som endast väljer atomer som begränsas w.r.t. en lämplig nivå kartläggning; ett program vänster-avslutar om det avslutar för den vanliga vänster-till-höger selection regel; ett program-avslutar om det finns en selection regel som det avslutar; slutligen, ett program har avgränsat icke-determinism om det bara har ändligt många vederläggningar. Vi föreslår en semantik-bevarande omvandling från program med avgränsad icke-determinism till starkt avslutande program. Genom att förena olika formalismer och göra lämpliga antaganden kan vi dessutom upprätta en formell hierarki mellan de olika klasserna.
En undersökning som klassificerar logiska program enligt de urvalsregler för vilka de avslutas kan hittas i REF.
Classes of Terminating Logic Programs
{'venue': 'Theory and Practice of Logic Programming, 2(3), 369-418, 2002', 'journal': None, 'mag_field_of_study': ['Mathematics', 'Computer Science']}