Cited by 29Logic, Reasoning, and KnowledgeAdvanced Database Systems and QueriesLogic, programming, and type systems

Creating specialised integrity checks through partial evaluation of meta-interpreters

Open access
Leuschel, Michael, De Schreye, Danny·1998·The Journal of Logic Programming

AI snapshot

Written from the paper’s full text.

TL;DR

The paper shows that specialised integrity checks for deductive databases can be generated by partially evaluating a meta-interpreter for incremental integrity checking over update patterns. The resulting specialised update procedures are reported to outperform generic and LST-style integrity checking methods by large factors.

Key findings

  • Specialised update procedures obtained with LEUPEL executed up to 2 orders of magnitude faster than the incremental checker `ic-solve` and up to 3 orders of magnitude faster than the non-incremental `solve`; in the comprehensive study for 238 facts, speedups ranged from 99 to 918 over `solve`, 89 to 324 over `ic-solve`, and 18 to 157 over `ic-lst`.
  • Even for 838 facts in Table 7, `ic-leupel` still ran 25 times faster than `ic-lst`; `ic-leupel` also used 43 to 318 times less heap space than `ic-solve`.
  • The LEUPEL-specialised procedures performed between 1.6 and 5 times faster than those obtained by the fully automatic systems MIXTUS and PADDY.
  • The approach is based on an incremental integrity checking theorem: if the database was consistent before an update, only relevant refutations of `← false` need be searched after the update.

Methods

  • Design: specialised integrity checking is written as a logic-programming meta-interpreter using the “mixed” representation, then partially evaluated for update patterns with the LEUPEL system, which specialises ITE-Prolog via annotation, specialisation, and post-processing phases.
  • Data: benchmarks use hierarchical deductive databases, including Example 6.1 and a more sophisticated database adapted from [84]; the first experiments used 400 updates and fact databases of 108 and 216 facts, while later tables report 100 updates and databases ranging from 138 to 838 facts.
  • Analysis: the paper compares `solve`, `ic-solve`, `ic-leupel`, `ic-leupel-`, `ic-mixtus`, `ic-paddy`, and `ic-lst`, with times measured by Prolog by BIM’s `time/2` on a Sun Sparc Classic under Solaris 2.3.

Limitations

  • Stated: the work is restricted to hierarchical databases, and moving to recursive databases is “far from obvious”; the implementation uses a non-declarative `verify` construct via if-then-else, and LEUPEL’s annotation phase is not automatic and must be performed by hand.
  • Stated: the treatment of negative literals in Definition 2.6 is “not optimal”; specialisation times are not included in the benchmark, and the current LEUPEL implementation has a very slow post-processor, displays tracing information, and uses the ground representation, so partial evaluation time could be reduced.
  • Evident: the benchmarks are tuple-oriented rather than set-oriented, and the paper says future work must examine how the technique and experiments carry over to a set-oriented environment; comparisons with `ic-lst` are run on concrete updates rather than update patterns, which the paper explicitly justifies.

Model-written summary. Check it against the paper before relying on it.

Integrity signals

Registry

Crossref · 10.1016/s0743-1066(97)10012-7

Cites

96 of 96 references verified0 citation errors · 0 not checkable

Statistics

Nothing to recompute.

Claims the paper makes

