/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 mergesort(g,a) w.r.t. the given Prolog program could successfully be proven: (0) Prolog (1) PrologToTRSTransformerProof [SOUND, 54 ms] (2) QTRS (3) DependencyPairsProof [EQUIVALENT, 0 ms] (4) QDP (5) DependencyGraphProof [EQUIVALENT, 0 ms] (6) AND (7) QDP (8) UsableRulesProof [EQUIVALENT, 0 ms] (9) QDP (10) QDPSizeChangeProof [EQUIVALENT, 0 ms] (11) YES (12) QDP (13) UsableRulesProof [EQUIVALENT, 0 ms] (14) QDP (15) QDPSizeChangeProof [EQUIVALENT, 0 ms] (16) YES (17) QDP (18) QDPOrderProof [EQUIVALENT, 13 ms] (19) QDP (20) DependencyGraphProof [EQUIVALENT, 0 ms] (21) TRUE (22) QDP (23) UsableRulesProof [EQUIVALENT, 0 ms] (24) QDP (25) QDPSizeChangeProof [EQUIVALENT, 0 ms] (26) YES (27) QDP (28) QDPOrderProof [EQUIVALENT, 124 ms] (29) QDP (30) DependencyGraphProof [EQUIVALENT, 0 ms] (31) TRUE ---------------------------------------- (0) Obligation: Clauses: mergesort([], []). mergesort(.(E, []), .(E, [])). mergesort(.(E, .(F, U)), V) :- ','(split(.(E, .(F, U)), W, Y), ','(mergesort(W, X), ','(mergesort(Y, Z), merge(X, Z, V)))). merge(X, [], X). merge([], X, X). merge(.(A, X), .(B, Y), .(A, Z)) :- ','(le(A, B), merge(X, .(B, Y), Z)). merge(.(A, X), .(B, Y), .(B, Z)) :- ','(gt(A, B), merge(.(A, X), Y, Z)). split([], [], []). split(.(E, U), .(E, V), W) :- split(U, W, V). gt(s(X), s(Y)) :- gt(X, Y). gt(s(X), 0). le(s(X), s(Y)) :- le(X, Y). le(0, s(Y)). le(0, 0). Query: mergesort(g,a) ---------------------------------------- (1) PrologToTRSTransformerProof (SOUND) Transformed Prolog program to TRS. { "root": 13, "program": { "directives": [], "clauses": [ [ "(mergesort ([]) ([]))", null ], [ "(mergesort (. E ([])) (. E ([])))", null ], [ "(mergesort (. E (. F U)) V)", "(',' (split (. E (. F U)) W Y) (',' (mergesort W X) (',' (mergesort Y Z) (merge X Z V))))" ], [ "(merge X ([]) X)", null ], [ "(merge ([]) X X)", null ], [ "(merge (. A X) (. B Y) (. A Z))", "(',' (le A B) (merge X (. B Y) Z))" ], [ "(merge (. A X) (. B Y) (. B Z))", "(',' (gt A B) (merge (. A X) Y Z))" ], [ "(split ([]) ([]) ([]))", null ], [ "(split (. E U) (. E V) W)", "(split U W V)" ], [ "(gt (s X) (s Y))", "(gt X Y)" ], [ "(gt (s X) (0))", null ], [ "(le (s X) (s Y))", "(le X Y)" ], [ "(le (0) (s Y))", null ], [ "(le (0) (0))", null ] ] }, "graph": { "nodes": { "270": { "goal": [{ "clause": -1, "scope": -1, "term": "(true)" }], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [], "free": [], "exprvars": [] } }, "type": "Nodes", "271": { "goal": [], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [], "free": [], "exprvars": [] } }, "590": { "goal": [], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [], "free": [], "exprvars": [] } }, "272": { "goal": [], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [], "free": [], "exprvars": [] } }, "592": { "goal": [{ "clause": 12, "scope": 6, "term": "(le T78 T80)" }], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [ "T78", "T80" ], "free": [], "exprvars": [] } }, "275": { "goal": [{ "clause": 1, "scope": 1, "term": "(mergesort T1 T2)" }], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": ["T1"], "free": [], "exprvars": [] } }, "550": { "goal": [], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [], "free": [], "exprvars": [] } }, "276": { "goal": [{ "clause": 2, "scope": 1, "term": "(mergesort T1 T2)" }], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": ["T1"], "free": [], "exprvars": [] } }, "551": { "goal": [{ "clause": -1, "scope": -1, "term": "(split T43 X79 X78)" }], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": ["T43"], "free": [ "X78", "X79" ], "exprvars": [] } }, "552": { "goal": [], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [], "free": [], "exprvars": [] } }, "630": { "goal": [ { "clause": 9, "scope": 7, "term": "(gt T117 T119)" }, { "clause": 10, "scope": 7, "term": "(gt T117 T119)" } ], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [ "T117", "T119" ], "free": [], "exprvars": [] } }, "514": { "goal": [ { "clause": 7, "scope": 2, "term": "(split (. T16 (. T17 T18)) X22 X23)" }, { "clause": 8, "scope": 2, "term": "(split (. T16 (. T17 T18)) X22 X23)" } ], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [ "T16", "T17", "T18" ], "free": [ "X22", "X23" ], "exprvars": [] } }, "635": { "goal": [{ "clause": 9, "scope": 7, "term": "(gt T117 T119)" }], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [ "T117", "T119" ], "free": [], "exprvars": [] } }, "515": { "goal": [{ "clause": 8, "scope": 2, "term": "(split (. T16 (. T17 T18)) X22 X23)" }], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [ "T16", "T17", "T18" ], "free": [ "X22", "X23" ], "exprvars": [] } }, "637": { "goal": [{ "clause": 10, "scope": 7, "term": "(gt T117 T119)" }], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [ "T117", "T119" ], "free": [], "exprvars": [] } }, "639": { "goal": [{ "clause": -1, "scope": -1, "term": "(gt T135 T136)" }], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [ "T135", "T136" ], "free": [], "exprvars": [] } }, "13": { "goal": [{ "clause": -1, "scope": -1, "term": "(mergesort T1 T2)" }], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": ["T1"], "free": [], "exprvars": [] } }, "285": { "goal": [{ "clause": -1, "scope": -1, "term": "(true)" }], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [], "free": [], "exprvars": [] } }, "560": { "goal": [{ "clause": -1, "scope": -1, "term": "(mergesort T21 X24)" }], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": ["T21"], "free": ["X24"], "exprvars": [] } }, "561": { "goal": [{ "clause": -1, "scope": -1, "term": "(',' (mergesort T22 X25) (merge T44 X25 T20))" }], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [ "T22", "T44" ], "free": ["X25"], "exprvars": [] } }, "563": { "goal": [{ "clause": -1, "scope": -1, "term": "(mergesort T22 X25)" }], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": ["T22"], "free": ["X25"], "exprvars": [] } }, "564": { "goal": [{ "clause": -1, "scope": -1, "term": "(merge T44 T45 T20)" }], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [ "T44", "T45" ], "free": [], "exprvars": [] } }, "641": { "goal": [], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [], "free": [], "exprvars": [] } }, "400": { "goal": [], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [], "free": [], "exprvars": [] } }, "565": { "goal": [ { "clause": 3, "scope": 5, "term": "(merge T44 T45 T20)" }, { "clause": 4, "scope": 5, "term": "(merge T44 T45 T20)" }, { "clause": 5, "scope": 5, "term": "(merge T44 T45 T20)" }, { "clause": 6, "scope": 5, "term": "(merge T44 T45 T20)" } ], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [ "T44", "T45" ], "free": [], "exprvars": [] } }, "566": { "goal": [{ "clause": 3, "scope": 5, "term": "(merge T44 T45 T20)" }], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [ "T44", "T45" ], "free": [], "exprvars": [] } }, "643": { "goal": [{ "clause": -1, "scope": -1, "term": "(true)" }], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [], "free": [], "exprvars": [] } }, "567": { "goal": [ { "clause": 4, "scope": 5, "term": "(merge T44 T45 T20)" }, { "clause": 5, "scope": 5, "term": "(merge T44 T45 T20)" }, { "clause": 6, "scope": 5, "term": "(merge T44 T45 T20)" } ], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [ "T44", "T45" ], "free": [], "exprvars": [] } }, "644": { "goal": [], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [], "free": [], "exprvars": [] } }, "568": { "goal": [{ "clause": -1, "scope": -1, "term": "(true)" }], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [], "free": [], "exprvars": [] } }, "645": { "goal": [], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [], "free": [], "exprvars": [] } }, "569": { "goal": [], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [], "free": [], "exprvars": [] } }, "293": { "goal": [], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [], "free": [], "exprvars": [] } }, "570": { "goal": [], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [], "free": [], "exprvars": [] } }, "296": { "goal": [], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [], "free": [], "exprvars": [] } }, "571": { "goal": [{ "clause": 4, "scope": 5, "term": "(merge T44 T45 T20)" }], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [ "T44", "T45" ], "free": [], "exprvars": [] } }, "572": { "goal": [ { "clause": 5, "scope": 5, "term": "(merge T44 T45 T20)" }, { "clause": 6, "scope": 5, "term": "(merge T44 T45 T20)" } ], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [ "T44", "T45" ], "free": [], "exprvars": [] } }, "496": { "goal": [{ "clause": -1, "scope": -1, "term": "(split (. T16 (. T17 T18)) X22 X23)" }], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [ "T16", "T17", "T18" ], "free": [ "X22", "X23" ], "exprvars": [] } }, "574": { "goal": [{ "clause": -1, "scope": -1, "term": "(true)" }], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [], "free": [], "exprvars": [] } }, "575": { "goal": [], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [], "free": [], "exprvars": [] } }, "499": { "goal": [{ "clause": -1, "scope": -1, "term": "(',' (mergesort T21 X24) (',' (mergesort T22 X25) (merge X24 X25 T20)))" }], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [ "T21", "T22" ], "free": [ "X24", "X25" ], "exprvars": [] } }, "532": { "goal": [{ "clause": -1, "scope": -1, "term": "(split (. T30 T31) X43 X42)" }], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [ "T30", "T31" ], "free": [ "X42", "X43" ], "exprvars": [] } }, "576": { "goal": [], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [], "free": [], "exprvars": [] } }, "614": { "goal": [{ "clause": 13, "scope": 6, "term": "(le T78 T80)" }], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [ "T78", "T80" ], "free": [], "exprvars": [] } }, "615": { "goal": [{ "clause": -1, "scope": -1, "term": "(true)" }], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [], "free": [], "exprvars": [] } }, "616": { "goal": [], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [], "free": [], "exprvars": [] } }, "617": { "goal": [], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [], "free": [], "exprvars": [] } }, "30": { "goal": [ { "clause": 0, "scope": 1, "term": "(mergesort T1 T2)" }, { "clause": 1, "scope": 1, "term": "(mergesort T1 T2)" }, { "clause": 2, "scope": 1, "term": "(mergesort T1 T2)" } ], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": ["T1"], "free": [], "exprvars": [] } }, "618": { "goal": [{ "clause": -1, "scope": -1, "term": "(true)" }], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [], "free": [], "exprvars": [] } }, "619": { "goal": [], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [], "free": [], "exprvars": [] } }, "580": { "goal": [{ "clause": 5, "scope": 5, "term": "(merge T44 T45 T20)" }], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [ "T44", "T45" ], "free": [], "exprvars": [] } }, "581": { "goal": [{ "clause": 6, "scope": 5, "term": "(merge T44 T45 T20)" }], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [ "T44", "T45" ], "free": [], "exprvars": [] } }, "582": { "goal": [{ "clause": -1, "scope": -1, "term": "(',' (le T78 T80) (merge T79 (. T80 T81) T83))" }], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [ "T78", "T79", "T80", "T81" ], "free": [], "exprvars": [] } }, "583": { "goal": [], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [], "free": [], "exprvars": [] } }, "584": { "goal": [{ "clause": -1, "scope": -1, "term": "(le T78 T80)" }], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [ "T78", "T80" ], "free": [], "exprvars": [] } }, "585": { "goal": [{ "clause": -1, "scope": -1, "term": "(merge T79 (. T80 T81) T83)" }], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [ "T79", "T80", "T81" ], "free": [], "exprvars": [] } }, "267": { "goal": [{ "clause": 0, "scope": 1, "term": "(mergesort T1 T2)" }], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": ["T1"], "free": [], "exprvars": [] } }, "542": { "goal": [ { "clause": 7, "scope": 3, "term": "(split (. T30 T31) X43 X42)" }, { "clause": 8, "scope": 3, "term": "(split (. T30 T31) X43 X42)" } ], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [ "T30", "T31" ], "free": [ "X42", "X43" ], "exprvars": [] } }, "586": { "goal": [ { "clause": 11, "scope": 6, "term": "(le T78 T80)" }, { "clause": 12, "scope": 6, "term": "(le T78 T80)" }, { "clause": 13, "scope": 6, "term": "(le T78 T80)" } ], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [ "T78", "T80" ], "free": [], "exprvars": [] } }, "268": { "goal": [ { "clause": 1, "scope": 1, "term": "(mergesort T1 T2)" }, { "clause": 2, "scope": 1, "term": "(mergesort T1 T2)" } ], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": ["T1"], "free": [], "exprvars": [] } }, "389": { "goal": [{ "clause": -1, "scope": -1, "term": "(',' (split (. T16 (. T17 T18)) X22 X23) (',' (mergesort X22 X24) (',' (mergesort X23 X25) (merge X24 X25 T20))))" }], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [ "T16", "T17", "T18" ], "free": [ "X22", "X23", "X24", "X25" ], "exprvars": [] } }, "543": { "goal": [{ "clause": 8, "scope": 3, "term": "(split (. T30 T31) X43 X42)" }], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [ "T30", "T31" ], "free": [ "X42", "X43" ], "exprvars": [] } }, "587": { "goal": [{ "clause": 11, "scope": 6, "term": "(le T78 T80)" }], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [ "T78", "T80" ], "free": [], "exprvars": [] } }, "620": { "goal": [], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [], "free": [], "exprvars": [] } }, "544": { "goal": [{ "clause": -1, "scope": -1, "term": "(split T37 X61 X60)" }], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": ["T37"], "free": [ "X60", "X61" ], "exprvars": [] } }, "588": { "goal": [ { "clause": 12, "scope": 6, "term": "(le T78 T80)" }, { "clause": 13, "scope": 6, "term": "(le T78 T80)" } ], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [ "T78", "T80" ], "free": [], "exprvars": [] } }, "545": { "goal": [ { "clause": 7, "scope": 4, "term": "(split T37 X61 X60)" }, { "clause": 8, "scope": 4, "term": "(split T37 X61 X60)" } ], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": ["T37"], "free": [ "X60", "X61" ], "exprvars": [] } }, "589": { "goal": [{ "clause": -1, "scope": -1, "term": "(le T96 T97)" }], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [ "T96", "T97" ], "free": [], "exprvars": [] } }, "546": { "goal": [{ "clause": 7, "scope": 4, "term": "(split T37 X61 X60)" }], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": ["T37"], "free": [ "X60", "X61" ], "exprvars": [] } }, "623": { "goal": [{ "clause": -1, "scope": -1, "term": "(',' (gt T117 T119) (merge (. T117 T118) T120 T122))" }], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [ "T117", "T118", "T119", "T120" ], "free": [], "exprvars": [] } }, "547": { "goal": [{ "clause": 8, "scope": 4, "term": "(split T37 X61 X60)" }], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": ["T37"], "free": [ "X60", "X61" ], "exprvars": [] } }, "548": { "goal": [{ "clause": -1, "scope": -1, "term": "(true)" }], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [], "free": [], "exprvars": [] } }, "625": { "goal": [], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [], "free": [], "exprvars": [] } }, "549": { "goal": [], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [], "free": [], "exprvars": [] } }, "627": { "goal": [{ "clause": -1, "scope": -1, "term": "(gt T117 T119)" }], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [ "T117", "T119" ], "free": [], "exprvars": [] } }, "628": { "goal": [{ "clause": -1, "scope": -1, "term": "(merge (. T117 T118) T120 T122)" }], "kb": { "nonunifying": [], "intvars": {}, "arithmetic": { "type": "PlainIntegerRelationState", "relations": [] }, "ground": [ "T117", "T118", "T120" ], "free": [], "exprvars": [] } } }, "edges": [ { "from": 13, "to": 30, "label": "CASE" }, { "from": 30, "to": 267, "label": "PARALLEL" }, { "from": 30, "to": 268, "label": "PARALLEL" }, { "from": 267, "to": 270, "label": "EVAL with clause\nmergesort([], []).\nand substitutionT1 -> [],\nT2 -> []" }, { "from": 267, "to": 271, "label": "EVAL-BACKTRACK" }, { "from": 268, "to": 275, "label": "PARALLEL" }, { "from": 268, "to": 276, "label": "PARALLEL" }, { "from": 270, "to": 272, "label": "SUCCESS" }, { "from": 275, "to": 285, "label": "EVAL with clause\nmergesort(.(X5, []), .(X5, [])).\nand substitutionX5 -> T7,\nT1 -> .(T7, []),\nT2 -> .(T7, [])" }, { "from": 275, "to": 293, "label": "EVAL-BACKTRACK" }, { "from": 276, "to": 389, "label": "EVAL with clause\nmergesort(.(X18, .(X19, X20)), X21) :- ','(split(.(X18, .(X19, X20)), X22, X23), ','(mergesort(X22, X24), ','(mergesort(X23, X25), merge(X24, X25, X21)))).\nand substitutionX18 -> T16,\nX19 -> T17,\nX20 -> T18,\nT1 -> .(T16, .(T17, T18)),\nT2 -> T20,\nX21 -> T20,\nT19 -> T20" }, { "from": 276, "to": 400, "label": "EVAL-BACKTRACK" }, { "from": 285, "to": 296, "label": "SUCCESS" }, { "from": 389, "to": 496, "label": "SPLIT 1" }, { "from": 389, "to": 499, "label": "SPLIT 2\nnew knowledge:\nT16 is ground\nT17 is ground\nT18 is ground\nT21 is ground\nT22 is ground\nreplacements:X22 -> T21,\nX23 -> T22" }, { "from": 496, "to": 514, "label": "CASE" }, { "from": 499, "to": 560, "label": "SPLIT 1" }, { "from": 499, "to": 561, "label": "SPLIT 2\nnew knowledge:\nT21 is ground\nT44 is ground\nreplacements:X24 -> T44" }, { "from": 514, "to": 515, "label": "BACKTRACK\nfor clause: split([], [], [])because of non-unification" }, { "from": 515, "to": 532, "label": "ONLY EVAL with clause\nsplit(.(X38, X39), .(X38, X40), X41) :- split(X39, X41, X40).\nand substitutionT16 -> T29,\nX38 -> T29,\nT17 -> T30,\nT18 -> T31,\nX39 -> .(T30, T31),\nX40 -> X42,\nX22 -> .(T29, X42),\nX23 -> X43,\nX41 -> X43" }, { "from": 532, "to": 542, "label": "CASE" }, { "from": 542, "to": 543, "label": "BACKTRACK\nfor clause: split([], [], [])because of non-unification" }, { "from": 543, "to": 544, "label": "ONLY EVAL with clause\nsplit(.(X56, X57), .(X56, X58), X59) :- split(X57, X59, X58).\nand substitutionT30 -> T36,\nX56 -> T36,\nT31 -> T37,\nX57 -> T37,\nX58 -> X60,\nX43 -> .(T36, X60),\nX42 -> X61,\nX59 -> X61" }, { "from": 544, "to": 545, "label": "CASE" }, { "from": 545, "to": 546, "label": "PARALLEL" }, { "from": 545, "to": 547, "label": "PARALLEL" }, { "from": 546, "to": 548, "label": "EVAL with clause\nsplit([], [], []).\nand substitutionT37 -> [],\nX61 -> [],\nX60 -> []" }, { "from": 546, "to": 549, "label": "EVAL-BACKTRACK" }, { "from": 547, "to": 551, "label": "EVAL with clause\nsplit(.(X74, X75), .(X74, X76), X77) :- split(X75, X77, X76).\nand substitutionX74 -> T42,\nX75 -> T43,\nT37 -> .(T42, T43),\nX76 -> X78,\nX61 -> .(T42, X78),\nX60 -> X79,\nX77 -> X79" }, { "from": 547, "to": 552, "label": "EVAL-BACKTRACK" }, { "from": 548, "to": 550, "label": "SUCCESS" }, { "from": 551, "to": 544, "label": "INSTANCE with matching:\nT37 -> T43\nX61 -> X79\nX60 -> X78" }, { "from": 560, "to": 13, "label": "INSTANCE with matching:\nT1 -> T21\nT2 -> X24" }, { "from": 561, "to": 563, "label": "SPLIT 1" }, { "from": 561, "to": 564, "label": "SPLIT 2\nnew knowledge:\nT22 is ground\nT45 is ground\nreplacements:X25 -> T45" }, { "from": 563, "to": 13, "label": "INSTANCE with matching:\nT1 -> T22\nT2 -> X25" }, { "from": 564, "to": 565, "label": "CASE" }, { "from": 565, "to": 566, "label": "PARALLEL" }, { "from": 565, "to": 567, "label": "PARALLEL" }, { "from": 566, "to": 568, "label": "EVAL with clause\nmerge(X86, [], X86).\nand substitutionT44 -> T52,\nX86 -> T52,\nT45 -> [],\nT20 -> T52" }, { "from": 566, "to": 569, "label": "EVAL-BACKTRACK" }, { "from": 567, "to": 571, "label": "PARALLEL" }, { "from": 567, "to": 572, "label": "PARALLEL" }, { "from": 568, "to": 570, "label": "SUCCESS" }, { "from": 571, "to": 574, "label": "EVAL with clause\nmerge([], X91, X91).\nand substitutionT44 -> [],\nT45 -> T57,\nX91 -> T57,\nT20 -> T57" }, { "from": 571, "to": 575, "label": "EVAL-BACKTRACK" }, { "from": 572, "to": 580, "label": "PARALLEL" }, { "from": 572, "to": 581, "label": "PARALLEL" }, { "from": 574, "to": 576, "label": "SUCCESS" }, { "from": 580, "to": 582, "label": "EVAL with clause\nmerge(.(X112, X113), .(X114, X115), .(X112, X116)) :- ','(le(X112, X114), merge(X113, .(X114, X115), X116)).\nand substitutionX112 -> T78,\nX113 -> T79,\nT44 -> .(T78, T79),\nX114 -> T80,\nX115 -> T81,\nT45 -> .(T80, T81),\nX116 -> T83,\nT20 -> .(T78, T83),\nT82 -> T83" }, { "from": 580, "to": 583, "label": "EVAL-BACKTRACK" }, { "from": 581, "to": 623, "label": "EVAL with clause\nmerge(.(X150, X151), .(X152, X153), .(X152, X154)) :- ','(gt(X150, X152), merge(.(X150, X151), X153, X154)).\nand substitutionX150 -> T117,\nX151 -> T118,\nT44 -> .(T117, T118),\nX152 -> T119,\nX153 -> T120,\nT45 -> .(T119, T120),\nX154 -> T122,\nT20 -> .(T119, T122),\nT121 -> T122" }, { "from": 581, "to": 625, "label": "EVAL-BACKTRACK" }, { "from": 582, "to": 584, "label": "SPLIT 1" }, { "from": 582, "to": 585, "label": "SPLIT 2\nnew knowledge:\nT78 is ground\nT80 is ground" }, { "from": 584, "to": 586, "label": "CASE" }, { "from": 585, "to": 564, "label": "INSTANCE with matching:\nT44 -> T79\nT45 -> .(T80, T81)\nT20 -> T83" }, { "from": 586, "to": 587, "label": "PARALLEL" }, { "from": 586, "to": 588, "label": "PARALLEL" }, { "from": 587, "to": 589, "label": "EVAL with clause\nle(s(X129), s(X130)) :- le(X129, X130).\nand substitutionX129 -> T96,\nT78 -> s(T96),\nX130 -> T97,\nT80 -> s(T97)" }, { "from": 587, "to": 590, "label": "EVAL-BACKTRACK" }, { "from": 588, "to": 592, "label": "PARALLEL" }, { "from": 588, "to": 614, "label": "PARALLEL" }, { "from": 589, "to": 584, "label": "INSTANCE with matching:\nT78 -> T96\nT80 -> T97" }, { "from": 592, "to": 615, "label": "EVAL with clause\nle(0, s(X137)).\nand substitutionT78 -> 0,\nX137 -> T104,\nT80 -> s(T104)" }, { "from": 592, "to": 616, "label": "EVAL-BACKTRACK" }, { "from": 614, "to": 618, "label": "EVAL with clause\nle(0, 0).\nand substitutionT78 -> 0,\nT80 -> 0" }, { "from": 614, "to": 619, "label": "EVAL-BACKTRACK" }, { "from": 615, "to": 617, "label": "SUCCESS" }, { "from": 618, "to": 620, "label": "SUCCESS" }, { "from": 623, "to": 627, "label": "SPLIT 1" }, { "from": 623, "to": 628, "label": "SPLIT 2\nnew knowledge:\nT117 is ground\nT119 is ground" }, { "from": 627, "to": 630, "label": "CASE" }, { "from": 628, "to": 564, "label": "INSTANCE with matching:\nT44 -> .(T117, T118)\nT45 -> T120\nT20 -> T122" }, { "from": 630, "to": 635, "label": "PARALLEL" }, { "from": 630, "to": 637, "label": "PARALLEL" }, { "from": 635, "to": 639, "label": "EVAL with clause\ngt(s(X167), s(X168)) :- gt(X167, X168).\nand substitutionX167 -> T135,\nT117 -> s(T135),\nX168 -> T136,\nT119 -> s(T136)" }, { "from": 635, "to": 641, "label": "EVAL-BACKTRACK" }, { "from": 637, "to": 643, "label": "EVAL with clause\ngt(s(X173), 0).\nand substitutionX173 -> T141,\nT117 -> s(T141),\nT119 -> 0" }, { "from": 637, "to": 644, "label": "EVAL-BACKTRACK" }, { "from": 639, "to": 627, "label": "INSTANCE with matching:\nT117 -> T135\nT119 -> T136" }, { "from": 643, "to": 645, "label": "SUCCESS" } ], "type": "Graph" } } ---------------------------------------- (2) Obligation: Q restricted rewrite system: The TRS R consists of the following rules: f13_in([]) -> f13_out1([]) f13_in(.(T7, [])) -> f13_out1(.(T7, [])) f13_in(.(T16, .(T17, T18))) -> U1(f389_in(T16, T17, T18), .(T16, .(T17, T18))) U1(f389_out1(X22, X23, X24, X25, T20), .(T16, .(T17, T18))) -> f13_out1(T20) f544_in([]) -> f544_out1([], []) f544_in(.(T42, T43)) -> U2(f544_in(T43), .(T42, T43)) U2(f544_out1(X79, X78), .(T42, T43)) -> f544_out1(.(T42, X78), X79) f564_in(T52, []) -> f564_out1(T52) f564_in([], T57) -> f564_out1(T57) f564_in(.(T78, T79), .(T80, T81)) -> U3(f582_in(T78, T80, T79, T81), .(T78, T79), .(T80, T81)) U3(f582_out1(T83), .(T78, T79), .(T80, T81)) -> f564_out1(.(T78, T83)) f564_in(.(T117, T118), .(T119, T120)) -> U4(f623_in(T117, T119, T118, T120), .(T117, T118), .(T119, T120)) U4(f623_out1(T122), .(T117, T118), .(T119, T120)) -> f564_out1(.(T119, T122)) f584_in(s(T96), s(T97)) -> U5(f584_in(T96, T97), s(T96), s(T97)) U5(f584_out1, s(T96), s(T97)) -> f584_out1 f584_in(0, s(T104)) -> f584_out1 f584_in(0, 0) -> f584_out1 f627_in(s(T135), s(T136)) -> U6(f627_in(T135, T136), s(T135), s(T136)) U6(f627_out1, s(T135), s(T136)) -> f627_out1 f627_in(s(T141), 0) -> f627_out1 f496_in(T29, T36, T37) -> U7(f544_in(T37), T29, T36, T37) U7(f544_out1(X61, X60), T29, T36, T37) -> f496_out1(.(T29, X61), .(T36, X60)) f389_in(T16, T17, T18) -> U8(f496_in(T16, T17, T18), T16, T17, T18) U8(f496_out1(T21, T22), T16, T17, T18) -> U9(f499_in(T21, T22), T16, T17, T18, T21, T22) U9(f499_out1(X24, X25, T20), T16, T17, T18, T21, T22) -> f389_out1(T21, T22, X24, X25, T20) f499_in(T21, T22) -> U10(f13_in(T21), T21, T22) U10(f13_out1(T44), T21, T22) -> U11(f561_in(T22, T44), T21, T22, T44) U11(f561_out1(X25, T20), T21, T22, T44) -> f499_out1(T44, X25, T20) f561_in(T22, T44) -> U12(f13_in(T22), T22, T44) U12(f13_out1(T45), T22, T44) -> U13(f564_in(T44, T45), T22, T44, T45) U13(f564_out1(T20), T22, T44, T45) -> f561_out1(T45, T20) f582_in(T78, T80, T79, T81) -> U14(f584_in(T78, T80), T78, T80, T79, T81) U14(f584_out1, T78, T80, T79, T81) -> U15(f564_in(T79, .(T80, T81)), T78, T80, T79, T81) U15(f564_out1(T83), T78, T80, T79, T81) -> f582_out1(T83) f623_in(T117, T119, T118, T120) -> U16(f627_in(T117, T119), T117, T119, T118, T120) U16(f627_out1, T117, T119, T118, T120) -> U17(f564_in(.(T117, T118), T120), T117, T119, T118, T120) U17(f564_out1(T122), T117, T119, T118, T120) -> f623_out1(T122) Q is empty. ---------------------------------------- (3) DependencyPairsProof (EQUIVALENT) Using Dependency Pairs [AG00,LPAR04] we result in the following initial DP problem. ---------------------------------------- (4) Obligation: Q DP problem: The TRS P consists of the following rules: F13_IN(.(T16, .(T17, T18))) -> U1^1(f389_in(T16, T17, T18), .(T16, .(T17, T18))) F13_IN(.(T16, .(T17, T18))) -> F389_IN(T16, T17, T18) F544_IN(.(T42, T43)) -> U2^1(f544_in(T43), .(T42, T43)) F544_IN(.(T42, T43)) -> F544_IN(T43) F564_IN(.(T78, T79), .(T80, T81)) -> U3^1(f582_in(T78, T80, T79, T81), .(T78, T79), .(T80, T81)) F564_IN(.(T78, T79), .(T80, T81)) -> F582_IN(T78, T80, T79, T81) F564_IN(.(T117, T118), .(T119, T120)) -> U4^1(f623_in(T117, T119, T118, T120), .(T117, T118), .(T119, T120)) F564_IN(.(T117, T118), .(T119, T120)) -> F623_IN(T117, T119, T118, T120) F584_IN(s(T96), s(T97)) -> U5^1(f584_in(T96, T97), s(T96), s(T97)) F584_IN(s(T96), s(T97)) -> F584_IN(T96, T97) F627_IN(s(T135), s(T136)) -> U6^1(f627_in(T135, T136), s(T135), s(T136)) F627_IN(s(T135), s(T136)) -> F627_IN(T135, T136) F496_IN(T29, T36, T37) -> U7^1(f544_in(T37), T29, T36, T37) F496_IN(T29, T36, T37) -> F544_IN(T37) F389_IN(T16, T17, T18) -> U8^1(f496_in(T16, T17, T18), T16, T17, T18) F389_IN(T16, T17, T18) -> F496_IN(T16, T17, T18) U8^1(f496_out1(T21, T22), T16, T17, T18) -> U9^1(f499_in(T21, T22), T16, T17, T18, T21, T22) U8^1(f496_out1(T21, T22), T16, T17, T18) -> F499_IN(T21, T22) F499_IN(T21, T22) -> U10^1(f13_in(T21), T21, T22) F499_IN(T21, T22) -> F13_IN(T21) U10^1(f13_out1(T44), T21, T22) -> U11^1(f561_in(T22, T44), T21, T22, T44) U10^1(f13_out1(T44), T21, T22) -> F561_IN(T22, T44) F561_IN(T22, T44) -> U12^1(f13_in(T22), T22, T44) F561_IN(T22, T44) -> F13_IN(T22) U12^1(f13_out1(T45), T22, T44) -> U13^1(f564_in(T44, T45), T22, T44, T45) U12^1(f13_out1(T45), T22, T44) -> F564_IN(T44, T45) F582_IN(T78, T80, T79, T81) -> U14^1(f584_in(T78, T80), T78, T80, T79, T81) F582_IN(T78, T80, T79, T81) -> F584_IN(T78, T80) U14^1(f584_out1, T78, T80, T79, T81) -> U15^1(f564_in(T79, .(T80, T81)), T78, T80, T79, T81) U14^1(f584_out1, T78, T80, T79, T81) -> F564_IN(T79, .(T80, T81)) F623_IN(T117, T119, T118, T120) -> U16^1(f627_in(T117, T119), T117, T119, T118, T120) F623_IN(T117, T119, T118, T120) -> F627_IN(T117, T119) U16^1(f627_out1, T117, T119, T118, T120) -> U17^1(f564_in(.(T117, T118), T120), T117, T119, T118, T120) U16^1(f627_out1, T117, T119, T118, T120) -> F564_IN(.(T117, T118), T120) The TRS R consists of the following rules: f13_in([]) -> f13_out1([]) f13_in(.(T7, [])) -> f13_out1(.(T7, [])) f13_in(.(T16, .(T17, T18))) -> U1(f389_in(T16, T17, T18), .(T16, .(T17, T18))) U1(f389_out1(X22, X23, X24, X25, T20), .(T16, .(T17, T18))) -> f13_out1(T20) f544_in([]) -> f544_out1([], []) f544_in(.(T42, T43)) -> U2(f544_in(T43), .(T42, T43)) U2(f544_out1(X79, X78), .(T42, T43)) -> f544_out1(.(T42, X78), X79) f564_in(T52, []) -> f564_out1(T52) f564_in([], T57) -> f564_out1(T57) f564_in(.(T78, T79), .(T80, T81)) -> U3(f582_in(T78, T80, T79, T81), .(T78, T79), .(T80, T81)) U3(f582_out1(T83), .(T78, T79), .(T80, T81)) -> f564_out1(.(T78, T83)) f564_in(.(T117, T118), .(T119, T120)) -> U4(f623_in(T117, T119, T118, T120), .(T117, T118), .(T119, T120)) U4(f623_out1(T122), .(T117, T118), .(T119, T120)) -> f564_out1(.(T119, T122)) f584_in(s(T96), s(T97)) -> U5(f584_in(T96, T97), s(T96), s(T97)) U5(f584_out1, s(T96), s(T97)) -> f584_out1 f584_in(0, s(T104)) -> f584_out1 f584_in(0, 0) -> f584_out1 f627_in(s(T135), s(T136)) -> U6(f627_in(T135, T136), s(T135), s(T136)) U6(f627_out1, s(T135), s(T136)) -> f627_out1 f627_in(s(T141), 0) -> f627_out1 f496_in(T29, T36, T37) -> U7(f544_in(T37), T29, T36, T37) U7(f544_out1(X61, X60), T29, T36, T37) -> f496_out1(.(T29, X61), .(T36, X60)) f389_in(T16, T17, T18) -> U8(f496_in(T16, T17, T18), T16, T17, T18) U8(f496_out1(T21, T22), T16, T17, T18) -> U9(f499_in(T21, T22), T16, T17, T18, T21, T22) U9(f499_out1(X24, X25, T20), T16, T17, T18, T21, T22) -> f389_out1(T21, T22, X24, X25, T20) f499_in(T21, T22) -> U10(f13_in(T21), T21, T22) U10(f13_out1(T44), T21, T22) -> U11(f561_in(T22, T44), T21, T22, T44) U11(f561_out1(X25, T20), T21, T22, T44) -> f499_out1(T44, X25, T20) f561_in(T22, T44) -> U12(f13_in(T22), T22, T44) U12(f13_out1(T45), T22, T44) -> U13(f564_in(T44, T45), T22, T44, T45) U13(f564_out1(T20), T22, T44, T45) -> f561_out1(T45, T20) f582_in(T78, T80, T79, T81) -> U14(f584_in(T78, T80), T78, T80, T79, T81) U14(f584_out1, T78, T80, T79, T81) -> U15(f564_in(T79, .(T80, T81)), T78, T80, T79, T81) U15(f564_out1(T83), T78, T80, T79, T81) -> f582_out1(T83) f623_in(T117, T119, T118, T120) -> U16(f627_in(T117, T119), T117, T119, T118, T120) U16(f627_out1, T117, T119, T118, T120) -> U17(f564_in(.(T117, T118), T120), T117, T119, T118, T120) U17(f564_out1(T122), T117, T119, T118, T120) -> f623_out1(T122) Q is empty. We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (5) DependencyGraphProof (EQUIVALENT) The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 5 SCCs with 18 less nodes. ---------------------------------------- (6) Complex Obligation (AND) ---------------------------------------- (7) Obligation: Q DP problem: The TRS P consists of the following rules: F627_IN(s(T135), s(T136)) -> F627_IN(T135, T136) The TRS R consists of the following rules: f13_in([]) -> f13_out1([]) f13_in(.(T7, [])) -> f13_out1(.(T7, [])) f13_in(.(T16, .(T17, T18))) -> U1(f389_in(T16, T17, T18), .(T16, .(T17, T18))) U1(f389_out1(X22, X23, X24, X25, T20), .(T16, .(T17, T18))) -> f13_out1(T20) f544_in([]) -> f544_out1([], []) f544_in(.(T42, T43)) -> U2(f544_in(T43), .(T42, T43)) U2(f544_out1(X79, X78), .(T42, T43)) -> f544_out1(.(T42, X78), X79) f564_in(T52, []) -> f564_out1(T52) f564_in([], T57) -> f564_out1(T57) f564_in(.(T78, T79), .(T80, T81)) -> U3(f582_in(T78, T80, T79, T81), .(T78, T79), .(T80, T81)) U3(f582_out1(T83), .(T78, T79), .(T80, T81)) -> f564_out1(.(T78, T83)) f564_in(.(T117, T118), .(T119, T120)) -> U4(f623_in(T117, T119, T118, T120), .(T117, T118), .(T119, T120)) U4(f623_out1(T122), .(T117, T118), .(T119, T120)) -> f564_out1(.(T119, T122)) f584_in(s(T96), s(T97)) -> U5(f584_in(T96, T97), s(T96), s(T97)) U5(f584_out1, s(T96), s(T97)) -> f584_out1 f584_in(0, s(T104)) -> f584_out1 f584_in(0, 0) -> f584_out1 f627_in(s(T135), s(T136)) -> U6(f627_in(T135, T136), s(T135), s(T136)) U6(f627_out1, s(T135), s(T136)) -> f627_out1 f627_in(s(T141), 0) -> f627_out1 f496_in(T29, T36, T37) -> U7(f544_in(T37), T29, T36, T37) U7(f544_out1(X61, X60), T29, T36, T37) -> f496_out1(.(T29, X61), .(T36, X60)) f389_in(T16, T17, T18) -> U8(f496_in(T16, T17, T18), T16, T17, T18) U8(f496_out1(T21, T22), T16, T17, T18) -> U9(f499_in(T21, T22), T16, T17, T18, T21, T22) U9(f499_out1(X24, X25, T20), T16, T17, T18, T21, T22) -> f389_out1(T21, T22, X24, X25, T20) f499_in(T21, T22) -> U10(f13_in(T21), T21, T22) U10(f13_out1(T44), T21, T22) -> U11(f561_in(T22, T44), T21, T22, T44) U11(f561_out1(X25, T20), T21, T22, T44) -> f499_out1(T44, X25, T20) f561_in(T22, T44) -> U12(f13_in(T22), T22, T44) U12(f13_out1(T45), T22, T44) -> U13(f564_in(T44, T45), T22, T44, T45) U13(f564_out1(T20), T22, T44, T45) -> f561_out1(T45, T20) f582_in(T78, T80, T79, T81) -> U14(f584_in(T78, T80), T78, T80, T79, T81) U14(f584_out1, T78, T80, T79, T81) -> U15(f564_in(T79, .(T80, T81)), T78, T80, T79, T81) U15(f564_out1(T83), T78, T80, T79, T81) -> f582_out1(T83) f623_in(T117, T119, T118, T120) -> U16(f627_in(T117, T119), T117, T119, T118, T120) U16(f627_out1, T117, T119, T118, T120) -> U17(f564_in(.(T117, T118), T120), T117, T119, T118, T120) U17(f564_out1(T122), T117, T119, T118, T120) -> f623_out1(T122) Q is empty. We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (8) UsableRulesProof (EQUIVALENT) We can use the usable rules and reduction pair processor [LPAR04] with the Ce-compatible extension of the polynomial order that maps every function symbol to the sum of its arguments. Then, we can delete all non-usable rules [FROCOS05] from R. ---------------------------------------- (9) Obligation: Q DP problem: The TRS P consists of the following rules: F627_IN(s(T135), s(T136)) -> F627_IN(T135, T136) R is empty. Q is empty. We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (10) QDPSizeChangeProof (EQUIVALENT) By using the subterm criterion [SUBTERM_CRITERION] together with the size-change analysis [AAECC05] we have proven that there are no infinite chains for this DP problem. From the DPs we obtained the following set of size-change graphs: *F627_IN(s(T135), s(T136)) -> F627_IN(T135, T136) The graph contains the following edges 1 > 1, 2 > 2 ---------------------------------------- (11) YES ---------------------------------------- (12) Obligation: Q DP problem: The TRS P consists of the following rules: F584_IN(s(T96), s(T97)) -> F584_IN(T96, T97) The TRS R consists of the following rules: f13_in([]) -> f13_out1([]) f13_in(.(T7, [])) -> f13_out1(.(T7, [])) f13_in(.(T16, .(T17, T18))) -> U1(f389_in(T16, T17, T18), .(T16, .(T17, T18))) U1(f389_out1(X22, X23, X24, X25, T20), .(T16, .(T17, T18))) -> f13_out1(T20) f544_in([]) -> f544_out1([], []) f544_in(.(T42, T43)) -> U2(f544_in(T43), .(T42, T43)) U2(f544_out1(X79, X78), .(T42, T43)) -> f544_out1(.(T42, X78), X79) f564_in(T52, []) -> f564_out1(T52) f564_in([], T57) -> f564_out1(T57) f564_in(.(T78, T79), .(T80, T81)) -> U3(f582_in(T78, T80, T79, T81), .(T78, T79), .(T80, T81)) U3(f582_out1(T83), .(T78, T79), .(T80, T81)) -> f564_out1(.(T78, T83)) f564_in(.(T117, T118), .(T119, T120)) -> U4(f623_in(T117, T119, T118, T120), .(T117, T118), .(T119, T120)) U4(f623_out1(T122), .(T117, T118), .(T119, T120)) -> f564_out1(.(T119, T122)) f584_in(s(T96), s(T97)) -> U5(f584_in(T96, T97), s(T96), s(T97)) U5(f584_out1, s(T96), s(T97)) -> f584_out1 f584_in(0, s(T104)) -> f584_out1 f584_in(0, 0) -> f584_out1 f627_in(s(T135), s(T136)) -> U6(f627_in(T135, T136), s(T135), s(T136)) U6(f627_out1, s(T135), s(T136)) -> f627_out1 f627_in(s(T141), 0) -> f627_out1 f496_in(T29, T36, T37) -> U7(f544_in(T37), T29, T36, T37) U7(f544_out1(X61, X60), T29, T36, T37) -> f496_out1(.(T29, X61), .(T36, X60)) f389_in(T16, T17, T18) -> U8(f496_in(T16, T17, T18), T16, T17, T18) U8(f496_out1(T21, T22), T16, T17, T18) -> U9(f499_in(T21, T22), T16, T17, T18, T21, T22) U9(f499_out1(X24, X25, T20), T16, T17, T18, T21, T22) -> f389_out1(T21, T22, X24, X25, T20) f499_in(T21, T22) -> U10(f13_in(T21), T21, T22) U10(f13_out1(T44), T21, T22) -> U11(f561_in(T22, T44), T21, T22, T44) U11(f561_out1(X25, T20), T21, T22, T44) -> f499_out1(T44, X25, T20) f561_in(T22, T44) -> U12(f13_in(T22), T22, T44) U12(f13_out1(T45), T22, T44) -> U13(f564_in(T44, T45), T22, T44, T45) U13(f564_out1(T20), T22, T44, T45) -> f561_out1(T45, T20) f582_in(T78, T80, T79, T81) -> U14(f584_in(T78, T80), T78, T80, T79, T81) U14(f584_out1, T78, T80, T79, T81) -> U15(f564_in(T79, .(T80, T81)), T78, T80, T79, T81) U15(f564_out1(T83), T78, T80, T79, T81) -> f582_out1(T83) f623_in(T117, T119, T118, T120) -> U16(f627_in(T117, T119), T117, T119, T118, T120) U16(f627_out1, T117, T119, T118, T120) -> U17(f564_in(.(T117, T118), T120), T117, T119, T118, T120) U17(f564_out1(T122), T117, T119, T118, T120) -> f623_out1(T122) Q is empty. We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (13) UsableRulesProof (EQUIVALENT) We can use the usable rules and reduction pair processor [LPAR04] with the Ce-compatible extension of the polynomial order that maps every function symbol to the sum of its arguments. Then, we can delete all non-usable rules [FROCOS05] from R. ---------------------------------------- (14) Obligation: Q DP problem: The TRS P consists of the following rules: F584_IN(s(T96), s(T97)) -> F584_IN(T96, T97) R is empty. Q is empty. We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (15) QDPSizeChangeProof (EQUIVALENT) By using the subterm criterion [SUBTERM_CRITERION] together with the size-change analysis [AAECC05] we have proven that there are no infinite chains for this DP problem. From the DPs we obtained the following set of size-change graphs: *F584_IN(s(T96), s(T97)) -> F584_IN(T96, T97) The graph contains the following edges 1 > 1, 2 > 2 ---------------------------------------- (16) YES ---------------------------------------- (17) Obligation: Q DP problem: The TRS P consists of the following rules: F564_IN(.(T78, T79), .(T80, T81)) -> F582_IN(T78, T80, T79, T81) F582_IN(T78, T80, T79, T81) -> U14^1(f584_in(T78, T80), T78, T80, T79, T81) U14^1(f584_out1, T78, T80, T79, T81) -> F564_IN(T79, .(T80, T81)) F564_IN(.(T117, T118), .(T119, T120)) -> F623_IN(T117, T119, T118, T120) F623_IN(T117, T119, T118, T120) -> U16^1(f627_in(T117, T119), T117, T119, T118, T120) U16^1(f627_out1, T117, T119, T118, T120) -> F564_IN(.(T117, T118), T120) The TRS R consists of the following rules: f13_in([]) -> f13_out1([]) f13_in(.(T7, [])) -> f13_out1(.(T7, [])) f13_in(.(T16, .(T17, T18))) -> U1(f389_in(T16, T17, T18), .(T16, .(T17, T18))) U1(f389_out1(X22, X23, X24, X25, T20), .(T16, .(T17, T18))) -> f13_out1(T20) f544_in([]) -> f544_out1([], []) f544_in(.(T42, T43)) -> U2(f544_in(T43), .(T42, T43)) U2(f544_out1(X79, X78), .(T42, T43)) -> f544_out1(.(T42, X78), X79) f564_in(T52, []) -> f564_out1(T52) f564_in([], T57) -> f564_out1(T57) f564_in(.(T78, T79), .(T80, T81)) -> U3(f582_in(T78, T80, T79, T81), .(T78, T79), .(T80, T81)) U3(f582_out1(T83), .(T78, T79), .(T80, T81)) -> f564_out1(.(T78, T83)) f564_in(.(T117, T118), .(T119, T120)) -> U4(f623_in(T117, T119, T118, T120), .(T117, T118), .(T119, T120)) U4(f623_out1(T122), .(T117, T118), .(T119, T120)) -> f564_out1(.(T119, T122)) f584_in(s(T96), s(T97)) -> U5(f584_in(T96, T97), s(T96), s(T97)) U5(f584_out1, s(T96), s(T97)) -> f584_out1 f584_in(0, s(T104)) -> f584_out1 f584_in(0, 0) -> f584_out1 f627_in(s(T135), s(T136)) -> U6(f627_in(T135, T136), s(T135), s(T136)) U6(f627_out1, s(T135), s(T136)) -> f627_out1 f627_in(s(T141), 0) -> f627_out1 f496_in(T29, T36, T37) -> U7(f544_in(T37), T29, T36, T37) U7(f544_out1(X61, X60), T29, T36, T37) -> f496_out1(.(T29, X61), .(T36, X60)) f389_in(T16, T17, T18) -> U8(f496_in(T16, T17, T18), T16, T17, T18) U8(f496_out1(T21, T22), T16, T17, T18) -> U9(f499_in(T21, T22), T16, T17, T18, T21, T22) U9(f499_out1(X24, X25, T20), T16, T17, T18, T21, T22) -> f389_out1(T21, T22, X24, X25, T20) f499_in(T21, T22) -> U10(f13_in(T21), T21, T22) U10(f13_out1(T44), T21, T22) -> U11(f561_in(T22, T44), T21, T22, T44) U11(f561_out1(X25, T20), T21, T22, T44) -> f499_out1(T44, X25, T20) f561_in(T22, T44) -> U12(f13_in(T22), T22, T44) U12(f13_out1(T45), T22, T44) -> U13(f564_in(T44, T45), T22, T44, T45) U13(f564_out1(T20), T22, T44, T45) -> f561_out1(T45, T20) f582_in(T78, T80, T79, T81) -> U14(f584_in(T78, T80), T78, T80, T79, T81) U14(f584_out1, T78, T80, T79, T81) -> U15(f564_in(T79, .(T80, T81)), T78, T80, T79, T81) U15(f564_out1(T83), T78, T80, T79, T81) -> f582_out1(T83) f623_in(T117, T119, T118, T120) -> U16(f627_in(T117, T119), T117, T119, T118, T120) U16(f627_out1, T117, T119, T118, T120) -> U17(f564_in(.(T117, T118), T120), T117, T119, T118, T120) U17(f564_out1(T122), T117, T119, T118, T120) -> f623_out1(T122) Q is empty. We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (18) QDPOrderProof (EQUIVALENT) We use the reduction pair processor [LPAR04,JAR06]. The following pairs can be oriented strictly and are deleted. F564_IN(.(T78, T79), .(T80, T81)) -> F582_IN(T78, T80, T79, T81) F564_IN(.(T117, T118), .(T119, T120)) -> F623_IN(T117, T119, T118, T120) U16^1(f627_out1, T117, T119, T118, T120) -> F564_IN(.(T117, T118), T120) The remaining pairs can at least be oriented weakly. Used ordering: Polynomial Order [NEGPOLO,POLO] with Interpretation: POL( U14^1_5(x_1, ..., x_5) ) = x_1 + 2x_3 + 2x_4 + 2x_5 + 2 POL( f584_in_2(x_1, x_2) ) = x_1 POL( s_1(x_1) ) = 2x_1 + 2 POL( U5_3(x_1, ..., x_3) ) = 2 POL( 0 ) = 2 POL( f584_out1 ) = 2 POL( U16^1_5(x_1, ..., x_5) ) = 2x_1 + 2x_2 + 2x_4 + 2x_5 + 2 POL( f627_in_2(x_1, x_2) ) = x_2 POL( U6_3(x_1, ..., x_3) ) = max{0, 2x_1 - 2} POL( f627_out1 ) = 2 POL( F564_IN_2(x_1, x_2) ) = 2x_1 + 2x_2 POL( ._2(x_1, x_2) ) = x_1 + x_2 + 2 POL( F582_IN_4(x_1, ..., x_4) ) = x_1 + 2x_2 + 2x_3 + 2x_4 + 2 POL( F623_IN_4(x_1, ..., x_4) ) = 2x_1 + 2x_2 + 2x_3 + 2x_4 + 2 The following usable rules [FROCOS05] with respect to the argument filtering of the ordering [JAR06] were oriented: f584_in(s(T96), s(T97)) -> U5(f584_in(T96, T97), s(T96), s(T97)) f584_in(0, s(T104)) -> f584_out1 f584_in(0, 0) -> f584_out1 f627_in(s(T135), s(T136)) -> U6(f627_in(T135, T136), s(T135), s(T136)) f627_in(s(T141), 0) -> f627_out1 U5(f584_out1, s(T96), s(T97)) -> f584_out1 U6(f627_out1, s(T135), s(T136)) -> f627_out1 ---------------------------------------- (19) Obligation: Q DP problem: The TRS P consists of the following rules: F582_IN(T78, T80, T79, T81) -> U14^1(f584_in(T78, T80), T78, T80, T79, T81) U14^1(f584_out1, T78, T80, T79, T81) -> F564_IN(T79, .(T80, T81)) F623_IN(T117, T119, T118, T120) -> U16^1(f627_in(T117, T119), T117, T119, T118, T120) The TRS R consists of the following rules: f13_in([]) -> f13_out1([]) f13_in(.(T7, [])) -> f13_out1(.(T7, [])) f13_in(.(T16, .(T17, T18))) -> U1(f389_in(T16, T17, T18), .(T16, .(T17, T18))) U1(f389_out1(X22, X23, X24, X25, T20), .(T16, .(T17, T18))) -> f13_out1(T20) f544_in([]) -> f544_out1([], []) f544_in(.(T42, T43)) -> U2(f544_in(T43), .(T42, T43)) U2(f544_out1(X79, X78), .(T42, T43)) -> f544_out1(.(T42, X78), X79) f564_in(T52, []) -> f564_out1(T52) f564_in([], T57) -> f564_out1(T57) f564_in(.(T78, T79), .(T80, T81)) -> U3(f582_in(T78, T80, T79, T81), .(T78, T79), .(T80, T81)) U3(f582_out1(T83), .(T78, T79), .(T80, T81)) -> f564_out1(.(T78, T83)) f564_in(.(T117, T118), .(T119, T120)) -> U4(f623_in(T117, T119, T118, T120), .(T117, T118), .(T119, T120)) U4(f623_out1(T122), .(T117, T118), .(T119, T120)) -> f564_out1(.(T119, T122)) f584_in(s(T96), s(T97)) -> U5(f584_in(T96, T97), s(T96), s(T97)) U5(f584_out1, s(T96), s(T97)) -> f584_out1 f584_in(0, s(T104)) -> f584_out1 f584_in(0, 0) -> f584_out1 f627_in(s(T135), s(T136)) -> U6(f627_in(T135, T136), s(T135), s(T136)) U6(f627_out1, s(T135), s(T136)) -> f627_out1 f627_in(s(T141), 0) -> f627_out1 f496_in(T29, T36, T37) -> U7(f544_in(T37), T29, T36, T37) U7(f544_out1(X61, X60), T29, T36, T37) -> f496_out1(.(T29, X61), .(T36, X60)) f389_in(T16, T17, T18) -> U8(f496_in(T16, T17, T18), T16, T17, T18) U8(f496_out1(T21, T22), T16, T17, T18) -> U9(f499_in(T21, T22), T16, T17, T18, T21, T22) U9(f499_out1(X24, X25, T20), T16, T17, T18, T21, T22) -> f389_out1(T21, T22, X24, X25, T20) f499_in(T21, T22) -> U10(f13_in(T21), T21, T22) U10(f13_out1(T44), T21, T22) -> U11(f561_in(T22, T44), T21, T22, T44) U11(f561_out1(X25, T20), T21, T22, T44) -> f499_out1(T44, X25, T20) f561_in(T22, T44) -> U12(f13_in(T22), T22, T44) U12(f13_out1(T45), T22, T44) -> U13(f564_in(T44, T45), T22, T44, T45) U13(f564_out1(T20), T22, T44, T45) -> f561_out1(T45, T20) f582_in(T78, T80, T79, T81) -> U14(f584_in(T78, T80), T78, T80, T79, T81) U14(f584_out1, T78, T80, T79, T81) -> U15(f564_in(T79, .(T80, T81)), T78, T80, T79, T81) U15(f564_out1(T83), T78, T80, T79, T81) -> f582_out1(T83) f623_in(T117, T119, T118, T120) -> U16(f627_in(T117, T119), T117, T119, T118, T120) U16(f627_out1, T117, T119, T118, T120) -> U17(f564_in(.(T117, T118), T120), T117, T119, T118, T120) U17(f564_out1(T122), T117, T119, T118, T120) -> f623_out1(T122) Q is empty. We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (20) DependencyGraphProof (EQUIVALENT) The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 0 SCCs with 3 less nodes. ---------------------------------------- (21) TRUE ---------------------------------------- (22) Obligation: Q DP problem: The TRS P consists of the following rules: F544_IN(.(T42, T43)) -> F544_IN(T43) The TRS R consists of the following rules: f13_in([]) -> f13_out1([]) f13_in(.(T7, [])) -> f13_out1(.(T7, [])) f13_in(.(T16, .(T17, T18))) -> U1(f389_in(T16, T17, T18), .(T16, .(T17, T18))) U1(f389_out1(X22, X23, X24, X25, T20), .(T16, .(T17, T18))) -> f13_out1(T20) f544_in([]) -> f544_out1([], []) f544_in(.(T42, T43)) -> U2(f544_in(T43), .(T42, T43)) U2(f544_out1(X79, X78), .(T42, T43)) -> f544_out1(.(T42, X78), X79) f564_in(T52, []) -> f564_out1(T52) f564_in([], T57) -> f564_out1(T57) f564_in(.(T78, T79), .(T80, T81)) -> U3(f582_in(T78, T80, T79, T81), .(T78, T79), .(T80, T81)) U3(f582_out1(T83), .(T78, T79), .(T80, T81)) -> f564_out1(.(T78, T83)) f564_in(.(T117, T118), .(T119, T120)) -> U4(f623_in(T117, T119, T118, T120), .(T117, T118), .(T119, T120)) U4(f623_out1(T122), .(T117, T118), .(T119, T120)) -> f564_out1(.(T119, T122)) f584_in(s(T96), s(T97)) -> U5(f584_in(T96, T97), s(T96), s(T97)) U5(f584_out1, s(T96), s(T97)) -> f584_out1 f584_in(0, s(T104)) -> f584_out1 f584_in(0, 0) -> f584_out1 f627_in(s(T135), s(T136)) -> U6(f627_in(T135, T136), s(T135), s(T136)) U6(f627_out1, s(T135), s(T136)) -> f627_out1 f627_in(s(T141), 0) -> f627_out1 f496_in(T29, T36, T37) -> U7(f544_in(T37), T29, T36, T37) U7(f544_out1(X61, X60), T29, T36, T37) -> f496_out1(.(T29, X61), .(T36, X60)) f389_in(T16, T17, T18) -> U8(f496_in(T16, T17, T18), T16, T17, T18) U8(f496_out1(T21, T22), T16, T17, T18) -> U9(f499_in(T21, T22), T16, T17, T18, T21, T22) U9(f499_out1(X24, X25, T20), T16, T17, T18, T21, T22) -> f389_out1(T21, T22, X24, X25, T20) f499_in(T21, T22) -> U10(f13_in(T21), T21, T22) U10(f13_out1(T44), T21, T22) -> U11(f561_in(T22, T44), T21, T22, T44) U11(f561_out1(X25, T20), T21, T22, T44) -> f499_out1(T44, X25, T20) f561_in(T22, T44) -> U12(f13_in(T22), T22, T44) U12(f13_out1(T45), T22, T44) -> U13(f564_in(T44, T45), T22, T44, T45) U13(f564_out1(T20), T22, T44, T45) -> f561_out1(T45, T20) f582_in(T78, T80, T79, T81) -> U14(f584_in(T78, T80), T78, T80, T79, T81) U14(f584_out1, T78, T80, T79, T81) -> U15(f564_in(T79, .(T80, T81)), T78, T80, T79, T81) U15(f564_out1(T83), T78, T80, T79, T81) -> f582_out1(T83) f623_in(T117, T119, T118, T120) -> U16(f627_in(T117, T119), T117, T119, T118, T120) U16(f627_out1, T117, T119, T118, T120) -> U17(f564_in(.(T117, T118), T120), T117, T119, T118, T120) U17(f564_out1(T122), T117, T119, T118, T120) -> f623_out1(T122) Q is empty. We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (23) UsableRulesProof (EQUIVALENT) We can use the usable rules and reduction pair processor [LPAR04] with the Ce-compatible extension of the polynomial order that maps every function symbol to the sum of its arguments. Then, we can delete all non-usable rules [FROCOS05] from R. ---------------------------------------- (24) Obligation: Q DP problem: The TRS P consists of the following rules: F544_IN(.(T42, T43)) -> F544_IN(T43) R is empty. Q is empty. We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (25) QDPSizeChangeProof (EQUIVALENT) By using the subterm criterion [SUBTERM_CRITERION] together with the size-change analysis [AAECC05] we have proven that there are no infinite chains for this DP problem. From the DPs we obtained the following set of size-change graphs: *F544_IN(.(T42, T43)) -> F544_IN(T43) The graph contains the following edges 1 > 1 ---------------------------------------- (26) YES ---------------------------------------- (27) Obligation: Q DP problem: The TRS P consists of the following rules: F13_IN(.(T16, .(T17, T18))) -> F389_IN(T16, T17, T18) F389_IN(T16, T17, T18) -> U8^1(f496_in(T16, T17, T18), T16, T17, T18) U8^1(f496_out1(T21, T22), T16, T17, T18) -> F499_IN(T21, T22) F499_IN(T21, T22) -> U10^1(f13_in(T21), T21, T22) U10^1(f13_out1(T44), T21, T22) -> F561_IN(T22, T44) F561_IN(T22, T44) -> F13_IN(T22) F499_IN(T21, T22) -> F13_IN(T21) The TRS R consists of the following rules: f13_in([]) -> f13_out1([]) f13_in(.(T7, [])) -> f13_out1(.(T7, [])) f13_in(.(T16, .(T17, T18))) -> U1(f389_in(T16, T17, T18), .(T16, .(T17, T18))) U1(f389_out1(X22, X23, X24, X25, T20), .(T16, .(T17, T18))) -> f13_out1(T20) f544_in([]) -> f544_out1([], []) f544_in(.(T42, T43)) -> U2(f544_in(T43), .(T42, T43)) U2(f544_out1(X79, X78), .(T42, T43)) -> f544_out1(.(T42, X78), X79) f564_in(T52, []) -> f564_out1(T52) f564_in([], T57) -> f564_out1(T57) f564_in(.(T78, T79), .(T80, T81)) -> U3(f582_in(T78, T80, T79, T81), .(T78, T79), .(T80, T81)) U3(f582_out1(T83), .(T78, T79), .(T80, T81)) -> f564_out1(.(T78, T83)) f564_in(.(T117, T118), .(T119, T120)) -> U4(f623_in(T117, T119, T118, T120), .(T117, T118), .(T119, T120)) U4(f623_out1(T122), .(T117, T118), .(T119, T120)) -> f564_out1(.(T119, T122)) f584_in(s(T96), s(T97)) -> U5(f584_in(T96, T97), s(T96), s(T97)) U5(f584_out1, s(T96), s(T97)) -> f584_out1 f584_in(0, s(T104)) -> f584_out1 f584_in(0, 0) -> f584_out1 f627_in(s(T135), s(T136)) -> U6(f627_in(T135, T136), s(T135), s(T136)) U6(f627_out1, s(T135), s(T136)) -> f627_out1 f627_in(s(T141), 0) -> f627_out1 f496_in(T29, T36, T37) -> U7(f544_in(T37), T29, T36, T37) U7(f544_out1(X61, X60), T29, T36, T37) -> f496_out1(.(T29, X61), .(T36, X60)) f389_in(T16, T17, T18) -> U8(f496_in(T16, T17, T18), T16, T17, T18) U8(f496_out1(T21, T22), T16, T17, T18) -> U9(f499_in(T21, T22), T16, T17, T18, T21, T22) U9(f499_out1(X24, X25, T20), T16, T17, T18, T21, T22) -> f389_out1(T21, T22, X24, X25, T20) f499_in(T21, T22) -> U10(f13_in(T21), T21, T22) U10(f13_out1(T44), T21, T22) -> U11(f561_in(T22, T44), T21, T22, T44) U11(f561_out1(X25, T20), T21, T22, T44) -> f499_out1(T44, X25, T20) f561_in(T22, T44) -> U12(f13_in(T22), T22, T44) U12(f13_out1(T45), T22, T44) -> U13(f564_in(T44, T45), T22, T44, T45) U13(f564_out1(T20), T22, T44, T45) -> f561_out1(T45, T20) f582_in(T78, T80, T79, T81) -> U14(f584_in(T78, T80), T78, T80, T79, T81) U14(f584_out1, T78, T80, T79, T81) -> U15(f564_in(T79, .(T80, T81)), T78, T80, T79, T81) U15(f564_out1(T83), T78, T80, T79, T81) -> f582_out1(T83) f623_in(T117, T119, T118, T120) -> U16(f627_in(T117, T119), T117, T119, T118, T120) U16(f627_out1, T117, T119, T118, T120) -> U17(f564_in(.(T117, T118), T120), T117, T119, T118, T120) U17(f564_out1(T122), T117, T119, T118, T120) -> f623_out1(T122) Q is empty. We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (28) QDPOrderProof (EQUIVALENT) We use the reduction pair processor [LPAR04,JAR06]. The following pairs can be oriented strictly and are deleted. F13_IN(.(T16, .(T17, T18))) -> F389_IN(T16, T17, T18) The remaining pairs can at least be oriented weakly. Used ordering: Polynomial Order [NEGPOLO,POLO] with Interpretation: POL( U8^1_4(x_1, ..., x_4) ) = x_1 + 2 POL( U10^1_3(x_1, ..., x_3) ) = x_3 POL( U8_4(x_1, ..., x_4) ) = 1 POL( f496_in_3(x_1, ..., x_3) ) = 2x_3 POL( U7_4(x_1, ..., x_4) ) = x_1 POL( f544_in_1(x_1) ) = 2x_1 POL( f13_in_1(x_1) ) = 2 POL( [] ) = 0 POL( f13_out1_1(x_1) ) = max{0, x_1 - 2} POL( ._2(x_1, x_2) ) = 2x_2 + 1 POL( U1_2(x_1, x_2) ) = 2 POL( f389_in_3(x_1, ..., x_3) ) = x_3 POL( f389_out1_5(x_1, ..., x_5) ) = x_1 + 2x_2 + 2x_3 + 2x_4 + x_5 POL( f496_out1_2(x_1, x_2) ) = max{0, x_1 + x_2 - 2} POL( U9_6(x_1, ..., x_6) ) = max{0, 2x_5 + 2x_6 - 2} POL( f499_in_2(x_1, x_2) ) = 2 POL( f499_out1_3(x_1, ..., x_3) ) = 2x_1 + 2x_3 + 2 POL( U10_3(x_1, ..., x_3) ) = max{0, 2x_3 - 2} POL( U11_4(x_1, ..., x_4) ) = max{0, 2x_1 - 2} POL( f561_in_2(x_1, x_2) ) = 0 POL( f561_out1_2(x_1, x_2) ) = x_1 + x_2 POL( U12_3(x_1, ..., x_3) ) = max{0, x_1 - 1} POL( U13_4(x_1, ..., x_4) ) = 2 POL( f564_in_2(x_1, x_2) ) = max{0, 2x_1 - 2} POL( f544_out1_2(x_1, x_2) ) = 2x_1 + 2x_2 POL( U2_2(x_1, x_2) ) = 2x_1 + 2 POL( f564_out1_1(x_1) ) = max{0, x_1 - 2} POL( U3_3(x_1, ..., x_3) ) = max{0, -2} POL( f582_in_4(x_1, ..., x_4) ) = 2x_1 + 1 POL( U4_3(x_1, ..., x_3) ) = 2x_2 POL( f623_in_4(x_1, ..., x_4) ) = x_1 + 2x_2 + 2 POL( f582_out1_1(x_1) ) = 2x_1 + 2 POL( U14_5(x_1, ..., x_5) ) = max{0, x_5 - 2} POL( f584_in_2(x_1, x_2) ) = 0 POL( s_1(x_1) ) = 0 POL( U5_3(x_1, ..., x_3) ) = 2x_1 + 2 POL( 0 ) = 0 POL( f584_out1 ) = 2 POL( U15_5(x_1, ..., x_5) ) = max{0, x_4 - 2} POL( f623_out1_1(x_1) ) = 2x_1 POL( U16_5(x_1, ..., x_5) ) = max{0, -2} POL( f627_in_2(x_1, x_2) ) = 0 POL( U6_3(x_1, ..., x_3) ) = max{0, -2} POL( f627_out1 ) = 1 POL( U17_5(x_1, ..., x_5) ) = x_4 + 2 POL( F13_IN_1(x_1) ) = x_1 POL( F389_IN_3(x_1, ..., x_3) ) = 2x_3 + 2 POL( F499_IN_2(x_1, x_2) ) = x_1 + x_2 POL( F561_IN_2(x_1, x_2) ) = x_1 The following usable rules [FROCOS05] with respect to the argument filtering of the ordering [JAR06] were oriented: f496_in(T29, T36, T37) -> U7(f544_in(T37), T29, T36, T37) f544_in([]) -> f544_out1([], []) f544_in(.(T42, T43)) -> U2(f544_in(T43), .(T42, T43)) U7(f544_out1(X61, X60), T29, T36, T37) -> f496_out1(.(T29, X61), .(T36, X60)) U2(f544_out1(X79, X78), .(T42, T43)) -> f544_out1(.(T42, X78), X79) ---------------------------------------- (29) Obligation: Q DP problem: The TRS P consists of the following rules: F389_IN(T16, T17, T18) -> U8^1(f496_in(T16, T17, T18), T16, T17, T18) U8^1(f496_out1(T21, T22), T16, T17, T18) -> F499_IN(T21, T22) F499_IN(T21, T22) -> U10^1(f13_in(T21), T21, T22) U10^1(f13_out1(T44), T21, T22) -> F561_IN(T22, T44) F561_IN(T22, T44) -> F13_IN(T22) F499_IN(T21, T22) -> F13_IN(T21) The TRS R consists of the following rules: f13_in([]) -> f13_out1([]) f13_in(.(T7, [])) -> f13_out1(.(T7, [])) f13_in(.(T16, .(T17, T18))) -> U1(f389_in(T16, T17, T18), .(T16, .(T17, T18))) U1(f389_out1(X22, X23, X24, X25, T20), .(T16, .(T17, T18))) -> f13_out1(T20) f544_in([]) -> f544_out1([], []) f544_in(.(T42, T43)) -> U2(f544_in(T43), .(T42, T43)) U2(f544_out1(X79, X78), .(T42, T43)) -> f544_out1(.(T42, X78), X79) f564_in(T52, []) -> f564_out1(T52) f564_in([], T57) -> f564_out1(T57) f564_in(.(T78, T79), .(T80, T81)) -> U3(f582_in(T78, T80, T79, T81), .(T78, T79), .(T80, T81)) U3(f582_out1(T83), .(T78, T79), .(T80, T81)) -> f564_out1(.(T78, T83)) f564_in(.(T117, T118), .(T119, T120)) -> U4(f623_in(T117, T119, T118, T120), .(T117, T118), .(T119, T120)) U4(f623_out1(T122), .(T117, T118), .(T119, T120)) -> f564_out1(.(T119, T122)) f584_in(s(T96), s(T97)) -> U5(f584_in(T96, T97), s(T96), s(T97)) U5(f584_out1, s(T96), s(T97)) -> f584_out1 f584_in(0, s(T104)) -> f584_out1 f584_in(0, 0) -> f584_out1 f627_in(s(T135), s(T136)) -> U6(f627_in(T135, T136), s(T135), s(T136)) U6(f627_out1, s(T135), s(T136)) -> f627_out1 f627_in(s(T141), 0) -> f627_out1 f496_in(T29, T36, T37) -> U7(f544_in(T37), T29, T36, T37) U7(f544_out1(X61, X60), T29, T36, T37) -> f496_out1(.(T29, X61), .(T36, X60)) f389_in(T16, T17, T18) -> U8(f496_in(T16, T17, T18), T16, T17, T18) U8(f496_out1(T21, T22), T16, T17, T18) -> U9(f499_in(T21, T22), T16, T17, T18, T21, T22) U9(f499_out1(X24, X25, T20), T16, T17, T18, T21, T22) -> f389_out1(T21, T22, X24, X25, T20) f499_in(T21, T22) -> U10(f13_in(T21), T21, T22) U10(f13_out1(T44), T21, T22) -> U11(f561_in(T22, T44), T21, T22, T44) U11(f561_out1(X25, T20), T21, T22, T44) -> f499_out1(T44, X25, T20) f561_in(T22, T44) -> U12(f13_in(T22), T22, T44) U12(f13_out1(T45), T22, T44) -> U13(f564_in(T44, T45), T22, T44, T45) U13(f564_out1(T20), T22, T44, T45) -> f561_out1(T45, T20) f582_in(T78, T80, T79, T81) -> U14(f584_in(T78, T80), T78, T80, T79, T81) U14(f584_out1, T78, T80, T79, T81) -> U15(f564_in(T79, .(T80, T81)), T78, T80, T79, T81) U15(f564_out1(T83), T78, T80, T79, T81) -> f582_out1(T83) f623_in(T117, T119, T118, T120) -> U16(f627_in(T117, T119), T117, T119, T118, T120) U16(f627_out1, T117, T119, T118, T120) -> U17(f564_in(.(T117, T118), T120), T117, T119, T118, T120) U17(f564_out1(T122), T117, T119, T118, T120) -> f623_out1(T122) Q is empty. We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (30) DependencyGraphProof (EQUIVALENT) The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 0 SCCs with 6 less nodes. ---------------------------------------- (31) TRUE