TY - GEN
T1 - Incremental answer completion in the SLG-WAM
AU - Swift, Terrance
AU - Pinto, Alexandre Miguel
AU - Moniz Pereira, Luís
PY - 2009
Y1 - 2009
N2 - The SLG-WAM of XSB Prolog soundly implements the Well-Founded Semantics (WFS) for logic programs, but in a few pathological cases its engine treats atoms as undefined that are true or false in WFS. The reason for this is that the XSB does not implement the SLG Answer Completion operation in its engine, the SLG-WAM - rather Answer Completion must be performed by post-processing the table. This engine-level omission has not proven significant for applications so far, but the need for Answer Completion is becoming important as XSB is more often used to produce well-founded residues of highly non-stratified programs. However, due to its complexity, care must be taken when adding Answer Completion to an engine. In the worst case, the cost of each Answer Completion operation is proportional to the size of a program P, so that the operation must be invoked as rarely as possible, and when invoked the operation must traverse as small a fragment as possible of P. We examine the complexity of Answer Completion; and then describe its implementation and performance in XSB's SLG-WAM such that the invocations of the operation are restricted, and which is limited in scope to Strongly Connected Components within a tabled evaluation's Subgoal Dependency Graph.
AB - The SLG-WAM of XSB Prolog soundly implements the Well-Founded Semantics (WFS) for logic programs, but in a few pathological cases its engine treats atoms as undefined that are true or false in WFS. The reason for this is that the XSB does not implement the SLG Answer Completion operation in its engine, the SLG-WAM - rather Answer Completion must be performed by post-processing the table. This engine-level omission has not proven significant for applications so far, but the need for Answer Completion is becoming important as XSB is more often used to produce well-founded residues of highly non-stratified programs. However, due to its complexity, care must be taken when adding Answer Completion to an engine. In the worst case, the cost of each Answer Completion operation is proportional to the size of a program P, so that the operation must be invoked as rarely as possible, and when invoked the operation must traverse as small a fragment as possible of P. We examine the complexity of Answer Completion; and then describe its implementation and performance in XSB's SLG-WAM such that the invocations of the operation are restricted, and which is limited in scope to Strongly Connected Components within a tabled evaluation's Subgoal Dependency Graph.
UR - http://www.scopus.com/inward/record.url?scp=69949147238&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=69949147238&partnerID=8YFLogxK
U2 - 10.1007/978-3-642-02846-5_46
DO - 10.1007/978-3-642-02846-5_46
M3 - Conference contribution
AN - SCOPUS:69949147238
SN - 3642028454
SN - 9783642028458
T3 - Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
SP - 519
EP - 524
BT - Logic Programming - 25th International Conference, ICLP 2009, Proceedings
T2 - 25th International Conference on Logic Programming, ICLP 2009
Y2 - 14 July 2009 through 17 July 2009
ER -