9 of 86 cited sources checked · 5 supported · 1 flagged · accuracy not yet measured

  • Premisecitation
    § 3.2. The ground, non-ground and mixed representations · p. 13

    From an operational point of view, Gallagher's meta-interpreter lifts the ground representation to the non-ground one for resolution.

    “From an operational point of view, this meta-interpreter lifts the ground representation to the non-ground one for resolution”
    Quote in the paperSubstantial claim1 of 2 sources checked
    • cites [29] Gallagher, 1991, A system for specialising logic programs

      Couldn’t be matched to a paper in Crossref, so it can’t be checked.

    • cites [30] Gallagher, 1993, Tutorial on specialisation of logic programs source

      In §6.2.1 (page unavailable), Gallagher describes an interpreter for programs represented as ground terms and says that all three arguments of its demo predicate are ground. The discussion of ground and non-ground representations also says that operations such as unification must be coded explicitly for the ground representation. This is contrary to the claim that the interpreter lifts the representation to a non-ground one for resolution. (LLM, conf=0.83)

      Checked by a reasoning model — may be wrong.

      Experimental — accuracy not yet measured
  • Premisecitation
    § 3.2. The ground, non-ground and mixed representations · p. 12

    The non-ground representation has semantical problems.

    “The non-ground representation also has semantical problems (although they were solved to some extent in [20,66,67]).”
    Quote in the paperNot a substantial claim1 of 3 sources checked
    • cites [20] De Schreye, 1992, A sensible least Herbrand semantics for untyped vanilla metaprogramming source
    • cites [66] Martens, 1995, Two semantics for definite meta-programs, using the non-ground representation
    • cites [67] Martens, 1995, Why untyped non-ground meta-programming is not (much of) a problem, J. Logic Programming source
  • Premisecitation
    § 3.2. The ground, non-ground and mixed representations · p. 13

    It is possible to combine the ground and non-ground representations.

    “Sometimes however, it is possible to combine both approaches.”
    Quote in the paperSubstantial claim1 of 2 sources checked
    • cites [29] Gallagher, 1991, A system for specialising logic programs

      Couldn’t be matched to a paper in Crossref, so it can’t be checked.

    • cites [30] Gallagher, 1993, Tutorial on specialisation of logic programs source

      Section 6.1 describes ground and non-ground representations as two approaches, while Section 6.2 discusses specializing programs that use the ground representation. Neither passage says the representations can be combined; searches for combining or mixing them found no such statement in our copy. Page numbers were not available. (LLM, conf=0.70)

      Experimental — accuracy not yet measured
  • Premisecitation
    § 5.1. Definition of ITE-Prolog · p. 19

    A straightforward denotational semantics can be given to ITE-Prolog.

    “However, the semantics of the if-then-else remains reasonably simple and a straightforward denotational semantics [38], in the style of [4,79], can be given to ITE-Prolog.”
    Quote in the paperNot a substantial claim1 of 3 sources checked
    • cites [38] N.D. Jones, A. Mycroft, Stepwise development of operational and denotational semantics for Prolog, in: Proceedings of the 1984 International Symposium on Logic Programming, Atlantic City, NJ, IEEE Computer Soc. Press, Silver Spring, MD, pp. 289–298.
    • cites [4] Baudinet, 1992, Proving termination of Prolog programs: A semantic approach, J. Logic Programming source

      Sections 2 and 4 develop functional equations that characterize the meaning of Prolog programs, supporting the citation as an example of a semantics for Prolog. But the paper treats pure Prolog and Prolog with cut, not ITE-Prolog; it does not establish that a straightforward denotational semantics can be given to ITE-Prolog. The indexed passages provide no page numbers. (LLM, conf=0.82)

      Experimental — accuracy not yet measured
    • cites [79] Proietti, 1991, Semantics preserving transformation rules for Prolog source
  • Interpretationcitation
    § 5.2. Specialising ITE-Prolog · p. 20

    Partial evaluation of ITE-Prolog can be situated somewhere between partial deduction of pure logic programs and partial evaluation of full Prolog.

    “In summary, partial evaluation of ITE-Prolog, can be situated somewhere between partial deduction of pure logic programs (see [60,31,10,69,68] and systems like sP [30,29], sAGE [34,33] or more recently ECCE [50,51,57]) and partial evaluation of full Prolog (e.g. MIXTUs [83,82] or PADDY [76–78]).”
    Quote in the paperNot a substantial claim3 of 10 sources checked
    • cites [60] Lloyd, 1991, Partial evaluation in logic programming, J. Logic Programming source
    • cites [31] Gallagher, 1991, The derivation of an algorithm for program specialisation, New Gener. Comput. source
    • cites [10] Bruynooghe, 1992, A general criterion for avoiding infinite unfolding during partial deduction, New Gener. Comput. source
    • cites [69] Martens, 1994, Sound and complete partial deduction with unfolding based on well-founded measures, Theoret. Comput. Sci. source
    • cites [68] Martens, 1996, Automatic finite unfolding using well-founded measures, J. Logic Programming source
    • cites [83] Sahlin, 1993, Mixtus: An automatic partial evaluator for full Prolog, New Gener. Comput. source
    • cites [82] Sahlin, 1991, An Automatic Partial Evaluator for Full Prolog source
    • cites [76] Prestwich, 1992, The PADDY partial deduction system

      Couldn’t be matched to a paper in Crossref, so it can’t be checked.

    • cites [77] Prestwich, 1992, An unfold rule for full Prolog source
    • cites [78] Prestwich, 1993, Online partial deduction of large programs source
  • Classified as probably not a substantial claim. 65
  • May combine two claims. 32
  • The quote only partly states this claim. 2
  • Probably not a substantial claim: may not pass S3 (load-bearing).

    Premisecitation
    § 3.2. The ground, non-ground and mixed representations · p. 13

    Gallagher presented a declarative meta-interpreter for the ground representation in [29,30].

    “This was first exemplified by Gallagher in [29,30], where a (declarative) meta-interpreter for the ground representation is presented.”
    Quote in the paperNot a substantial claim1 of 2 sources checked
    • cites [29] Gallagher, 1991, A system for specialising logic programs

      Couldn’t be matched to a paper in Crossref, so it can’t be checked.

    • cites [30] Gallagher, 1993, Tutorial on specialisation of logic programs source
  • Probably not a substantial claim: may not pass S3 (load-bearing).

    Premisecitation
    § 5.2. Specialising ITE-Prolog · p. 20

    In the context of unfold/fold transformations of pure logic programs, preservation of the order of solutions, as well as left-termination, is handled in [79,7].

    “In the context of unfold/fold transformations of pure logic programs, preservation of the order of solutions, as well as left-termination, is handled, e.g., in [79,7].”
    Quote in the paperNot a substantial claim1 of 2 sources checked
    • cites [79] Proietti, 1991, Semantics preserving transformation rules for Prolog source
    • cites [7] Bossi, 1995, Transformation of left terminating programs: The reordering problem source

      The Abstract and Theorem 12 (§3.1) show that this paper handles preservation of left-termination in unfold/fold transformations of definite logic programs. Remark 13 says the initial and final programs have the same computed-answer substitutions, but does not establish that solutions retain their order. The discussion of prior work credits preservation of the *sequence* of answer substitutions to Proietti and Pettorossi, not to this paper's transformation system. (LLM, conf=0.87)

      Experimental — accuracy not yet measured
  • Probably not a substantial claim: may not pass S3 (load-bearing), S4 (based).

    Findingnone given
    § 2. Deductive databases and integrity checking · p. 8

    Checking the simplified constraint in Example 2.4 is much more efficient than entirely rechecking the unsimplified integrity constraints.

    “Checking this simplified constraint is of course much more efficient than entirely rechecking the unsimplified integrity constraints of Example 2.4.”
    Quote in the paperNot a substantial claim
  • Classified as probably not a substantial claim.

    Findingnone given
    § 2. Deductive databases and integrity checking · p. 11

    Definition 2.8 of relevant derivations does not use Θ to instantiate intermediate goals.

    “The Definition 2.8 of relevant derivations does not use Θ to instantiate intermediate goals.”
    Quote in the paperSubstantial claim
  • Probably not a substantial claim: may not pass S3 (load-bearing), S4 (based).

    Findingnone given
    § 3.1. Specialised update procedures · p. 11

    The derivation in Fig. 1 leading to ← parent(X, Y), parent(Y, X) has already been pruned at specialisation time.

    “For instance, the derivation in Fig. 1 leading to ← parent(X, Y), parent(Y, X) has already been pruned at specialisation time.”
    Quote in the paperNot a substantial claim
  • Classified as probably not a substantial claim. May combine two claims.

    Findingnone given
    § 2. Deductive databases and integrity checking · p. 7

    Definition 2.3 does not reference the facts in Db= at all; only clauses with at least one literal in the body are used.

    “In fact, Definition 2.3 does not reference the facts in Db= at all (only clauses with at least one literal in the body are used).”
    Quote in the paperSubstantial claim
  • Probably not a substantial claim: may not pass S3 (load-bearing), S4 (based).

    Findingnone given
    § 4. Implementing specialised integrity checking · p. 16

    A naive top-down implementation of the rules of Definition 2.3 terminates for hierarchical databases.

    “Such a (naive) top-down implementation terminates for hierarchical databases”
    Quote in the paperNot a substantial claim
  • May combine two claims.

    Findingreasoning
    § 4. Implementing specialised integrity checking · p. 17

    For Example 4.1, both verify(potentially_added('U', false)) and verify(potentially_added('U', father(X, Y))) will succeed just once with the empty computed answer and no backtracking is required, as no instantiations are made.

    “For instance, for Example 4.1 above, both”
    • Also stated in: § 4. Implementing specialised integrity checking · p. 17 · plain
      “will succeed just once with the empty computed answer and no backtracking is required, as no instantiations are made.”
    Quote in the paperSubstantial claim
  • Probably not a substantial claim: may not pass S3 (load-bearing). The quote only partly states this claim.

    Findingreasoning
    § 4. Implementing specialised integrity checking · p. 16

    In the context of the non-ground or the mixed representation, the predicate for pos(U) and neg(U) will instantiate the non-ground expressions under consideration.

    “Also, in the context of the non-ground or the mixed representation, this predicate will instantiate the (non-ground) expressions under consideration.”
    Quote in the paperNot a substantial claim
  • May combine two claims.

    Findingown data
    § 3.2. The ground, non-ground and mixed representations · p. 14

    The query make_non_ground(struct(man, [struct(C, [ ])]), X) can be executed and yields the computed answer {X /struct(man, [struct(C, [ ])]) }.

    “One can even execute”
    Quote in the paperNot a substantial claim
  • May combine two claims.

    Findingnone given
    § 4. Implementing specialised integrity checking · p. 17

    The top-down implementation succeeds 3 times for the query ← potentially_added('U', false) and twice for the query ← potentially_added('U', father(X, Y)), with computed answers {X/a} and {X/a, Y/b}.

    “top-down implementation will succeed 3 times for the query”
    • Also stated in: § 4. Implementing specialised integrity checking · p. 17 · plain
      “and twice for the query”
    • Also stated in: § 4. Implementing specialised integrity checking · p. 17 · plain
      “with computed answers {X/a} and {X/a, Y/b}.”
    Quote in the paperNot a substantial claim
  • Classified as probably not a substantial claim.

    Findingreasoning
    § 5.1. Definition of ITE-Prolog · p. 19

    All we have done is change the order of the computed answers for the predicate p/1.

    “All we have done is change the order of the computed answers for the predicate p/1.”
    Quote in the paperSubstantial claim
  • May combine two claims.

    Findingreasoning
    § 5.1. Definition of ITE-Prolog · p. 19

    Using the Prolog computation and search rules, the query ← q(X) will fail for program P1, whereas it will succeed for P2.

    “Using the Prolog computation and search rules, the query ← q(X) will fail for program P}, whereas it will succeed for P2.”
    Quote in the paperSubstantial claim
  • Probably not a substantial claim: may not pass S3 (load-bearing).

    Findingown data
    § 3.2. The ground, non-ground and mixed representations · p. 14

    The query make_non_ground(struct(f, [var(1), var(2), var(1)]), X) succeeds with a computed answer.

    “For instance, the query”
    • Also stated in: § 3.2. The ground, non-ground and mixed representations · p. 14 · plain
      “succeeds with a computed answer similar to”
    Quote in the paperNot a substantial claim
  • Probably not a substantial claim: may not pass S3 (load-bearing).

    Findingnone given
    § 3.2. The ground, non-ground and mixed representations · p. 14

    The goal make_non_ground(struct(man, [C]), X) has an infinite number of computed answers.

    “(However, the goal”
    Quote in the paperNot a substantial claim
  • Probably not a substantial claim: may not pass S2 (checkable), S4 (based).

    Findingnone given
    § 4. Implementing specialised integrity checking · p. 16

    A naive top-down implementation of the rules of Definition 2.3 is quite easy to partially evaluate.

    “is quite easy to partially evaluate”
    Quote in the paperNot a substantial claim
  • May combine two claims.

    Findingreasoning
    § 5.2. Specialising ITE-Prolog · p. 20

    Unfolding q(X) in the program P5 with the if-then-else poses no problems and leads to a correct specialisation.

    “Unfolding q(X) in the program P5 with the if-then-else poses no problems and leads to a correct specialisation.”
    Quote in the paperNot a substantial claim
  • Classified as probably not a substantial claim. May combine two claims.

    Findingnone given
    § 6.2. Comparison with other partial evaluators · p. 27

    The current implementation of LEUPEL has a very slow post-processor, displays tracing information and uses the ground representation.

    “The current implementation of LEUPEL has a very slow post-processor, displays tracing information and uses the ground representation.”
    Quote in the paperSubstantial claim
  • Probably not a substantial claim: may not pass S3 (load-bearing).

    Findingnone given
    § 5.3.1. Safe left-propagation of bindings · p. 22

    The LEUPEL partial evaluator contains a post-processing phase which performs conservative but safe left-propagation of bindings, common to all alternatives.

    “The LEUPEL partial evaluator contains a post-processing phase which performs conservative but safe left-propagation of bindings, common to all alternatives (like X = A above).”
    Quote in the paperNot a substantial claim
  • May combine two claims.

    Findingcitation
    § 6.1. An example: Comparison with LST · p. 25

    Running LST on a generic update allowed the deduction that the second integrity constraint cannot be violated by the update, while the other integrity constraints remain unchanged.

    “So, by running LST on a generic update we were just able to deduce that the second integrity constraint cannot be violated by the update – the other integrity constraints remain unchanged.”
    Quote in the paperSubstantial claim0 of 1 sources checked
    • cites [61] Lloyd, 1987, Integrity checking in stratified databases, J. Logic Programming source
  • May combine two claims.

    Findingreasoning
    § 6.1. An example: Comparison with LST · p. 23

    If a fact matching parent(a, Y) exists in the database, evaluating the second simplified integrity constraint leads to the incomplete SLDNF-tree in Fig. 8 and to evaluation of the goal ← woman(a), ¬married_woman(a).

    “Suppose that some fact matching parent(a, Y) exists in the database. Evaluating the second simplified integrity constraints above, then leads to the incomplete SLDNF-tree depicted in Fig. 8 and subsequently to the evaluation of the goal:”
    Quote in the paperSubstantial claim
  • Classified as probably not a substantial claim.

    Findingreasoning
    § 5.3.1. Safe left-propagation of bindings · p. 21

    The transformed clause will do so much more efficiently.

    “but will do so much more efficiently.”
    Quote in the paperSubstantial claim
    • The authors state this as an assumption: The computed answers of parent/2 are always grounding substitutions.
  • Probably not a substantial claim: may not pass S3 (load-bearing).

    Findingreasoning
    § 5.3.1. Safe left-propagation of bindings · p. 22

    This guarantees that no additional choice points are generated.

    “This guarantees that no additional choice points are generated”
    Quote in the paperNot a substantial claim
  • Probably not a substantial claim: may not pass S3 (load-bearing).

    Findingnone given
    § 5.3.2. Control of unfolding · p. 22

    The annotation phase of LEUPEL is not yet automatic and must be performed by hand.

    “The annotation phase of LEUPEL is not yet automatic and must be performed by hand.”
    Quote in the paperNot a substantial claim
  • May combine two claims.

    Findingown data
    § 6.2. Comparison with other partial evaluators · p. 27

    The specialised update procedures execute up to 2 orders of magnitude faster than the intelligent incremental integrity checker ic-solve and up to 3 orders of magnitude faster than the non-incremental solve.

    “The specialised update procedures execute up to 2 orders of magnitude faster than the intelligent incremental integrity checker ic-solve and up to 3 orders of magnitude faster than the non-incremental solve.”
    Quote in the paperSubstantial claim
  • Probably not a substantial claim: may not pass S3 (load-bearing).

    Findingown data
    § 6.2. Comparison with other partial evaluators · p. 27

    According to the authors' experience, specialising the solve meta-interpreter of Fig. 5 usually yields speedups reaching at most 1 order of magnitude.

    “Note that, according to our experience, specialising the solve meta-interpreter of Fig. 5 usually yields speedups reaching at most 1 order of magnitude.”
    Quote in the paperNot a substantial claim
  • Probably not a substantial claim: may not pass S3 (load-bearing), S4 (based).

    Findingnone given
    § 6.2. Comparison with other partial evaluators · p. 27

    The safe left-propagation of bindings described in Section 5.3.1 has a definite, beneficial effect on the efficiency of the specialised update procedures.

    “Finally, note that the safe left-propagation of bindings described in Section 5.3.1 has a definite, beneficial effect on the efficiency of the specialised update procedures.”
    Quote in the paperNot a substantial claim
  • Probably not a substantial claim: may not pass S3 (load-bearing).

    Findingown data
    § 6.2. Comparison with other partial evaluators · p. 27

    The time needed to obtain the ic-leupel specialised update procedure was 78.19 s.

    “The time needed to obtain the ic-leupel specialised update procedure was 78.19 s.”
    Quote in the paperNot a substantial claim
  • Probably not a substantial claim: may not pass S3 (load-bearing).

    Findingnone given
    § 5.3. Some aspects of LEUPEL · p. 21

    LEUPEL includes all the techniques sketched so far in this section.

    “The partial evaluation system LEUPEL, includes all the techniques sketched so far in this section.”
    Quote in the paperNot a substantial claim
  • Classified as probably not a substantial claim.

    Findingreasoning
    § 5.3.1. Safe left-propagation of bindings · p. 21

    The specialised update procedure in Fig. 9 generated for the update Db+ = {man(a) ←}, Db− = ∅ tests directly whether woman() is a fact.

    “Take for instance a look at the specialised update procedure in Fig. 9 (to be presented later in Section 6) and generated for the update Db+ = {man(a) ←}, Db− = ∅. This update procedure tests directly whether woman() is a fact”
    Quote in the paperSubstantial claim
  • May combine two claims.

    Findingreasoning
    § 6.1. An example: Comparison with LST · p. 23

    The goal ← woman(a), ¬married_woman(a) is not potentially added and the derivation leading to it is not incremental.

    “This goal is not potentially added and the derivation leading to the goal is not incremental.”
    Quote in the paperSubstantial claim
  • Probably not a substantial claim: may not pass S3 (load-bearing).

    Findingreasoning
    § 5.3.1. Safe left-propagation of bindings · p. 21

    In the example, the binding X = A can be left-propagated.

    “In that case the binding X = A can be left-propagated in the following way:”
    Quote in the paperNot a substantial claim
    • The authors state this as an assumption: The computed answers of parent/2 are always grounding substitutions.
  • Probably not a substantial claim: may not pass S3 (load-bearing), S4 (based). May combine two claims.

    Findingnone given
    § 7.2. Future directions · p. 33

    For the examples presented in this paper, the update procedures have to be re-generated when the rules or the integrity constraints change, but not when the facts change.

    “For the examples presented in this paper, the update procedures have to be re-generated when the rules or the integrity constraints change (but not when the facts change).”
    Quote in the paperNot a substantial claim
  • Probably not a substantial claim: may not pass S4 (based).

    Findingnone given
    § 7.1. Conclusion and discussion · p. 31

    The verify primitive can be implemented via the if-then-else construct.

    “This verify primitive can be implemented via the if-then-else construct.”
    Quote in the paperNot a substantial claim
  • Probably not a substantial claim: may not pass S3 (load-bearing). May combine two claims.

    Findingown data
    § 6.3. A more comprehensive study · p. 30

    In a small experiment, specialising ic-lst for the update patterns using MixTUs was without much success; speedups were of the order of 10%.

    “Finally, in a small experiment we also tried to specialise ic-lst for the update patterns using MixTUs, but without much success. Speedups were of the order of 10%.”
    Quote in the paperNot a substantial claim
  • Classified as probably not a substantial claim. May combine two claims.

    Findingreasoning
    § 7.1. Conclusion and discussion · p. 31

    The verify construct is used to test whether a given goal, encountered while checking the integrity of a database upon an update, might be influenced by that update; if it is not, the integrity checker stops the derivation of the goal.

    “In essence, the verify construct is used to test whether a given goal, encountered while checking the integrity of a database upon an update, might be influenced by that update. If this is not the case the integrity checker will stop the derivation of the goal.”
    Quote in the paperSubstantial claim
  • Probably not a substantial claim: may not pass S3 (load-bearing). The quote only partly states this claim.

    Findingown data
    § 7.1. Conclusion and discussion · p. 32

    For the simple database in Fig. 7, fully unfolding the integrity constraints gives the listed ten constraints.

    “Example 7.1. Let us try to fully unfold the integrity constraints of the simple database in Fig. 7.”
    Quote in the paperNot a substantial claim
  • Classified as probably not a substantial claim. May combine two claims.

    Premisecitation
    § 2. Deductive databases and integrity checking · p. 11

    The LST method not only removes integrity constraints but also instantiates them, possibly generating several specialised integrity constraints for a single unspecialised one.

    “However, the LST method [61] not only removes integrity constraints but also instantiates them, possibly generating several specialised integrity constraints for a single unspecialised one.”
    Quote in the paperSubstantial claim0 of 1 sources checked
    • cites [61] Lloyd, 1987, Integrity checking in stratified databases, J. Logic Programming source
  • May combine two claims.

    Interpretationreasoning
    § 3.1. Specialised update procedures · p. 11

    After any concrete update which is an instance of the update pattern above, the specialised update procedure remains valid and does not have to be re-generated.

    “For example, after any concrete update which is an instance of the update pattern above, the specialised update procedure remains valid and does not have to be re-generated.”
    Quote in the paperSubstantial claim
  • Probably not a substantial claim: may not pass S4 (based).

    Interpretationnone given
    § 2. Deductive databases and integrity checking · p. 10

    Once a derivation is not relevant, it cannot be extended into a relevant one.

    “Observe that, by definition, once a derivation is not relevant, it cannot be extended into a relevant one.”
    Quote in the paperNot a substantial claim
  • Probably not a substantial claim: may not pass S2 (checkable), S4 (based).

    Interpretationnone given
    § 1.2. Motivation and contribution · p. 4

    For some algorithms, such as LST style integrity checking, it seems unclear how they could be coded so that they become amenable to specialisation.

    “For some algorithms (e.g. LST style integrity checking) it seems unclear how they could be coded so that they become amenable to specialisation.”
    Quote in the paperNot a substantial claim
  • Probably not a substantial claim: may not pass S3 (load-bearing). May combine two claims.

    Premisecitation
    § 3.1. Specialised update procedures · p. 12

    The main concern of [84] is to show why using inconsistency indicators instead of integrity constraints is relevant for efficiency and a good idea in general.

    “(the main concern of [84] is to show why using inconsistency indicators instead of integrity constraints is relevant for efficiency and a good idea in general).”
    Quote in the paperNot a substantial claim0 of 1 sources checked
    • cites [84] Seljée, 1995, A new method for integrity constraint checking in deductive databases, Data Knowledge Eng. source
  • Probably not a substantial claim: may not pass S3 (load-bearing).

    Study design and conductreasoning
    § 2. Deductive databases and integrity checking · p. 8

    An optimal criterion for negative literals, due to its complexity, has not been implemented in the current approach.

    “However an optimal criterion, due to its complexity, has not been implemented in the current approach.”
    Quote in the paperNot a substantial claim
  • Probably not a substantial claim: may not pass S2 (checkable).

    Interpretationreasoning
    § 3.1. Specialised update procedures · p. 11

    All of this can lead to very high efficiency gains.

    “All of this can lead to very high efficiency gains.”
    Quote in the paperNot a substantial claim
  • Probably not a substantial claim: may not pass S3 (load-bearing).

    Premisecitation
    § 3.1. Specialised update procedures · p. 12

    Refs. [90,84] both explicitly address this compilation aspect.

    “Refs. [90,84] both explicitly address this compilation aspect.”
    Quote in the paperNot a substantial claim0 of 2 sources checked
    • cites [90] Wallace, 1991, Compiling integrity checking into update procedures
    • cites [84] Seljée, 1995, A new method for integrity constraint checking in deductive databases, Data Knowledge Eng. source
  • May combine two claims.

    Premisenone given
    § 1.2. Motivation and contribution · p. 3

    Current specialisers are incapable of effectively optimising either the declarative ground representation or the non-declarative non-ground representation for producing instantiations.

    “Current specialisers are incapable of effectively optimising either of them.”
    Quote in the paperNot a substantial claim
  • Probably not a substantial claim: may not pass S4 (based).

    Interpretationnone given
    § 2. Deductive databases and integrity checking · p. 8

    The new integrity checking method can be implemented in a manner more amenable to specialisation than the LST method.

    “This method has the advantage that, as we will see later, it can be implemented in a manner more amenable to specialisation than the LST-method.”
    Quote in the paperNot a substantial claim
  • May combine two claims.

    Premisenone given
    § 3.1. Specialised update procedures · p. 12

    The approaches of [90,84] are more limited in some important respects and both use ad hoc techniques with meta-interpreters and partial deduction.

    “Their approaches are, however, more limited in some important respects and both use ad hoc techniques n sdda e e a a a meta-interpreters and partial deduction”
    Quote in the paperSubstantial claim0 of 2 sources checked
    • cites [90] Wallace, 1991, Compiling integrity checking into update procedures
    • cites [84] Seljée, 1995, A new method for integrity constraint checking in deductive databases, Data Knowledge Eng. source
  • Classified as probably not a substantial claim.

    Interpretationreasoning
    § 3.1. Specialised update procedures · p. 11

    By partial evaluation of this meta-interpreter, one may in principle be able to pre-compile the integrity checking for certain update patterns.

    “Furthermore, by partial evaluation of this meta-interpreter, we may (in principle) be able to pre-compile the integrity checking for certain update patterns.”
    Quote in the paperSubstantial claim
  • Probably not a substantial claim: may not pass S3 (load-bearing), S4 (based).

    Interpretationnone given
    § 3.1. Specialised update procedures · p. 11

    The specialised update procedure will also result in some overhead when evaluating the integrity constraints.

    “But which will also result in some overhead when evaluating the integrity constraints.”
    Quote in the paperNot a substantial claim
  • May combine two claims.

    Interpretationreasoning
    § 3.1. Specialised update procedures · p. 11

    The specialised update procedure checks consistency in a similar manner to the unspecialised meta-interpreter but more efficiently, because the propagation, simplification and evaluation process is already pre-compiled.

    “Given the concrete value for , this procedure will basically check consistency in a similar manner to the unspecialised meta-interpreter, but will do this much more efficiently, because the propagation, simplification and evaluation process is already pre-compiled.”
    Quote in the paperSubstantial claim
  • Probably not a substantial claim: may not pass S3 (load-bearing).

    Interpretationnone given
    § 2. Deductive databases and integrity checking · p. 7

    The main difference with the exposition in [63,61] is that the authors calculate pos(U) and neg(U) in one step instead of in two.

    “The main difference with the exposition in [63,61] is that we calculate pos(U) and neg(U) in one step instead of in two.”
    Quote in the paperNot a substantial claim0 of 2 sources checked
    • cites [63] Lloyd, 1985, A basis for deductive database systems, J. Logic Programming source
    • cites [61] Lloyd, 1987, Integrity checking in stratified databases, J. Logic Programming source
  • Probably not a substantial claim: may not pass S4 (based).

    Interpretationnone given
    § 1.2. Motivation and contribution · p. 4

    All the reengineering only needs to be performed once.

    “Finally note that all this reengineering only needs to be performed once.”
    Quote in the paperNot a substantial claim
  • Probably not a substantial claim: may not pass S3 (load-bearing).

    Premisecitation
    § 5.1. Definition of ITE-Prolog · p. 18

    The following informal Prolog clauses can be used to define the if-then-else.

    “The following informal Prolog clauses can be used to define the if-then-else [80]:”
    Quote in the paperNot a substantial claim0 of 1 sources checked
    • cites [80] 1993

      Couldn’t be matched to a paper in Crossref, so it can’t be checked.

  • Probably not a substantial claim: may not pass S3 (load-bearing).

    Premisecitation
    § 5.2. Specialising ITE-Prolog · p. 20

    The problem of left-propagation of bindings has been solved in various ways in the partial evaluation literature.

    “This problem of left-propagation of bindings has been solved in various ways in the partial evaluation literature [77,76,83,82]”
    Quote in the paperNot a substantial claim0 of 4 sources checked
    • cites [77] Prestwich, 1992, An unfold rule for full Prolog source
    • cites [76] Prestwich, 1992, The PADDY partial deduction system

      Couldn’t be matched to a paper in Crossref, so it can’t be checked.

    • cites [83] Sahlin, 1993, Mixtus: An automatic partial evaluator for full Prolog, New Gener. Comput. source
    • cites [82] Sahlin, 1991, An Automatic Partial Evaluator for Full Prolog source
  • Probably not a substantial claim: may not pass S3 (load-bearing).

    Premisecitation
    § 5.1. Definition of ITE-Prolog · p. 18

    Most uses of the cut can actually be mapped to if-then-else constructs.

    “Most uses of the cut can actually be mapped to if-then-else constructs [74].”
    Quote in the paperNot a substantial claim0 of 1 sources checked
    • cites [74] O'Keefe, 1985, On the treatment of cuts in Prolog source-level tools
  • Probably not a substantial claim: may not pass S3 (load-bearing).

    Interpretationreasoning
    § 5.1. Definition of ITE-Prolog · p. 18

    When the test If succeeds (for the first time) a local cut is executed and execution proceeds with the then part.

    “In other words, when the test If succeeds (for the first time) a local cut is executed and execution proceeds with the then part.”
    Quote in the paperNot a substantial claim
  • May combine two claims.

    Interpretationreasoning
    § 3.2. The ground, non-ground and mixed representations · p. 13

    There is a caveat to using the non-ground representation: either the object program has to be stored explicitly using meta-program clauses - instead of using a term-representation of the object program - or non-logical built-ins like copy/2 have to be used to perform the standardising apart.

    “There is unfortunately another caveat to using the non-ground representation: either the object program has to be stored explicitly using meta-program clauses – instead of using a term-representation of the object program – or non-logical built-ins like copy/2 have to be used to perform the standardising apart.”
    Quote in the paperNot a substantial claim
    • Rests on an assumption: For many applications, the non-ground representation requires the use of extra-logical built-ins (like var/1 or copy/2).
  • Probably not a substantial claim: may not pass S3 (load-bearing).

    Premisecitation
    § 5.2. Specialising ITE-Prolog · p. 20

    The problem of left-propagation of bindings has been overlooked in some contributions.

    “as well as overlooked in some contributions (e.g. [27])”
    Quote in the paperNot a substantial claim0 of 1 sources checked
    • cites [27] Fujita, 1988, A self-applicable partial evaluator and its use in incremental compilation, New Gener. Comput. source
  • Probably not a substantial claim: may not pass S3 (load-bearing).

    Interpretationreasoning
    § 3.2. The ground, non-ground and mixed representations · p. 13

    Using the = ../2 built-in to represent an atom as man(X), X = .[C] requires that the partial evaluator provides non-trivial support for = ../2 to ensure information about X is properly used and propagated.

    “12 A possible way out is to use the = ../2 built-in and represent the atom by man(X), X = .[C]. This requires that the partial evaluator provides non-trivial support for the built-in = ../2 (to ensure for instance that the information about X, provided by X = ..[C], is properly used and propagated).”
    Quote in the paperNot a substantial claim
  • May combine two claims.

    Premisecitation
    § 5.1. Definition of ITE-Prolog · p. 19

    The partial deduction framework of [60] does not guarantee the preservation of the sequence of computed answers; it only preserves the computed answers but not their sequence.

    “This for instance is not guaranteed by the partial deduction framework of [60], which only preserves the computed answers but not their sequence.”
    Quote in the paperSubstantial claim0 of 1 sources checked
    • cites [60] Lloyd, 1991, Partial evaluation in logic programming, J. Logic Programming source
  • May combine two claims.

    Interpretationown data
    § 5.2. Specialising ITE-Prolog · p. 19

    Even without built-ins, left-propagation of bindings can change the order of solutions, which can lead to incorrect transformations for programs containing the if-then-else.

    “But even without built-ins, this left-propagation of bindings can change the order of solutions which, as we have seen above, can lead to incorrect transformations for programs containing the if-then-else.”
    Quote in the paperSubstantial claim
  • Probably not a substantial claim: may not pass S3 (load-bearing).

    Interpretationreasoning
    § 4. Implementing specialised integrity checking · p. 16

    It would be necessary to extend Theorem 2.9 to allow for instantiation.

    “It would also mean that we would have to extend Theorem 2.9 to allow for instantiation”
    Quote in the paperNot a substantial claim0 of 1 sources checked
    • cites Theorem 2.9

      Couldn’t be matched to a paper in Crossref, so it can’t be checked.

  • Probably not a substantial claim: may not pass S4 (based).

    Interpretationnone given
    § 4. Implementing specialised integrity checking · p. 18

    Specialisation of the if-then-else poses much less problems than for instance the full blown cut.

    “Also, as we will see in the next section, specialisation of the if-then-else poses much less problems than for instance the full blown cut.”
    Quote in the paperNot a substantial claim
  • Classified as probably not a substantial claim.

    Interpretationreasoning
    § 4. Implementing specialised integrity checking · p. 17

    It is currently unclear how an implementation of the full LST method could be coded such that it becomes effectively amenable to specialisation.

    “It thus seems currently unclear how an implementation of the full LST method could be coded such that it becomes effectively amenable to specialisation.”
    Quote in the paperSubstantial claim
    • Rests on an assumption: The LST method relies on instantiations of goals.
  • May combine two claims.

    Interpretationreasoning
    § 4. Implementing specialised integrity checking · p. 17

    An implementation of an integrity checking method that relies on instantiations, such as the LST method, would either be hopelessly inefficient or not amenable to effective specialisation using current techniques.

    “An implementation of an integrity checking method which relies on such instantiations, like, e.g., the LST method, would thus either be hopelessly inefficient or not amenable to effective specialisation using current techniques”
    Quote in the paperSubstantial claim
    • Rests on an assumption: The LST method relies on instantiations of goals.
  • May combine two claims.

    Interpretationreasoning
    § 3.2. The ground, non-ground and mixed representations · p. 13

    For our application, the caveat complicates the specialisation task while at the same time leading to a serious efficiency bottleneck.

    “For our application thop pd p a- nn an n np sly complicates the specialisation task while at the same time leading to a serious efficiency bottleneck.”
    Quote in the paperSubstantial claim
  • May combine two claims.

    Interpretationreasoning
    § 4. Implementing specialised integrity checking · p. 17

    verify(Goal) will succeed just once with the empty computed answer and no backtracking is required, as no instantiations are made.

    “will succeed just once with the empty computed answer and no backtracking is required, as no instantiations are made.”
    Quote in the paperNot a substantial claim
  • Probably not a substantial claim: may not pass S3 (load-bearing).

    Premisecitation
    § 5.1. Definition of ITE-Prolog · p. 18

    Operationally, the if-then-else of ITE-Prolog behaves like the corresponding construct in Prolog.

    “Operationally, the if-then-else of ITE-Prolog behaves like the corresponding construct in Prolog [88,73].”
    Quote in the paperNot a substantial claim0 of 2 sources checked
    • cites [88] Sterling, 1986 source
    • cites [73] Nilsson, 1990
  • May combine two claims.

    Interpretationcitation
    § 4. Implementing specialised integrity checking · p. 17

    Performing subsumption tests in an integrity checker that includes instantiation of goals leads either to the use of the ground representation, which has associated problems in efficiency and specialisation, or to the use of non-declarative features, which are difficult to partially evaluate and will probably result in little specialisation given existing techniques.

    “or perform subsumption tests, in turn leading to”
    • Also stated in: § 4. Implementing specialised integrity checking · p. 17 · plain
      “either the use of the ground representation and the currently associated problems in terms of efficiency and specialisation [55,56], o”
    • Also stated in: § 4. Implementing specialised integrity checking · p. 17 · hedged
      “or the use of non-declarative features which are difficult to partially evaluate and will probably result in little specialisation given the existing techniques”
    Quote in the paperSubstantial claim0 of 2 sources checked
    • cites [55] Leuschel, 1995, Obtaining specialised update procedures through partial deduction of the ground representation

      Couldn’t be matched to a paper in Crossref, so it can’t be checked.

    • cites [56] Leuschel, 1995, Partial deduction of the ground representation and its application to integrity checking source
  • May combine two claims.

    Interpretationreasoning
    § 6.1. An example: Comparison with LST · p. 25

    Although the pre-compilation process for the LST generic-update approach will be very fast, the obtained update procedures usually have little practical value.

    “So, although the pre-compilation process for such an approach will be very fast, the obtained update procedures usually have little practical value.”
    Quote in the paperSubstantial claim
  • Probably not a substantial claim: may not pass S3 (load-bearing).

    Premisecitation
    § 5.2. Specialising ITE-Prolog · p. 20

    Residualisation steps remove the left-most atom from the goal and hide it from the left-propagations of bindings.

    “The latter remove the left-most atom from the goal and hide it from the left-propagations of bindings.”
    Quote in the paperNot a substantial claim0 of 1 sources checked
    • cites [48] Leuschel, 1994, Partial evaluation of the “real thing” source
  • Probably not a substantial claim: may not pass S3 (load-bearing), S4 (based).

    Interpretationnone given
    § 6.2. Comparison with other partial evaluators · p. 27

    The speedup over non-incremental solve can be made to grow to almost any figure by using larger databases.

    “The latter speedup can of course be made to grow to almost any figure by using larger databases.”
    Quote in the paperNot a substantial claim
  • Classified as probably not a substantial claim.

    Premisereasoning
    § 5.2. Specialising ITE-Prolog · p. 20

    Sometimes one does not want to select the leftmost atom, for instance because it is a built-in which is not sufficiently instantiated.

    “However, sometimes one does not want to select the leftmost atom, for instance because it is a built-in which is not sufficiently instantiated”
    Quote in the paperSubstantial claim
  • May combine two claims.

    Interpretationreasoning
    § 5.3.2. Control of unfolding · p. 22

    As we are in the context of hierarchical databases and as we can hand annotate the meta-interpreter, a fully satisfactory unfolding can be achieved.

    “However, as we are in the context of hierarchical databases and as we can hand annotate the meta-interpreter, a fully satisfactory unfolding can be achieved.”
    Quote in the paperSubstantial claim
    • Rests on an assumption: Automatically unfolding a meta-interpreter in a satisfactory way is non-trivial and has not been solved in the fully general case.
  • Classified as probably not a substantial claim.

    Premisecitation
    § 5.2. Specialising ITE-Prolog · p. 20

    [48] extends the concept of LD-derivations and LD-trees to LDR-derivations and LDR-trees, which in addition to left-most resolution steps also contain residualisation steps.

    “[48] extends the concept of LD-derivations and LD-trees to LDR-derivations and LDR-trees, which in addition to left-most resolution steps also contain residualisation steps.”
    Quote in the paperSubstantial claim0 of 1 sources checked
    • cites [48] Leuschel, 1994, Partial evaluation of the “real thing” source
  • Probably not a substantial claim: may not pass S3 (load-bearing).

    Interpretationreasoning
    § 6.2. Comparison with other partial evaluators · p. 27

    It is possible to reduce the time needed for partial evaluation by at least one order of magnitude.

    “Therefore, it is certainly possible to reduce the time needed for partial evaluation by at least one order of magnitude.”
    Quote in the paperNot a substantial claim
  • Probably not a substantial claim: may not pass S3 (load-bearing), S4 (based).

    Interpretationnone given
    § 5.2. Specialising ITE-Prolog · p. 20

    A further improvement lies in generating multiple specialisations of a predicate call according to varying freeness information of the arguments.

    “A further improvement lies in generating multiple specialisations of a predicate call according to varying freeness information of the arguments.”
    Quote in the paperNot a substantial claim
  • Probably not a substantial claim: may not pass S3 (load-bearing).

    Interpretationreasoning
    § 5.3.1. Safe left-propagation of bindings · p. 22

    In general this specialised update procedure will be even more efficient.

    “In general this specialised update procedure will be even more efficient.”
    Quote in the paperNot a substantial claim
  • May combine two claims.

    Interpretationreasoning
    § 5.3.1. Safe left-propagation of bindings · p. 21

    Part of the specialised integrity checking is performed by the meta-interpreter and part is performed by the partial evaluator (the instantiations).

    “In a sense, part of the specialised integrity checking is performed by the meta-interpreter and part is performed by the partial evaluator (the instantiations).”
    Quote in the paperSubstantial claim
  • Probably not a substantial claim: may not pass S2 (checkable), S3 (load-bearing).

    Interpretationreasoning
    § 5.3.1. Safe left-propagation of bindings · p. 22

    This indicates that the results in Section 6 can be even further improved.

    “This indicates that the results in Section 6 can be even further improved.”
    Quote in the paperNot a substantial claim
  • Probably not a substantial claim: may not pass S3 (load-bearing).

    Premisecitation
    § 6.3. A more comprehensive study · p. 27

    The LST techniques [61] often perform very well in practice, even for relational or hierarchical databases [22].

    “compare their efficiency with the one of the LST techniques [61], which often performs very well in practice, even for relational or hierarchical databases [22].”
    Quote in the paperNot a substantial claim0 of 2 sources checked
    • cites [61] Lloyd, 1987, Integrity checking in stratified databases, J. Logic Programming source
    • cites [22] H. Decker, Personal communication, January 1997.

      Couldn’t be matched to a paper in Crossref, so it can’t be checked.

  • Probably not a substantial claim: may not pass S3 (load-bearing).

    Premisecitation
    § 5.2. Specialising ITE-Prolog · p. 20

    The method of [48] tries to strictly enforce the Prolog left-to-right selection rule.

    “The method of [48] tries to strictly enforce the Prolog left-to-right selection rule.”
    Quote in the paperNot a substantial claim0 of 1 sources checked
    • cites [48] Leuschel, 1994, Partial evaluation of the “real thing” source
  • Probably not a substantial claim: may not pass S3 (load-bearing).

    Premisecitation
    § 5.2. Specialising ITE-Prolog · p. 20

    [48] uses a freeness and sharing analysis to produce more efficient specialised programs by removing useless bindings as well as useless if-then-else tests.

    “The exact details on how to unfold the if-then-else can be found in [48], where a freeness and sharing analysis are used to produce more efficient specialised programs by removing useless bindings as well as useless if-then-else tests.”
    Quote in the paperNot a substantial claim0 of 1 sources checked
    • cites [48] Leuschel, 1994, Partial evaluation of the “real thing” source
  • Probably not a substantial claim: may not pass S3 (load-bearing), S4 (based).

    Interpretationnone given
    § 5.3.1. Safe left-propagation of bindings · p. 22

    In the context of large databases this is usually not optimal.

    “but in the context of large databases this is usually not optimal.”
    Quote in the paperNot a substantial claim
  • May combine two claims.

    Interpretationreasoning
    § 7.1. Conclusion and discussion · p. 32

    This is the price one has to pay for getting rid of rules: rules capture common computations and avoid that they get repeated, with memorisation only solving this problem for atomic queries.

    “This is the price one has to pay for getting rid of the rules:”
    Quote in the paperSubstantial claim
  • Probably not a substantial claim: may not pass S4 (based).

    Interpretationnone given
    § 7.1. Conclusion and discussion · p. 31

    The mixed representation is much better suited for partial evaluation than the full ground representation.

    “The mixed representation is also much better suited for partial evaluation than the full ground representation.”
    Quote in the paperNot a substantial claim
  • Probably not a substantial claim: may not pass S3 (load-bearing), S4 (based).

    Interpretationnone given
    § Appendix A. The ic-solve meta-interpreter · p. 34

    Updating the facts is of no relevance to the integrity checking phases.

    “Updating the facts – which is of no relevance to the integrity checking phases – occurs via the as sert, retract or reconsult primitives.”
    Quote in the paperNot a substantial claim
  • May combine two claims.

    Interpretationreasoning
    § 7.1. Conclusion and discussion · p. 31

    The paper presents a new integrity checking method which, in the context of hierarchical databases, can be implemented in the mixed representation and is well suited for partial evaluation.

    “The paper therefore presents a new integrity checking method which, in the context of hierarchical databases, can be implemented in the mixed representation and which is well suited for partial evaluation.”
    Quote in the paperSubstantial claim
  • Probably not a substantial claim: may not pass S3 (load-bearing).

    Interpretationcitation
    § 7.1. Conclusion and discussion · p. 33

    Even in the context of hierarchical databases, the comparisons are with respect to the best alternative approaches [22].

    “As such, even in the context of hierarchical databases, our comparisons are with respect to the best alternative approaches [22].”
    Quote in the paperNot a substantial claim0 of 1 sources checked
    • cites [22] H. Decker, Personal communication, January 1997.

      Couldn’t be matched to a paper in Crossref, so it can’t be checked.

90 of 90
  • The paper relies on this without support.

    The actual contents of stored database relations (the extensional database) are rather dynamic, while the rules defining derived relations (the intentional database) are more static.

    “Often, the actual contents of the stored database relations (the extensional database – EDB) is rather dynamic, while the rules defining derived relations from stored ones (the intentional database – IDB) are more static.”
  • The paper relies on this without support.

    The selected integrity checking technique and the potential update patterns are static components of the application.

    “The selected technique for performing the integrity checking is a static component of the application, as well as the different potential update patterns which may occur.”
  • The paper relies on this without support.

    The idea of partially evaluating a meta-interpreter for integrity checking had not been implemented before this work.

    “However, to the best of our knowledge, the idea based on partially evaluating a meta-interpreter, was never actually implemented and in the second part of this paper we provide the first practical realisation.”
  • The paper relies on this without support.

    The ground representation can be treated in a purely declarative manner.

    “The ground representation has the advantage that it can be treated in a purely declarative manner”
  • The paper relies on this without support.

    For many applications, the non-ground representation requires the use of extra-logical built-ins (like var/1 or copy/2).

    “while for many applications the non-ground representation requires the use of extra-logical built-in's (like var/1 or copy/2)”
  • The paper relies on this without support.

    The main advantage of the non-ground representation is that the meta-program can use the underlying unification mechanism.

    “The main advantage of the non-ground representation is that the meta-program can use the underlying unification mechanism”
  • The paper relies on this without support.

    For the ground representation, an explicit unification algorithm is required.

    “while for the ground representation an explicit unification algorithm is required”
  • The paper relies on this without support.

    The current consensus in the logic programming community is that both representations have their merits and the actual choice depends on the particular application.

    “The current consensus in the logic programming community is that both representations have their merits and the actual choice depends on the particular application.”
  • The authors state this as an assumption.

    The if-then-else construct used in Fig. 4 is declarative.

    “Observe that in Fig. 4 we use an if-then-else construct, written as (if → then; else), which for the time being we assume to be declarative”
  • The paper relies on this without support.

    Effective partial evaluation of findall has not been accomplished yet.

    “effective partial evaluation of findall has to the best of our knowledge not been accomplished yet”
  • The paper relies on this without support.

    Both findall and numbervars are very hard to partially evaluate satisfactorily.

    “both of which seem very hard to partially evaluate satisfactorily”
  • The paper relies on this without support.

    The LST method relies on instantiations of goals.

    “An implementation of an integrity checking method which relies on such instantiations, like, e.g., the LST method”
  • The paper relies on this without support.

    In fully recursive databases, a subsumption test (or something even more powerful) is required to perform loop checking inside the integrity checker.

    “Also, in the context of fully recursive databases, a subsumption test (or something even more powerful) will be required to perform loop checking inside the integrity checker.”
  • The paper relies on this without support.

    The full cut can have an effect on all subsequent clauses defining the predicate under consideration.

    “The reason is that the full cut can have an effect on all subsequent clauses defining the predicate under consideration.”
  • The paper relies on this without support.

    The cut inside the if-then-else is local and does not affect the reachability and meaning of other clauses.

    “The cut inside the if-then-else, however, is local and does not affect the reachability and meaning of other clauses.”
  • The authors state this as an assumption.

    The computed answers of parent/2 are always grounding substitutions.

    “Suppose that the computed answers of parent/2 are always grounding substitutions.”
  • The paper relies on this without support.

    Automatically unfolding a meta-interpreter in a satisfactory way is non-trivial and has not been solved in the fully general case.

    “Automatically unfolding a meta-interpreter in a satisfactory way is a non-trivial 1ssn o the fully general case, this problem has not been solved yet.”
  • The paper relies on this without support.

    The database was consistent before the update.

    “given the fact that the database was consistent before the update”
  • The paper relies on this without support.

    For most applications, the predicates in the intensional and the extensional database are disjoint.

    “For most applications this is the case, but it is not required by the current method.”
  • The paper relies on this without support.

    The frequency with which updates and integrity checks are performed is significantly higher than that of remodelling and specialising the static part of the database.

    “The frequency with which updates (and integrity checks) are performed is significantly higher than that of remodelling (and specialising) 20 the static part of the database.”
  • The paper relies on this without support.

    Updates are often performed interactively, on-line, making acceptably fast execution important, while respecialisation would typically be performed in background, requiring less efficiency.

    “Updates are often performed interactively, on-line, making acceptably fast execution important, while respecialisation would typically be performed in background, requiring less efficiency.”
21 of 21

Self-check

Percentages, sums and reported differences re-computed from the paper’s own numbers.

  • Incorrect relative time in Table 7

    Minor

    For the 238-fact database, update 2, the reported ic-lst relative time is 67. Dividing its 12.64 s runtime by the ic-leupel runtime of 0.16 s gives 79, not 67.

    Reported 67 · recomputed 79

1 of 1

Cites

Flagged first, then by citations

Research works printed but not linked: 4

  1. De Schreye, 1992, A sensible least Herbrand semantics for untyped vanilla metaprogramming, vol. 649, 192
  2. Ershov, 1982, On Futamura projections, BIT (Japan), 12, 4
  3. M. Leuschel, B. Martens, K. Sagonas, Preserving termination of tabled logic programs while unfolding, in: N. Fuchs (Ed.), Proceedings of the International Workshop on Logic Program Synthesis and Transformation (LOPSTR'97), Leuven, Belgium, Lecture Notes in Computer Science, Springer, Berlin, to appear.
  4. Sahlin, 1993, Mixtus: An automatic partial evaluator for full Prolog, New Gener. Comput., 12, 7, 10.1007/bf03038271 · DOI · Paper page

Cited by

Sorted by citations

Authors
Leuschel, M., & De Schreye, D.
Venue
The Journal of Logic Programming
Publisher
Elsevier BV
Published
1998-08
Volume
36
Issue
2
Pages
149-193
ISSN
0743-1066 (ISSN-L)
OpenAlex
W1981032168
Cited by
29
References
96
Citations by year
2025: 1
FWCI
1.74
Type
journal article
Language
en
Open access
Locations
  • The Journal of Logic Programming (publishedVersion)
  • Lirias (KU Leuven) (submittedVersion, other-oa)
  • Lirias (submittedVersion, other-oa)
  • ePrints Soton (University of Southampton) (submittedVersion)
Funders
Fonds De La Recherche Scientifique - FNRS
Topics
  • Physical Sciences › Computer Science › Artificial Intelligence › Logic, Reasoning, and Knowledge
  • Physical Sciences › Computer Science › Computer Networks and Communications › Advanced Database Systems and Queries
  • Physical Sciences › Computer Science › Artificial Intelligence › Logic, programming, and type systems
Keywords
integrity constraints, deductive databases, meta-interpreter, partial evaluation, logic programming, transaction patterns

About these checks

Registry, retraction, Cites and statistics results are computed, not judged, with one exception: a printed reference that no index lists is read once by a model before it counts as a citation error. Claims are extracted by a model and kept only when their quote appears verbatim in the text; each cited source is then checked, with a model’s help, for whether it says what the claim relies on. Those verdicts can be wrong — read the claim’s quote and the cited source before relying on one.

Claims read by deepseek-v4.1-flash under definition version 3 (extract-v3) on 2026-10-19.

Classified by jev-1.13-20260917 (gold-guideline-v0.2) on 2026-10-19.

Cited sources are checked by gpt-6-sol.

Statistics and arithmetic are recomputed, not judged.

Confidence bands are shown only for fields calibrated on our annotated test set. None is calibrated yet, so no band is shown.

What counts as a claim ›How we measure confidence ›How we check this ›

Are you an author, or do you see a problem with this page? Request a review