2008
DOI: 10.1145/1352582.1352585
|View full text |Cite
|
Sign up to set email alerts
|

Inferring non-suspension conditions for logic programs with dynamic scheduling

Abstract: A logic program consists of a logic component and a control component. The former is a specification in predicate logic whereas the latter defines the order of sub-goal selection. The order of sub-goal selection is often controlled with delay declarations that specify that a sub-goal is to suspend until some condition on its arguments is satisfied. Reasoning about delay declarations is notoriously difficult for the programmer and it is not unusual for a program and a goal to reduce to a state that contains a s… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
5
0

Year Published

2011
2011
2017
2017

Publication Types

Select...
4
1

Relationship

1
4

Authors

Journals

citations
Cited by 6 publications
(5 citation statements)
references
References 48 publications
0
5
0
Order By: Relevance
“…The proof of occur-check freedom is rather ad hoc. It should be added that non-floundering and termination can be determined by means of automatic tools, see Genaim and King (2008) for the former, and e.g. Nguyen et al (2011, and the references therein) for the latter.…”
Section: Discussionmentioning
confidence: 99%
See 1 more Smart Citation
“…The proof of occur-check freedom is rather ad hoc. It should be added that non-floundering and termination can be determined by means of automatic tools, see Genaim and King (2008) for the former, and e.g. Nguyen et al (2011, and the references therein) for the latter.…”
Section: Discussionmentioning
confidence: 99%
“…Non-floundering -proof. Analysis tools, like that of Genaim and King (2008), can be used to demonstrate non-floundering of P 3 , for initial queries of the form (4.9), under a partial selection rule as described above (King 2012). To make the paper self-contained, we present an explicit proof.…”
Section: Avoiding Flounderingmentioning
confidence: 99%
“…The more recent approach of Genaim and King (2008) uses bottom-up analysis, and argues strongly for the practicality of bottom-up methods. A relatively standard bottom-up least fixed-point analysis is used to compute groundness dependencies for successful computed answers of all predicates using the Pos domain (positive Boolean functions).…”
Section: Related Workmentioning
confidence: 99%
“…However, this analysis assumes that a local computation rule is used. Programs such as submaxtree/2 (and examples given in Genaim and King 2008) have cyclic data-flow and do not work with a local computation rule, so the greatest fixed-point computation results in significant loss of precision. Our transformations make no assumptions about the computation rule other than that it is safe with respect to the delay declarations, so (in this respect) it can be more precise.…”
Section: Related Workmentioning
confidence: 99%
“…To demonstrate, notice that if Ys is ground then the execution of vert(Zs,Ys,Xs) grounds Zs, which is sufficient for the earlier goal diag(Xs,Zs,Ys) to be deterministic as well. They achieve this by delaying execution of a goal until a mutual exclusion condition between its clauses is fulfilled and then using suspension inference (Genaim and King, 2008) to infer a determinacy condition for the goals that constitute the body of a clause. This allows them to infer the determinacy condition Xs ∨ Ys for the goal rot(Xs,Ys).…”
Section: Diag([][]_) Diag([(xy)|xs][(yx)|ys][_|ds]) :-Diag(xsmentioning
confidence: 99%