/export/starexec/sandbox2/solver/bin/starexec_run_standard /export/starexec/sandbox2/benchmark/theBenchmark.pl /export/starexec/sandbox2/output/output_files -------------------------------------------------------------------------------- YES proof of /export/starexec/sandbox2/benchmark/theBenchmark.pl # AProVE Commit ID: 48fb2092695e11cc9f56e44b17a92a5f88ffb256 marcel 20180622 unpublished dirty Left Termination of the query pattern fact(g,a) w.r.t. the given Prolog program could successfully be proven: (0) Prolog (1) PrologToDTProblemTransformerProof [SOUND, 36 ms] (2) TRIPLES (3) TPisEmptyProof [EQUIVALENT, 0 ms] (4) YES ---------------------------------------- (0) Obligation: Clauses: fact(X, Ret) :- ','(>(X, 1), ','(!, ','(is(X1, -(X, 1)), ','(fact(X1, Ret1), is(Ret, *(X, Ret1)))))). fact(X, Ret) :- ','(!, is(Ret, 1)). Query: fact(g,a) ---------------------------------------- (1) PrologToDTProblemTransformerProof (SOUND) Built DT problem from termination graph DT10. { "root": 2, "program": { "directives": [], "clauses": [ [ "(fact X Ret)", "(',' (> X (1)) (',' (!) (',' (is X1 (- X (1))) (',' (fact X1 Ret1) (is Ret (* X Ret1))))))" ], [ "(fact X Ret)", "(',' (!) (is Ret (1)))" ] ] }, "graph": { "nodes": { "24": { "goal": [{ "clause": 1, "scope": 1, "term": "(fact T5 T2)" }], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [{ "lhs": { "type": "PlainIntegerConstant", "value": "1" }, "type": "PlainIntegerRelation", "rhs": { "name": "T5", "type": "PlainIntegerVariable" }, "operation": ">=" }] }, "ground": ["T5"], "free": [ "X6", "X7" ], "exprvars": ["T5"] } }, "25": { "goal": [{ "clause": -1, "scope": -1, "term": "(',' (is X6 (- T5 (1))) (',' (fact X6 X7) (is T7 (* T5 X7))))" }], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [{ "lhs": { "type": "PlainIntegerConstant", "value": "1" }, "type": "PlainIntegerRelation", "rhs": { "name": "T5", "type": "PlainIntegerVariable" }, "operation": "<" }] }, "ground": ["T5"], "free": [ "X6", "X7" ], "exprvars": ["T5"] } }, "47": { "goal": [ { "clause": 0, "scope": 2, "term": "(',' (fact T8 X7) (is T7 (* T5 X7)))" }, { "clause": 1, "scope": 2, "term": "(',' (fact T8 X7) (is T7 (* T5 X7)))" } ], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [ { "lhs": { "name": "T8", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "arguments": [ { "name": "T5", "type": "PlainIntegerVariable" }, { "type": "PlainIntegerConstant", "value": "1" } ], "type": "PlainIntegerOperation", "operation": "-" }, "operation": "=" }, { "lhs": { "type": "PlainIntegerConstant", "value": "1" }, "type": "PlainIntegerRelation", "rhs": { "name": "T5", "type": "PlainIntegerVariable" }, "operation": "<" } ] }, "ground": [ "T5", "T8" ], "free": ["X7"], "exprvars": [ "T5", "T8" ] } }, "38": { "goal": [{ "clause": -1, "scope": -1, "term": "(',' (fact T8 X7) (is T7 (* T5 X7)))" }], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [ { "lhs": { "name": "T8", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "arguments": [ { "name": "T5", "type": "PlainIntegerVariable" }, { "type": "PlainIntegerConstant", "value": "1" } ], "type": "PlainIntegerOperation", "operation": "-" }, "operation": "=" }, { "lhs": { "type": "PlainIntegerConstant", "value": "1" }, "type": "PlainIntegerRelation", "rhs": { "name": "T5", "type": "PlainIntegerVariable" }, "operation": "<" } ] }, "ground": [ "T5", "T8" ], "free": [ "X6", "X7" ], "exprvars": [ "T5", "T8" ] } }, "49": { "goal": [{ "clause": 0, "scope": 2, "term": "(',' (fact T8 X7) (is T7 (* T5 X7)))" }], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [ { "lhs": { "name": "T8", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "arguments": [ { "name": "T5", "type": "PlainIntegerVariable" }, { "type": "PlainIntegerConstant", "value": "1" } ], "type": "PlainIntegerOperation", "operation": "-" }, "operation": "=" }, { "lhs": { "type": "PlainIntegerConstant", "value": "1" }, "type": "PlainIntegerRelation", "rhs": { "name": "T5", "type": "PlainIntegerVariable" }, "operation": "<" } ] }, "ground": [ "T5", "T8" ], "free": ["X7"], "exprvars": [ "T5", "T8" ] } }, "18": { "goal": [ { "clause": -1, "scope": -1, "term": "(',' (!_1) (',' (is X6 (- T5 (1))) (',' (fact X6 X7) (is T7 (* T5 X7)))))" }, { "clause": 1, "scope": 1, "term": "(fact T5 T2)" } ], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [{ "lhs": { "type": "PlainIntegerConstant", "value": "1" }, "type": "PlainIntegerRelation", "rhs": { "name": "T5", "type": "PlainIntegerVariable" }, "operation": "<" }] }, "ground": ["T5"], "free": [ "X6", "X7" ], "exprvars": ["T5"] } }, "type": "Nodes", "1525": { "goal": [{ "clause": -1, "scope": -1, "term": "(',' (is X37 (1)) (is T7 (* T5 X37)))" }], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [ { "lhs": { "name": "T8", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "arguments": [ { "name": "T5", "type": "PlainIntegerVariable" }, { "type": "PlainIntegerConstant", "value": "1" } ], "type": "PlainIntegerOperation", "operation": "-" }, "operation": "=" }, { "lhs": { "arguments": [ { "name": "T5", "type": "PlainIntegerVariable" }, { "type": "PlainIntegerConstant", "value": "1" } ], "type": "PlainIntegerOperation", "operation": "-" }, "type": "PlainIntegerRelation", "rhs": { "arguments": [ { "name": "T5", "type": "PlainIntegerVariable" }, { "type": "PlainIntegerConstant", "value": "1" } ], "type": "PlainIntegerOperation", "operation": "-" }, "operation": "=" }, { "lhs": { "type": "PlainIntegerConstant", "value": "1" }, "type": "PlainIntegerRelation", "rhs": { "name": "T5", "type": "PlainIntegerVariable" }, "operation": "<" }, { "lhs": { "name": "T5", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "name": "T5", "type": "PlainIntegerVariable" }, "operation": "<" } ] }, "ground": ["T5"], "free": ["X37"], "exprvars": [ "T5", "T8", "T16" ] } }, "2": { "goal": [{ "clause": -1, "scope": -1, "term": "(fact T1 T2)" }], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": ["T1"], "free": [], "exprvars": [] } }, "1533": { "goal": [], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [ { "lhs": { "name": "T8", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "arguments": [ { "name": "T5", "type": "PlainIntegerVariable" }, { "type": "PlainIntegerConstant", "value": "1" } ], "type": "PlainIntegerOperation", "operation": "-" }, "operation": "=" }, { "lhs": { "arguments": [ { "name": "T5", "type": "PlainIntegerVariable" }, { "type": "PlainIntegerConstant", "value": "1" } ], "type": "PlainIntegerOperation", "operation": "-" }, "type": "PlainIntegerRelation", "rhs": { "arguments": [ { "name": "T5", "type": "PlainIntegerVariable" }, { "type": "PlainIntegerConstant", "value": "1" } ], "type": "PlainIntegerOperation", "operation": "-" }, "operation": "=" }, { "lhs": { "name": "T17", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "type": "PlainIntegerConstant", "value": "1" }, "operation": "=" }, { "lhs": { "name": "T18", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "arguments": [ { "name": "T5", "type": "PlainIntegerVariable" }, { "name": "T17", "type": "PlainIntegerVariable" } ], "type": "PlainIntegerOperation", "operation": "*" }, "operation": "=" }, { "lhs": { "type": "PlainIntegerConstant", "value": "1" }, "type": "PlainIntegerRelation", "rhs": { "name": "T5", "type": "PlainIntegerVariable" }, "operation": "<" }, { "lhs": { "name": "T5", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "name": "T5", "type": "PlainIntegerVariable" }, "operation": "<" } ] }, "ground": [], "free": [], "exprvars": [ "T5", "T18", "T17", "T8", "T16" ] } }, "1543": { "goal": [], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [ { "lhs": { "name": "T24", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "type": "PlainIntegerConstant", "value": "1" }, "operation": "=" }, { "lhs": { "type": "PlainIntegerConstant", "value": "1" }, "type": "PlainIntegerRelation", "rhs": { "name": "T5", "type": "PlainIntegerVariable" }, "operation": ">=" }, { "lhs": { "name": "T21", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "name": "T5", "type": "PlainIntegerVariable" }, "operation": ">=" } ] }, "ground": [], "free": [], "exprvars": [ "T5", "T24", "T21" ] } }, "1531": { "goal": [], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [ { "lhs": { "name": "T8", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "arguments": [ { "name": "T5", "type": "PlainIntegerVariable" }, { "type": "PlainIntegerConstant", "value": "1" } ], "type": "PlainIntegerOperation", "operation": "-" }, "operation": "=" }, { "lhs": { "arguments": [ { "name": "T5", "type": "PlainIntegerVariable" }, { "type": "PlainIntegerConstant", "value": "1" } ], "type": "PlainIntegerOperation", "operation": "-" }, "type": "PlainIntegerRelation", "rhs": { "arguments": [ { "name": "T5", "type": "PlainIntegerVariable" }, { "type": "PlainIntegerConstant", "value": "1" } ], "type": "PlainIntegerOperation", "operation": "-" }, "operation": "=" }, { "lhs": { "name": "T17", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "type": "PlainIntegerConstant", "value": "1" }, "operation": "=" }, { "lhs": { "type": "PlainIntegerConstant", "value": "1" }, "type": "PlainIntegerRelation", "rhs": { "name": "T5", "type": "PlainIntegerVariable" }, "operation": "<" }, { "lhs": { "name": "T5", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "name": "T5", "type": "PlainIntegerVariable" }, "operation": "<" } ] }, "ground": [ "T5", "T17" ], "free": ["X37"], "exprvars": [ "T5", "T17", "T8", "T16" ] } }, "1542": { "goal": [], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [ { "lhs": { "type": "PlainIntegerConstant", "value": "1" }, "type": "PlainIntegerRelation", "rhs": { "name": "T5", "type": "PlainIntegerVariable" }, "operation": ">=" }, { "lhs": { "name": "T21", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "name": "T5", "type": "PlainIntegerVariable" }, "operation": ">=" } ] }, "ground": [], "free": [], "exprvars": [ "T5", "T21" ] } }, "6": { "goal": [ { "clause": 0, "scope": 1, "term": "(fact T1 T2)" }, { "clause": 1, "scope": 1, "term": "(fact T1 T2)" } ], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": ["T1"], "free": [], "exprvars": [] } }, "1530": { "goal": [{ "clause": -1, "scope": -1, "term": "(true)" }], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [ { "lhs": { "name": "T8", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "arguments": [ { "name": "T5", "type": "PlainIntegerVariable" }, { "type": "PlainIntegerConstant", "value": "1" } ], "type": "PlainIntegerOperation", "operation": "-" }, "operation": "=" }, { "lhs": { "arguments": [ { "name": "T5", "type": "PlainIntegerVariable" }, { "type": "PlainIntegerConstant", "value": "1" } ], "type": "PlainIntegerOperation", "operation": "-" }, "type": "PlainIntegerRelation", "rhs": { "arguments": [ { "name": "T5", "type": "PlainIntegerVariable" }, { "type": "PlainIntegerConstant", "value": "1" } ], "type": "PlainIntegerOperation", "operation": "-" }, "operation": "=" }, { "lhs": { "name": "T17", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "type": "PlainIntegerConstant", "value": "1" }, "operation": "=" }, { "lhs": { "name": "T18", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "arguments": [ { "name": "T5", "type": "PlainIntegerVariable" }, { "name": "T17", "type": "PlainIntegerVariable" } ], "type": "PlainIntegerOperation", "operation": "*" }, "operation": "=" }, { "lhs": { "type": "PlainIntegerConstant", "value": "1" }, "type": "PlainIntegerRelation", "rhs": { "name": "T5", "type": "PlainIntegerVariable" }, "operation": "<" }, { "lhs": { "name": "T5", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "name": "T5", "type": "PlainIntegerVariable" }, "operation": "<" } ] }, "ground": [ "T5", "T18", "T17" ], "free": ["X37"], "exprvars": [ "T5", "T18", "T17", "T8", "T16" ] } }, "1541": { "goal": [{ "clause": -1, "scope": -1, "term": "(true)" }], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [ { "lhs": { "name": "T24", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "type": "PlainIntegerConstant", "value": "1" }, "operation": "=" }, { "lhs": { "type": "PlainIntegerConstant", "value": "1" }, "type": "PlainIntegerRelation", "rhs": { "name": "T5", "type": "PlainIntegerVariable" }, "operation": ">=" }, { "lhs": { "name": "T21", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "name": "T5", "type": "PlainIntegerVariable" }, "operation": ">=" } ] }, "ground": ["T24"], "free": [], "exprvars": [ "T5", "T24", "T21" ] } }, "7": { "goal": [ { "clause": -1, "scope": -1, "term": "(',' (> T5 (1)) (',' (!_1) (',' (is X6 (- T5 (1))) (',' (fact X6 X7) (is T7 (* T5 X7))))))" }, { "clause": 1, "scope": 1, "term": "(fact T5 T2)" } ], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": ["T5"], "free": [ "X6", "X7" ], "exprvars": [] } }, "8": { "goal": [], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [], "free": [], "exprvars": [] } }, "50": { "goal": [{ "clause": 1, "scope": 2, "term": "(',' (fact T8 X7) (is T7 (* T5 X7)))" }], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [ { "lhs": { "name": "T8", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "arguments": [ { "name": "T5", "type": "PlainIntegerVariable" }, { "type": "PlainIntegerConstant", "value": "1" } ], "type": "PlainIntegerOperation", "operation": "-" }, "operation": "=" }, { "lhs": { "type": "PlainIntegerConstant", "value": "1" }, "type": "PlainIntegerRelation", "rhs": { "name": "T5", "type": "PlainIntegerVariable" }, "operation": "<" } ] }, "ground": [ "T5", "T8" ], "free": ["X7"], "exprvars": [ "T5", "T8" ] } }, "51": { "goal": [{ "clause": -1, "scope": -1, "term": "(',' (',' (> T13 (1)) (',' (!_2) (',' (is X26 (- T13 (1))) (',' (fact X26 X27) (is X28 (* T13 X27)))))) (is T7 (* T5 X28)))" }], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [ { "lhs": { "name": "T8", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "arguments": [ { "name": "T5", "type": "PlainIntegerVariable" }, { "type": "PlainIntegerConstant", "value": "1" } ], "type": "PlainIntegerOperation", "operation": "-" }, "operation": "=" }, { "lhs": { "arguments": [ { "name": "T5", "type": "PlainIntegerVariable" }, { "type": "PlainIntegerConstant", "value": "1" } ], "type": "PlainIntegerOperation", "operation": "-" }, "type": "PlainIntegerRelation", "rhs": { "arguments": [ { "name": "T5", "type": "PlainIntegerVariable" }, { "type": "PlainIntegerConstant", "value": "1" } ], "type": "PlainIntegerOperation", "operation": "-" }, "operation": "=" }, { "lhs": { "type": "PlainIntegerConstant", "value": "1" }, "type": "PlainIntegerRelation", "rhs": { "name": "T5", "type": "PlainIntegerVariable" }, "operation": "<" }, { "lhs": { "name": "T5", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "name": "T5", "type": "PlainIntegerVariable" }, "operation": "<" } ] }, "ground": [ "T5", "T13" ], "free": [ "X28", "X26", "X27" ], "exprvars": [ "T5", "T13", "T8" ] } }, "1518": { "goal": [{ "clause": -1, "scope": -1, "term": "(',' (',' (!_2) (is X37 (1))) (is T7 (* T5 X37)))" }], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [ { "lhs": { "name": "T8", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "arguments": [ { "name": "T5", "type": "PlainIntegerVariable" }, { "type": "PlainIntegerConstant", "value": "1" } ], "type": "PlainIntegerOperation", "operation": "-" }, "operation": "=" }, { "lhs": { "arguments": [ { "name": "T5", "type": "PlainIntegerVariable" }, { "type": "PlainIntegerConstant", "value": "1" } ], "type": "PlainIntegerOperation", "operation": "-" }, "type": "PlainIntegerRelation", "rhs": { "arguments": [ { "name": "T5", "type": "PlainIntegerVariable" }, { "type": "PlainIntegerConstant", "value": "1" } ], "type": "PlainIntegerOperation", "operation": "-" }, "operation": "=" }, { "lhs": { "type": "PlainIntegerConstant", "value": "1" }, "type": "PlainIntegerRelation", "rhs": { "name": "T5", "type": "PlainIntegerVariable" }, "operation": "<" }, { "lhs": { "name": "T5", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "name": "T5", "type": "PlainIntegerVariable" }, "operation": "<" } ] }, "ground": ["T5"], "free": ["X37"], "exprvars": [ "T5", "T8", "T16" ] } }, "1528": { "goal": [{ "clause": -1, "scope": -1, "term": "(is T7 (* T5 T17))" }], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [ { "lhs": { "name": "T8", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "arguments": [ { "name": "T5", "type": "PlainIntegerVariable" }, { "type": "PlainIntegerConstant", "value": "1" } ], "type": "PlainIntegerOperation", "operation": "-" }, "operation": "=" }, { "lhs": { "arguments": [ { "name": "T5", "type": "PlainIntegerVariable" }, { "type": "PlainIntegerConstant", "value": "1" } ], "type": "PlainIntegerOperation", "operation": "-" }, "type": "PlainIntegerRelation", "rhs": { "arguments": [ { "name": "T5", "type": "PlainIntegerVariable" }, { "type": "PlainIntegerConstant", "value": "1" } ], "type": "PlainIntegerOperation", "operation": "-" }, "operation": "=" }, { "lhs": { "name": "T17", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "type": "PlainIntegerConstant", "value": "1" }, "operation": "=" }, { "lhs": { "type": "PlainIntegerConstant", "value": "1" }, "type": "PlainIntegerRelation", "rhs": { "name": "T5", "type": "PlainIntegerVariable" }, "operation": "<" }, { "lhs": { "name": "T5", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "name": "T5", "type": "PlainIntegerVariable" }, "operation": "<" } ] }, "ground": [ "T5", "T17" ], "free": ["X37"], "exprvars": [ "T5", "T17", "T8", "T16" ] } }, "1539": { "goal": [{ "clause": -1, "scope": -1, "term": "(is T23 (1))" }], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [ { "lhs": { "type": "PlainIntegerConstant", "value": "1" }, "type": "PlainIntegerRelation", "rhs": { "name": "T5", "type": "PlainIntegerVariable" }, "operation": ">=" }, { "lhs": { "name": "T21", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "name": "T5", "type": "PlainIntegerVariable" }, "operation": ">=" } ] }, "ground": [], "free": [], "exprvars": [ "T5", "T21" ] } }, "1538": { "goal": [{ "clause": -1, "scope": -1, "term": "(',' (!_1) (is T23 (1)))" }], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [ { "lhs": { "type": "PlainIntegerConstant", "value": "1" }, "type": "PlainIntegerRelation", "rhs": { "name": "T5", "type": "PlainIntegerVariable" }, "operation": ">=" }, { "lhs": { "name": "T21", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "name": "T5", "type": "PlainIntegerVariable" }, "operation": ">=" } ] }, "ground": [], "free": [], "exprvars": [ "T5", "T21" ] } } }, "edges": [ { "from": 2, "to": 6, "label": "CASE" }, { "from": 6, "to": 7, "label": "ONLY EVAL with clause\nfact(X4, X5) :- ','(>(X4, 1), ','(!_1, ','(is(X6, -(X4, 1)), ','(fact(X6, X7), is(X5, *(X4, X7)))))).\nand substitutionT1 -> T5,\nX4 -> T5,\nT2 -> T7,\nX5 -> T7,\nT6 -> T7" }, { "from": 7, "to": 8, "label": "IS ERROR" }, { "from": 7, "to": 18, "label": "ARITHCOMP SUCCESS" }, { "from": 7, "to": 24, "label": "ARITHCOMP FAIL" }, { "from": 18, "to": 25, "label": "CUT" }, { "from": 24, "to": 1538, "label": "ONLY EVAL with clause\nfact(X40, X41) :- ','(!_1, is(X41, 1)).\nand substitutionT5 -> T21,\nX40 -> T21,\nT2 -> T23,\nX41 -> T23,\nT22 -> T23" }, { "from": 25, "to": 38, "label": "\nX6 -> T8" }, { "from": 38, "to": 47, "label": "CASE" }, { "from": 47, "to": 49, "label": "PARALLEL" }, { "from": 47, "to": 50, "label": "PARALLEL" }, { "from": 49, "to": 51, "label": "ONLY EVAL with clause\nfact(X24, X25) :- ','(>(X24, 1), ','(!_2, ','(is(X26, -(X24, 1)), ','(fact(X26, X27), is(X25, *(X24, X27)))))).\nand substitutionT8 -> T13,\nX24 -> T13,\nX7 -> X28,\nX25 -> X28" }, { "from": 50, "to": 1518, "label": "ONLY EVAL with clause\nfact(X35, X36) :- ','(!_2, is(X36, 1)).\nand substitutionT8 -> T16,\nX35 -> T16,\nX7 -> X37,\nX36 -> X37" }, { "from": 1518, "to": 1525, "label": "CUT" }, { "from": 1525, "to": 1528, "label": "\nX37 -> T17" }, { "from": 1528, "to": 1530, "label": "\nT7 -> T18" }, { "from": 1528, "to": 1531, "label": "IS FAIL" }, { "from": 1530, "to": 1533, "label": "SUCCESS" }, { "from": 1538, "to": 1539, "label": "CUT" }, { "from": 1539, "to": 1541, "label": "\nT23 -> T24" }, { "from": 1539, "to": 1542, "label": "IS FAIL" }, { "from": 1541, "to": 1543, "label": "SUCCESS" } ], "type": "Graph" } } ---------------------------------------- (2) Obligation: Triples: Clauses: Afs: ---------------------------------------- (3) TPisEmptyProof (EQUIVALENT) There are no more dependency triples. Hence, the dependency triple problem trivially terminates. ---------------------------------------- (4) YES