Detta dokument handlar om axiomatisering av framgång och misslyckande i propositionslogisk programmering. Det handlar om det faktiska genomförandet av SLDNF i PROLOG, i motsats till den allmänna icke-deterministiska SLDNF-utvärderingsmetoden. Med tanke på alla propositionsprogram P, en linjär teori LT, definieras (den linjära översättningen av PI och följande resultat bevisas för någon bokstavlig A: sundhet av PROLOG evuhation (om målet A PROLOG-succeeds på P, sedan LT, kli,, A, och om A PROLOG-succeeds på P, sedan LT, I-,~ " Al), och fullständighet av PROLOG utvärdering (om LT, I-,~" A, sedan målet A PROLOG-succeeds på P, och om LT, +, i A', sedan A PROLOG-fails på PI. Här l-, betyder bevisbarhet i linjär logik, och Al är den linjära negationen av A. en INTRODUCTION Detta papper handlar om axiomatisering av framgång och misslyckande i propositionslogiken programmering. Man vill bevisa något som A lyckas iff A är bevisbar, A misslyckas iff negationen av A är bevisbar, där "bevisbar" betyder bevisbar i en viss teori TMP) beroende på det program P som vi överväger. Ett grundläggande val måste göras: antingen (i) vi bestämmer-som i de flesta av litteraturen (se [ll] för en allmän referens)-att axiomatisera den allmänna SLDNF-metoden (eller en variant av den, som till exempel algoritmen studeras 116]), eller (ii) vi beslutar att behandla den implementerade versionen av SLDNF, dvs.. PROLOG. Vad är det?
I REF ges en översättning från ett propositionsprologprogram P till en linjär logikteori LTp, och översättningens sundhet och fullständighet bevisas: målet A lyckas under Prologutvärderingen iff LTp I"tin A, och A misslyckas iff LTp ~-Iin A • 9
A linear axiomatization of negation as failure
{'venue': 'J. Log. Program.', 'journal': 'J. Log. Program.', 'mag_field_of_study': ['Mathematics', 'Computer Science']}