/export/starexec/sandbox/solver/bin/starexec_run_standard /export/starexec/sandbox/benchmark/theBenchmark.pl /export/starexec/sandbox/output/output_files -------------------------------------------------------------------------------- YES proof of /export/starexec/sandbox/benchmark/theBenchmark.pl # AProVE Commit ID: 48fb2092695e11cc9f56e44b17a92a5f88ffb256 marcel 20180622 unpublished dirty Left Termination of the query pattern main(g,g) w.r.t. the given Prolog program could successfully be proven: (0) Prolog (1) PrologToIRSwTTransformerProof [SOUND, 36 ms] (2) TRUE ---------------------------------------- (0) Obligation: Clauses: main(M, N) :- ','(>(M, 0), ','(>(N, 0), addition(M, N, Ret))). addition(M, N, Ret) :- ','(=:=(N, 0), ','(!, is(Ret, M))). addition(M, N, Ret) :- ','(>(N, 0), ','(!, ','(is(M1, +(M, 1)), ','(is(N1, -(N, 1)), addition(M1, N1, Ret))))). addition(M, N, Ret) :- ','(<(N, 0), ','(!, ','(is(M1, -(M, 1)), ','(is(N1, +(N, 1)), addition(M1, N1, Ret))))). Query: main(g,g) ---------------------------------------- (1) PrologToIRSwTTransformerProof (SOUND) Transformed Prolog program to IRSwT according to method in Master Thesis of A. Weinert { "root": 2, "program": { "directives": [], "clauses": [ [ "(main M N)", "(',' (> M (0)) (',' (> N (0)) (addition M N Ret)))" ], [ "(addition M N Ret)", "(',' (=:= N (0)) (',' (!) (is Ret M)))" ], [ "(addition M N Ret)", "(',' (> N (0)) (',' (!) (',' (is M1 (+ M (1))) (',' (is N1 (- N (1))) (addition M1 N1 Ret)))))" ], [ "(addition M N Ret)", "(',' (< N (0)) (',' (!) (',' (is M1 (- M (1))) (',' (is N1 (+ N (1))) (addition M1 N1 Ret)))))" ] ] }, "graph": { "nodes": { "11": { "goal": [{ "clause": -1, "scope": -1, "term": "(',' (> T7 (0)) (',' (> T8 (0)) (addition T7 T8 X8)))" }], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [ "T7", "T8" ], "free": ["X8"], "exprvars": [] } }, "12": { "goal": [], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [], "free": [], "exprvars": [] } }, "2670": { "goal": [{ "clause": -1, "scope": -1, "term": "(',' (> T27 (0)) (',' (!_2) (',' (is X48 (+ T26 (1))) (',' (is X49 (- T27 (1))) (addition X48 X49 X50)))))" }], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [ { "lhs": { "name": "T16", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "type": "PlainIntegerConstant", "value": "0" }, "operation": "!=" }, { "lhs": { "type": "PlainIntegerConstant", "value": "0" }, "type": "PlainIntegerRelation", "rhs": { "type": "PlainIntegerConstant", "value": "0" }, "operation": "!=" }, { "lhs": { "type": "PlainIntegerConstant", "value": "0" }, "type": "PlainIntegerRelation", "rhs": { "name": "T7", "type": "PlainIntegerVariable" }, "operation": "<" }, { "lhs": { "type": "PlainIntegerConstant", "value": "0" }, "type": "PlainIntegerRelation", "rhs": { "name": "T8", "type": "PlainIntegerVariable" }, "operation": "<" }, { "lhs": { "name": "T15", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "name": "T7", "type": "PlainIntegerVariable" }, "operation": "<" }, { "lhs": { "name": "T16", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "name": "T8", "type": "PlainIntegerVariable" }, "operation": "<" }, { "lhs": { "name": "T7", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "name": "T7", "type": "PlainIntegerVariable" }, "operation": "<" }, { "lhs": { "name": "T8", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "name": "T8", "type": "PlainIntegerVariable" }, "operation": "<" }, { "lhs": { "name": "T7", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "name": "T7", "type": "PlainIntegerVariable" }, "operation": "<" }, { "lhs": { "name": "T8", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "name": "T8", "type": "PlainIntegerVariable" }, "operation": "<" } ] }, "ground": [ "T26", "T27" ], "free": [ "X50", "X48", "X49" ], "exprvars": [ "T7", "T8", "T16", "T27", "T15", "T26" ] } }, "type": "Nodes", "2669": { "goal": [{ "clause": 3, "scope": 2, "term": "(addition T15 T16 X8)" }], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [ { "lhs": { "name": "T16", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "type": "PlainIntegerConstant", "value": "0" }, "operation": "!=" }, { "lhs": { "type": "PlainIntegerConstant", "value": "0" }, "type": "PlainIntegerRelation", "rhs": { "name": "T7", "type": "PlainIntegerVariable" }, "operation": "<" }, { "lhs": { "type": "PlainIntegerConstant", "value": "0" }, "type": "PlainIntegerRelation", "rhs": { "name": "T8", "type": "PlainIntegerVariable" }, "operation": "<" }, { "lhs": { "name": "T15", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "name": "T7", "type": "PlainIntegerVariable" }, "operation": "<" }, { "lhs": { "name": "T16", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "name": "T8", "type": "PlainIntegerVariable" }, "operation": "<" } ] }, "ground": [ "T16", "T15" ], "free": ["X8"], "exprvars": [ "T7", "T8", "T16", "T15" ] } }, "2646": { "goal": [ { "clause": -1, "scope": -1, "term": "(',' (=:= T16 (0)) (',' (!_2) (is X24 T15)))" }, { "clause": 2, "scope": 2, "term": "(addition T15 T16 X8)" }, { "clause": 3, "scope": 2, "term": "(addition T15 T16 X8)" } ], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [ { "lhs": { "type": "PlainIntegerConstant", "value": "0" }, "type": "PlainIntegerRelation", "rhs": { "name": "T7", "type": "PlainIntegerVariable" }, "operation": "<" }, { "lhs": { "type": "PlainIntegerConstant", "value": "0" }, "type": "PlainIntegerRelation", "rhs": { "name": "T8", "type": "PlainIntegerVariable" }, "operation": "<" }, { "lhs": { "name": "T15", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "name": "T7", "type": "PlainIntegerVariable" }, "operation": "<" }, { "lhs": { "name": "T16", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "name": "T8", "type": "PlainIntegerVariable" }, "operation": "<" } ] }, "ground": [ "T15", "T16" ], "free": [ "X8", "X24" ], "exprvars": [ "T7", "T8", "T16", "T15" ] } }, "2668": { "goal": [{ "clause": 2, "scope": 2, "term": "(addition T15 T16 X8)" }], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [ { "lhs": { "name": "T16", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "type": "PlainIntegerConstant", "value": "0" }, "operation": "!=" }, { "lhs": { "type": "PlainIntegerConstant", "value": "0" }, "type": "PlainIntegerRelation", "rhs": { "name": "T7", "type": "PlainIntegerVariable" }, "operation": "<" }, { "lhs": { "type": "PlainIntegerConstant", "value": "0" }, "type": "PlainIntegerRelation", "rhs": { "name": "T8", "type": "PlainIntegerVariable" }, "operation": "<" }, { "lhs": { "name": "T15", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "name": "T7", "type": "PlainIntegerVariable" }, "operation": "<" }, { "lhs": { "name": "T16", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "name": "T8", "type": "PlainIntegerVariable" }, "operation": "<" } ] }, "ground": [ "T16", "T15" ], "free": ["X8"], "exprvars": [ "T7", "T8", "T16", "T15" ] } }, "2": { "goal": [{ "clause": -1, "scope": -1, "term": "(main T1 T2)" }], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [ "T1", "T2" ], "free": [], "exprvars": [] } }, "2645": { "goal": [ { "clause": 1, "scope": 2, "term": "(addition T7 T8 X8)" }, { "clause": 2, "scope": 2, "term": "(addition T7 T8 X8)" }, { "clause": 3, "scope": 2, "term": "(addition T7 T8 X8)" } ], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [ { "lhs": { "type": "PlainIntegerConstant", "value": "0" }, "type": "PlainIntegerRelation", "rhs": { "name": "T7", "type": "PlainIntegerVariable" }, "operation": "<" }, { "lhs": { "type": "PlainIntegerConstant", "value": "0" }, "type": "PlainIntegerRelation", "rhs": { "name": "T8", "type": "PlainIntegerVariable" }, "operation": "<" } ] }, "ground": [ "T7", "T8" ], "free": ["X8"], "exprvars": [ "T7", "T8" ] } }, "2667": { "goal": [], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [ { "lhs": { "name": "T16", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "type": "PlainIntegerConstant", "value": "0" }, "operation": "=" }, { "lhs": { "name": "T17", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "name": "T15", "type": "PlainIntegerVariable" }, "operation": "=" }, { "lhs": { "type": "PlainIntegerConstant", "value": "0" }, "type": "PlainIntegerRelation", "rhs": { "name": "T7", "type": "PlainIntegerVariable" }, "operation": "<" }, { "lhs": { "type": "PlainIntegerConstant", "value": "0" }, "type": "PlainIntegerRelation", "rhs": { "name": "T8", "type": "PlainIntegerVariable" }, "operation": "<" }, { "lhs": { "name": "T15", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "name": "T7", "type": "PlainIntegerVariable" }, "operation": "<" }, { "lhs": { "name": "T16", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "name": "T8", "type": "PlainIntegerVariable" }, "operation": "<" } ] }, "ground": [], "free": [], "exprvars": [ "T7", "T17", "T8", "T16", "T15" ] } }, "2347": { "goal": [{ "clause": -1, "scope": -1, "term": "(',' (> T8 (0)) (addition T7 T8 X8))" }], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [{ "lhs": { "type": "PlainIntegerConstant", "value": "0" }, "type": "PlainIntegerRelation", "rhs": { "name": "T7", "type": "PlainIntegerVariable" }, "operation": "<" }] }, "ground": [ "T7", "T8" ], "free": ["X8"], "exprvars": ["T7"] } }, "2446": { "goal": [], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [], "free": [], "exprvars": [] } }, "2644": { "goal": [], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [ { "lhs": { "type": "PlainIntegerConstant", "value": "0" }, "type": "PlainIntegerRelation", "rhs": { "name": "T7", "type": "PlainIntegerVariable" }, "operation": "<" }, { "lhs": { "type": "PlainIntegerConstant", "value": "0" }, "type": "PlainIntegerRelation", "rhs": { "name": "T8", "type": "PlainIntegerVariable" }, "operation": ">=" } ] }, "ground": [ "T7", "T8" ], "free": ["X8"], "exprvars": [ "T7", "T8" ] } }, "2666": { "goal": [{ "clause": -1, "scope": -1, "term": "(true)" }], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [ { "lhs": { "name": "T16", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "type": "PlainIntegerConstant", "value": "0" }, "operation": "=" }, { "lhs": { "name": "T17", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "name": "T15", "type": "PlainIntegerVariable" }, "operation": "=" }, { "lhs": { "type": "PlainIntegerConstant", "value": "0" }, "type": "PlainIntegerRelation", "rhs": { "name": "T7", "type": "PlainIntegerVariable" }, "operation": "<" }, { "lhs": { "type": "PlainIntegerConstant", "value": "0" }, "type": "PlainIntegerRelation", "rhs": { "name": "T8", "type": "PlainIntegerVariable" }, "operation": "<" }, { "lhs": { "name": "T15", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "name": "T7", "type": "PlainIntegerVariable" }, "operation": "<" }, { "lhs": { "name": "T16", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "name": "T8", "type": "PlainIntegerVariable" }, "operation": "<" } ] }, "ground": [ "T17", "T15" ], "free": ["X24"], "exprvars": [ "T7", "T17", "T8", "T16", "T15" ] } }, "2445": { "goal": [], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [{ "lhs": { "type": "PlainIntegerConstant", "value": "0" }, "type": "PlainIntegerRelation", "rhs": { "name": "T7", "type": "PlainIntegerVariable" }, "operation": ">=" }] }, "ground": [ "T7", "T8" ], "free": ["X8"], "exprvars": ["T7"] } }, "2643": { "goal": [{ "clause": -1, "scope": -1, "term": "(addition T7 T8 X8)" }], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [ { "lhs": { "type": "PlainIntegerConstant", "value": "0" }, "type": "PlainIntegerRelation", "rhs": { "name": "T7", "type": "PlainIntegerVariable" }, "operation": "<" }, { "lhs": { "type": "PlainIntegerConstant", "value": "0" }, "type": "PlainIntegerRelation", "rhs": { "name": "T8", "type": "PlainIntegerVariable" }, "operation": "<" } ] }, "ground": [ "T7", "T8" ], "free": ["X8"], "exprvars": [ "T7", "T8" ] } }, "2665": { "goal": [{ "clause": -1, "scope": -1, "term": "(is X24 T15)" }], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [ { "lhs": { "name": "T16", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "type": "PlainIntegerConstant", "value": "0" }, "operation": "=" }, { "lhs": { "type": "PlainIntegerConstant", "value": "0" }, "type": "PlainIntegerRelation", "rhs": { "name": "T7", "type": "PlainIntegerVariable" }, "operation": "<" }, { "lhs": { "type": "PlainIntegerConstant", "value": "0" }, "type": "PlainIntegerRelation", "rhs": { "name": "T8", "type": "PlainIntegerVariable" }, "operation": "<" }, { "lhs": { "name": "T15", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "name": "T7", "type": "PlainIntegerVariable" }, "operation": "<" }, { "lhs": { "name": "T16", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "name": "T8", "type": "PlainIntegerVariable" }, "operation": "<" } ] }, "ground": ["T15"], "free": ["X24"], "exprvars": [ "T7", "T8", "T16", "T15" ] } }, "5": { "goal": [{ "clause": 0, "scope": 1, "term": "(main T1 T2)" }], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [ "T1", "T2" ], "free": [], "exprvars": [] } }, "2664": { "goal": [ { "clause": 2, "scope": 2, "term": "(addition T15 T16 X8)" }, { "clause": 3, "scope": 2, "term": "(addition T15 T16 X8)" } ], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [ { "lhs": { "name": "T16", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "type": "PlainIntegerConstant", "value": "0" }, "operation": "!=" }, { "lhs": { "type": "PlainIntegerConstant", "value": "0" }, "type": "PlainIntegerRelation", "rhs": { "name": "T7", "type": "PlainIntegerVariable" }, "operation": "<" }, { "lhs": { "type": "PlainIntegerConstant", "value": "0" }, "type": "PlainIntegerRelation", "rhs": { "name": "T8", "type": "PlainIntegerVariable" }, "operation": "<" }, { "lhs": { "name": "T15", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "name": "T7", "type": "PlainIntegerVariable" }, "operation": "<" }, { "lhs": { "name": "T16", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "name": "T8", "type": "PlainIntegerVariable" }, "operation": "<" } ] }, "ground": [ "T16", "T15" ], "free": [ "X8", "X24" ], "exprvars": [ "T7", "T8", "T16", "T15" ] } }, "2663": { "goal": [ { "clause": -1, "scope": -1, "term": "(',' (!_2) (is X24 T15))" }, { "clause": 2, "scope": 2, "term": "(addition T15 T16 X8)" }, { "clause": 3, "scope": 2, "term": "(addition T15 T16 X8)" } ], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [ { "lhs": { "name": "T16", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "type": "PlainIntegerConstant", "value": "0" }, "operation": "=" }, { "lhs": { "type": "PlainIntegerConstant", "value": "0" }, "type": "PlainIntegerRelation", "rhs": { "name": "T7", "type": "PlainIntegerVariable" }, "operation": "<" }, { "lhs": { "type": "PlainIntegerConstant", "value": "0" }, "type": "PlainIntegerRelation", "rhs": { "name": "T8", "type": "PlainIntegerVariable" }, "operation": "<" }, { "lhs": { "name": "T15", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "name": "T7", "type": "PlainIntegerVariable" }, "operation": "<" }, { "lhs": { "name": "T16", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "name": "T8", "type": "PlainIntegerVariable" }, "operation": "<" } ] }, "ground": [ "T16", "T15" ], "free": [ "X8", "X24" ], "exprvars": [ "T7", "T8", "T16", "T15" ] } }, "2673": { "goal": [{ "clause": -1, "scope": -1, "term": "(',' (< T33 (0)) (',' (!_2) (',' (is X64 (- T32 (1))) (',' (is X65 (+ T33 (1))) (addition X64 X65 X66)))))" }], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [ { "lhs": { "name": "T16", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "type": "PlainIntegerConstant", "value": "0" }, "operation": "!=" }, { "lhs": { "type": "PlainIntegerConstant", "value": "0" }, "type": "PlainIntegerRelation", "rhs": { "type": "PlainIntegerConstant", "value": "0" }, "operation": "!=" }, { "lhs": { "type": "PlainIntegerConstant", "value": "0" }, "type": "PlainIntegerRelation", "rhs": { "name": "T7", "type": "PlainIntegerVariable" }, "operation": "<" }, { "lhs": { "type": "PlainIntegerConstant", "value": "0" }, "type": "PlainIntegerRelation", "rhs": { "name": "T8", "type": "PlainIntegerVariable" }, "operation": "<" }, { "lhs": { "name": "T15", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "name": "T7", "type": "PlainIntegerVariable" }, "operation": "<" }, { "lhs": { "name": "T16", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "name": "T8", "type": "PlainIntegerVariable" }, "operation": "<" }, { "lhs": { "name": "T7", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "name": "T7", "type": "PlainIntegerVariable" }, "operation": "<" }, { "lhs": { "name": "T8", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "name": "T8", "type": "PlainIntegerVariable" }, "operation": "<" }, { "lhs": { "name": "T7", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "name": "T7", "type": "PlainIntegerVariable" }, "operation": "<" }, { "lhs": { "name": "T8", "type": "PlainIntegerVariable" }, "type": "PlainIntegerRelation", "rhs": { "name": "T8", "type": "PlainIntegerVariable" }, "operation": "<" } ] }, "ground": [ "T32", "T33" ], "free": [ "X66", "X64", "X65" ], "exprvars": [ "T7", "T33", "T8", "T16", "T32", "T15" ] } } }, "edges": [ { "from": 2, "to": 5, "label": "CASE" }, { "from": 5, "to": 11, "label": "ONLY EVAL with clause\nmain(X6, X7) :- ','(>(X6, 0), ','(>(X7, 0), addition(X6, X7, X8))).\nand substitutionT1 -> T7,\nX6 -> T7,\nT2 -> T8,\nX7 -> T8" }, { "from": 11, "to": 12, "label": "IS ERROR" }, { "from": 11, "to": 2347, "label": "ARITHCOMP SUCCESS" }, { "from": 11, "to": 2445, "label": "ARITHCOMP FAIL" }, { "from": 2347, "to": 2446, "label": "IS ERROR" }, { "from": 2347, "to": 2643, "label": "ARITHCOMP SUCCESS" }, { "from": 2347, "to": 2644, "label": "ARITHCOMP FAIL" }, { "from": 2643, "to": 2645, "label": "CASE" }, { "from": 2645, "to": 2646, "label": "ONLY EVAL with clause\naddition(X21, X22, X23) :- ','(=:=(X22, 0), ','(!_2, is(X23, X21))).\nand substitutionT7 -> T15,\nX21 -> T15,\nT8 -> T16,\nX22 -> T16,\nX8 -> X24,\nX23 -> X24" }, { "from": 2646, "to": 2663, "label": "ARITHCOMP SUCCESS" }, { "from": 2646, "to": 2664, "label": "ARITHCOMP FAIL" }, { "from": 2663, "to": 2665, "label": "CUT" }, { "from": 2664, "to": 2668, "label": "PARALLEL" }, { "from": 2664, "to": 2669, "label": "PARALLEL" }, { "from": 2665, "to": 2666, "label": "\nX24 -> T17" }, { "from": 2666, "to": 2667, "label": "SUCCESS" }, { "from": 2668, "to": 2670, "label": "ONLY EVAL with clause\naddition(X45, X46, X47) :- ','(>(X46, 0), ','(!_2, ','(is(X48, +(X45, 1)), ','(is(X49, -(X46, 1)), addition(X48, X49, X47))))).\nand substitutionT15 -> T26,\nX45 -> T26,\nT16 -> T27,\nX46 -> T27,\nX8 -> X50,\nX47 -> X50" }, { "from": 2669, "to": 2673, "label": "ONLY EVAL with clause\naddition(X61, X62, X63) :- ','(<(X62, 0), ','(!_2, ','(is(X64, -(X61, 1)), ','(is(X65, +(X62, 1)), addition(X64, X65, X63))))).\nand substitutionT15 -> T32,\nX61 -> T32,\nT16 -> T33,\nX62 -> T33,\nX8 -> X66,\nX63 -> X66" } ], "type": "Graph" } } ---------------------------------------- (2) TRUE