9.27/3.30 YES 9.74/3.32 proof of /export/starexec/sandbox/benchmark/theBenchmark.pl 9.74/3.32 # AProVE Commit ID: 48fb2092695e11cc9f56e44b17a92a5f88ffb256 marcel 20180622 unpublished dirty 9.74/3.32 9.74/3.32 9.74/3.32 Left Termination of the query pattern 9.74/3.32 9.74/3.32 reach(g,g,g,g) 9.74/3.32 9.74/3.32 w.r.t. the given Prolog program could successfully be proven: 9.74/3.32 9.74/3.32 (0) Prolog 9.74/3.32 (1) PrologToDTProblemTransformerProof [SOUND, 43 ms] 9.74/3.32 (2) TRIPLES 9.74/3.32 (3) TriplesToPiDPProof [SOUND, 25 ms] 9.74/3.32 (4) PiDP 9.74/3.32 (5) DependencyGraphProof [EQUIVALENT, 0 ms] 9.74/3.32 (6) AND 9.74/3.32 (7) PiDP 9.74/3.32 (8) UsableRulesProof [EQUIVALENT, 0 ms] 9.74/3.32 (9) PiDP 9.74/3.32 (10) PiDPToQDPProof [SOUND, 0 ms] 9.74/3.32 (11) QDP 9.74/3.32 (12) QDPSizeChangeProof [EQUIVALENT, 0 ms] 9.74/3.32 (13) YES 9.74/3.32 (14) PiDP 9.74/3.32 (15) UsableRulesProof [EQUIVALENT, 0 ms] 9.74/3.32 (16) PiDP 9.74/3.32 (17) PiDPToQDPProof [EQUIVALENT, 0 ms] 9.74/3.32 (18) QDP 9.74/3.32 (19) QDPSizeChangeProof [EQUIVALENT, 0 ms] 9.74/3.32 (20) YES 9.74/3.32 (21) PiDP 9.74/3.32 (22) UsableRulesProof [EQUIVALENT, 0 ms] 9.74/3.32 (23) PiDP 9.74/3.32 (24) PiDPToQDPProof [SOUND, 0 ms] 9.74/3.32 (25) QDP 9.74/3.32 (26) QDPSizeChangeProof [EQUIVALENT, 0 ms] 9.74/3.32 (27) YES 9.74/3.32 (28) PiDP 9.74/3.32 (29) UsableRulesProof [EQUIVALENT, 0 ms] 9.74/3.32 (30) PiDP 9.74/3.32 (31) PiDPToQDPProof [EQUIVALENT, 0 ms] 9.74/3.32 (32) QDP 9.74/3.32 (33) QDPSizeChangeProof [EQUIVALENT, 0 ms] 9.74/3.32 (34) YES 9.74/3.32 (35) PiDP 9.74/3.32 (36) PiDPToQDPProof [SOUND, 0 ms] 9.74/3.32 (37) QDP 9.74/3.32 (38) QDPQMonotonicMRRProof [EQUIVALENT, 56 ms] 9.74/3.32 (39) QDP 9.74/3.32 (40) DependencyGraphProof [EQUIVALENT, 0 ms] 9.74/3.32 (41) TRUE 9.74/3.32 9.74/3.32 9.74/3.32 ---------------------------------------- 9.74/3.32 9.74/3.32 (0) 9.74/3.32 Obligation: 9.74/3.32 Clauses: 9.74/3.32 9.74/3.32 reach(X, Y, Edges, Not_Visited) :- member(.(X, .(Y, [])), Edges). 9.74/3.32 reach(X, Z, Edges, Not_Visited) :- ','(member(.(X, .(Y, [])), Edges), ','(member(Y, Not_Visited), ','(delete(Y, Not_Visited, V1), reach(Y, Z, Edges, V1)))). 9.74/3.32 member(H, .(H, L)). 9.74/3.32 member(X, .(H, L)) :- member(X, L). 9.74/3.32 delete(X, .(X, Y), Y). 9.74/3.32 delete(X, .(H, T1), .(H, T2)) :- delete(X, T1, T2). 9.74/3.32 9.74/3.32 9.74/3.32 Query: reach(g,g,g,g) 9.74/3.32 ---------------------------------------- 9.74/3.32 9.74/3.32 (1) PrologToDTProblemTransformerProof (SOUND) 9.74/3.32 Built DT problem from termination graph DT10. 9.74/3.32 9.74/3.32 { 9.74/3.32 "root": 1, 9.74/3.32 "program": { 9.74/3.32 "directives": [], 9.74/3.32 "clauses": [ 9.74/3.32 [ 9.74/3.32 "(reach X Y Edges Not_Visited)", 9.74/3.32 "(member (. X (. Y ([]))) Edges)" 9.74/3.32 ], 9.74/3.32 [ 9.74/3.32 "(reach X Z Edges Not_Visited)", 9.74/3.32 "(',' (member (. X (. Y ([]))) Edges) (',' (member Y Not_Visited) (',' (delete Y Not_Visited V1) (reach Y Z Edges V1))))" 9.74/3.32 ], 9.74/3.32 [ 9.74/3.32 "(member H (. H L))", 9.74/3.32 null 9.74/3.32 ], 9.74/3.32 [ 9.74/3.32 "(member X (. H L))", 9.74/3.32 "(member X L)" 9.74/3.32 ], 9.74/3.32 [ 9.74/3.32 "(delete X (. X Y) Y)", 9.74/3.32 null 9.74/3.32 ], 9.74/3.32 [ 9.74/3.32 "(delete X (. H T1) (. H T2))", 9.74/3.32 "(delete X T1 T2)" 9.74/3.32 ] 9.74/3.32 ] 9.74/3.32 }, 9.74/3.32 "graph": { 9.74/3.32 "nodes": { 9.74/3.32 "390": { 9.74/3.32 "goal": [], 9.74/3.32 "kb": { 9.74/3.32 "nonunifying": [], 9.74/3.32 "intvars": {}, 9.74/3.32 "arithmetic": { 9.74/3.32 "type": "PlainIntegerRelationState", 9.74/3.32 "relations": [] 9.74/3.32 }, 9.74/3.32 "ground": [], 9.74/3.32 "free": [], 9.74/3.32 "exprvars": [] 9.74/3.32 } 9.74/3.32 }, 9.74/3.32 "391": { 9.74/3.32 "goal": [], 9.74/3.32 "kb": { 9.74/3.32 "nonunifying": [], 9.74/3.32 "intvars": {}, 9.74/3.32 "arithmetic": { 9.74/3.32 "type": "PlainIntegerRelationState", 9.74/3.32 "relations": [] 9.74/3.32 }, 9.74/3.32 "ground": [], 9.74/3.32 "free": [], 9.74/3.32 "exprvars": [] 9.74/3.32 } 9.74/3.32 }, 9.74/3.32 "type": "Nodes", 9.74/3.32 "350": { 9.74/3.32 "goal": [{ 9.74/3.32 "clause": -1, 9.74/3.32 "scope": -1, 9.74/3.32 "term": "(member (. T79 (. T80 ([]))) T82)" 9.74/3.32 }], 9.74/3.32 "kb": { 9.74/3.32 "nonunifying": [], 9.74/3.32 "intvars": {}, 9.74/3.32 "arithmetic": { 9.74/3.32 "type": "PlainIntegerRelationState", 9.74/3.32 "relations": [] 9.74/3.32 }, 9.74/3.32 "ground": [ 9.74/3.32 "T79", 9.74/3.32 "T80", 9.74/3.32 "T82" 9.74/3.32 ], 9.74/3.32 "free": [], 9.74/3.32 "exprvars": [] 9.74/3.32 } 9.74/3.32 }, 9.74/3.32 "394": { 9.74/3.32 "goal": [{ 9.74/3.32 "clause": -1, 9.74/3.32 "scope": -1, 9.74/3.32 "term": "(member (. T141 (. X121 ([]))) T143)" 9.74/3.32 }], 9.74/3.32 "kb": { 9.74/3.32 "nonunifying": [], 9.74/3.32 "intvars": {}, 9.74/3.32 "arithmetic": { 9.74/3.32 "type": "PlainIntegerRelationState", 9.74/3.32 "relations": [] 9.74/3.32 }, 9.74/3.32 "ground": [ 9.74/3.32 "T141", 9.74/3.32 "T143" 9.74/3.32 ], 9.74/3.32 "free": ["X121"], 9.74/3.32 "exprvars": [] 9.74/3.32 } 9.74/3.32 }, 9.74/3.32 "351": { 9.74/3.32 "goal": [], 9.74/3.32 "kb": { 9.74/3.32 "nonunifying": [], 9.74/3.32 "intvars": {}, 9.74/3.32 "arithmetic": { 9.74/3.32 "type": "PlainIntegerRelationState", 9.74/3.32 "relations": [] 9.74/3.32 }, 9.74/3.32 "ground": [], 9.74/3.32 "free": [], 9.74/3.32 "exprvars": [] 9.74/3.32 } 9.74/3.32 }, 9.74/3.32 "395": { 9.74/3.32 "goal": [], 9.74/3.32 "kb": { 9.74/3.32 "nonunifying": [], 9.74/3.32 "intvars": {}, 9.74/3.32 "arithmetic": { 9.74/3.32 "type": "PlainIntegerRelationState", 9.74/3.32 "relations": [] 9.74/3.32 }, 9.74/3.32 "ground": [], 9.74/3.32 "free": [], 9.74/3.32 "exprvars": [] 9.74/3.32 } 9.74/3.32 }, 9.74/3.32 "397": { 9.74/3.32 "goal": [{ 9.74/3.32 "clause": -1, 9.74/3.32 "scope": -1, 9.74/3.32 "term": "(member T113 T106)" 9.74/3.32 }], 9.74/3.32 "kb": { 9.74/3.32 "nonunifying": [], 9.74/3.32 "intvars": {}, 9.74/3.32 "arithmetic": { 9.74/3.32 "type": "PlainIntegerRelationState", 9.74/3.32 "relations": [] 9.74/3.32 }, 9.74/3.32 "ground": [ 9.74/3.32 "T106", 9.74/3.32 "T113" 9.74/3.32 ], 9.74/3.32 "free": [], 9.74/3.32 "exprvars": [] 9.74/3.32 } 9.74/3.32 }, 9.74/3.32 "398": { 9.74/3.32 "goal": [{ 9.74/3.32 "clause": -1, 9.74/3.32 "scope": -1, 9.74/3.32 "term": "(',' (delete T113 T106 X82) (reach T113 T104 T105 X82))" 9.74/3.32 }], 9.74/3.32 "kb": { 9.74/3.32 "nonunifying": [], 9.74/3.32 "intvars": {}, 9.74/3.32 "arithmetic": { 9.74/3.32 "type": "PlainIntegerRelationState", 9.74/3.32 "relations": [] 9.74/3.32 }, 9.74/3.32 "ground": [ 9.74/3.32 "T104", 9.74/3.32 "T105", 9.74/3.32 "T106", 9.74/3.32 "T113" 9.74/3.32 ], 9.74/3.32 "free": ["X82"], 9.74/3.32 "exprvars": [] 9.74/3.32 } 9.74/3.32 }, 9.74/3.32 "360": { 9.74/3.32 "goal": [{ 9.74/3.32 "clause": 1, 9.74/3.32 "scope": 1, 9.74/3.32 "term": "(reach T11 T12 T13 T14)" 9.74/3.32 }], 9.74/3.32 "kb": { 9.74/3.32 "nonunifying": [], 9.74/3.32 "intvars": {}, 9.74/3.32 "arithmetic": { 9.74/3.32 "type": "PlainIntegerRelationState", 9.74/3.32 "relations": [] 9.74/3.32 }, 9.74/3.32 "ground": [ 9.74/3.32 "T11", 9.74/3.32 "T12", 9.74/3.32 "T13", 9.74/3.32 "T14" 9.74/3.32 ], 9.74/3.32 "free": [], 9.74/3.32 "exprvars": [] 9.74/3.32 } 9.74/3.32 }, 9.74/3.32 "362": { 9.74/3.32 "goal": [{ 9.74/3.32 "clause": -1, 9.74/3.32 "scope": -1, 9.74/3.32 "term": "(',' (member (. T103 (. X81 ([]))) T105) (',' (member X81 T106) (',' (delete X81 T106 X82) (reach X81 T104 T105 X82))))" 9.74/3.32 }], 9.74/3.32 "kb": { 9.74/3.32 "nonunifying": [], 9.74/3.32 "intvars": {}, 9.74/3.32 "arithmetic": { 9.74/3.32 "type": "PlainIntegerRelationState", 9.74/3.32 "relations": [] 9.74/3.32 }, 9.74/3.32 "ground": [ 9.74/3.32 "T103", 9.74/3.32 "T104", 9.74/3.32 "T105", 9.74/3.32 "T106" 9.74/3.32 ], 9.74/3.32 "free": [ 9.74/3.32 "X81", 9.74/3.32 "X82" 9.74/3.32 ], 9.74/3.32 "exprvars": [] 9.74/3.32 } 9.74/3.32 }, 9.74/3.32 "1": { 9.74/3.32 "goal": [{ 9.74/3.32 "clause": -1, 9.74/3.32 "scope": -1, 9.74/3.32 "term": "(reach T3 T4 T5 T6)" 9.74/3.32 }], 9.74/3.32 "kb": { 9.74/3.32 "nonunifying": [], 9.74/3.32 "intvars": {}, 9.74/3.32 "arithmetic": { 9.74/3.32 "type": "PlainIntegerRelationState", 9.74/3.32 "relations": [] 9.74/3.32 }, 9.74/3.32 "ground": [ 9.74/3.32 "T4", 9.74/3.32 "T5", 9.74/3.32 "T6", 9.74/3.32 "T3" 9.74/3.32 ], 9.74/3.32 "free": [], 9.74/3.32 "exprvars": [] 9.74/3.32 } 9.74/3.32 }, 9.74/3.32 "365": { 9.74/3.32 "goal": [{ 9.74/3.32 "clause": -1, 9.74/3.32 "scope": -1, 9.74/3.32 "term": "(member (. T103 (. X81 ([]))) T105)" 9.74/3.32 }], 9.74/3.32 "kb": { 9.74/3.32 "nonunifying": [], 9.74/3.32 "intvars": {}, 9.74/3.32 "arithmetic": { 9.74/3.32 "type": "PlainIntegerRelationState", 9.74/3.32 "relations": [] 9.74/3.32 }, 9.74/3.32 "ground": [ 9.74/3.32 "T103", 9.74/3.32 "T105" 9.74/3.32 ], 9.74/3.32 "free": ["X81"], 9.74/3.32 "exprvars": [] 9.74/3.32 } 9.74/3.32 }, 9.74/3.32 "366": { 9.74/3.32 "goal": [{ 9.74/3.32 "clause": -1, 9.74/3.32 "scope": -1, 9.74/3.32 "term": "(',' (member T113 T106) (',' (delete T113 T106 X82) (reach T113 T104 T105 X82)))" 9.74/3.32 }], 9.74/3.32 "kb": { 9.74/3.32 "nonunifying": [], 9.74/3.32 "intvars": {}, 9.74/3.32 "arithmetic": { 9.74/3.32 "type": "PlainIntegerRelationState", 9.74/3.32 "relations": [] 9.74/3.32 }, 9.74/3.32 "ground": [ 9.74/3.32 "T104", 9.74/3.32 "T105", 9.74/3.32 "T106", 9.74/3.32 "T113" 9.74/3.32 ], 9.74/3.32 "free": ["X82"], 9.74/3.32 "exprvars": [] 9.74/3.32 } 9.74/3.32 }, 9.74/3.32 "367": { 9.74/3.32 "goal": [ 9.74/3.32 { 9.74/3.32 "clause": 2, 9.74/3.32 "scope": 4, 9.74/3.32 "term": "(member (. T103 (. X81 ([]))) T105)" 9.74/3.32 }, 9.74/3.32 { 9.74/3.32 "clause": 3, 9.74/3.32 "scope": 4, 9.74/3.32 "term": "(member (. T103 (. X81 ([]))) T105)" 9.74/3.32 } 9.74/3.32 ], 9.74/3.32 "kb": { 9.74/3.32 "nonunifying": [], 9.74/3.32 "intvars": {}, 9.74/3.32 "arithmetic": { 9.74/3.32 "type": "PlainIntegerRelationState", 9.74/3.32 "relations": [] 9.74/3.32 }, 9.74/3.32 "ground": [ 9.74/3.32 "T103", 9.74/3.32 "T105" 9.74/3.32 ], 9.74/3.32 "free": ["X81"], 9.74/3.32 "exprvars": [] 9.74/3.32 } 9.74/3.32 }, 9.74/3.32 "400": { 9.74/3.32 "goal": [ 9.74/3.32 { 9.74/3.32 "clause": 2, 9.74/3.32 "scope": 5, 9.74/3.32 "term": "(member T113 T106)" 9.74/3.32 }, 9.74/3.32 { 9.74/3.32 "clause": 3, 9.74/3.32 "scope": 5, 9.74/3.32 "term": "(member T113 T106)" 9.74/3.32 } 9.74/3.32 ], 9.74/3.32 "kb": { 9.74/3.32 "nonunifying": [], 9.74/3.32 "intvars": {}, 9.74/3.32 "arithmetic": { 9.74/3.32 "type": "PlainIntegerRelationState", 9.74/3.32 "relations": [] 9.74/3.32 }, 9.74/3.32 "ground": [ 9.74/3.32 "T106", 9.74/3.32 "T113" 9.74/3.32 ], 9.74/3.32 "free": [], 9.74/3.32 "exprvars": [] 9.74/3.32 } 9.74/3.32 }, 9.74/3.32 "324": { 9.74/3.32 "goal": [ 9.74/3.32 { 9.74/3.32 "clause": 0, 9.74/3.32 "scope": 1, 9.74/3.32 "term": "(reach T3 T4 T5 T6)" 9.74/3.32 }, 9.74/3.32 { 9.74/3.32 "clause": 1, 9.74/3.32 "scope": 1, 9.74/3.32 "term": "(reach T3 T4 T5 T6)" 9.74/3.32 } 9.74/3.32 ], 9.74/3.32 "kb": { 9.74/3.32 "nonunifying": [], 9.74/3.32 "intvars": {}, 9.74/3.32 "arithmetic": { 9.74/3.32 "type": "PlainIntegerRelationState", 9.74/3.32 "relations": [] 9.74/3.32 }, 9.74/3.32 "ground": [ 9.74/3.32 "T4", 9.74/3.32 "T5", 9.74/3.32 "T6", 9.74/3.32 "T3" 9.74/3.32 ], 9.74/3.32 "free": [], 9.74/3.32 "exprvars": [] 9.74/3.32 } 9.74/3.32 }, 9.74/3.32 "325": { 9.74/3.32 "goal": [ 9.74/3.32 { 9.74/3.32 "clause": -1, 9.74/3.32 "scope": -1, 9.74/3.32 "term": "(member (. T11 (. T12 ([]))) T13)" 9.74/3.32 }, 9.74/3.32 { 9.74/3.32 "clause": 1, 9.74/3.32 "scope": 1, 9.74/3.32 "term": "(reach T11 T12 T13 T14)" 9.74/3.32 } 9.74/3.32 ], 9.74/3.32 "kb": { 9.74/3.32 "nonunifying": [], 9.74/3.32 "intvars": {}, 9.74/3.32 "arithmetic": { 9.74/3.32 "type": "PlainIntegerRelationState", 9.74/3.32 "relations": [] 9.74/3.32 }, 9.74/3.32 "ground": [ 9.74/3.32 "T11", 9.74/3.32 "T12", 9.74/3.32 "T13", 9.74/3.32 "T14" 9.74/3.32 ], 9.74/3.32 "free": [], 9.74/3.32 "exprvars": [] 9.74/3.32 } 9.74/3.32 }, 9.74/3.32 "369": { 9.74/3.32 "goal": [{ 9.74/3.32 "clause": 2, 9.74/3.32 "scope": 4, 9.74/3.32 "term": "(member (. T103 (. X81 ([]))) T105)" 9.74/3.32 }], 9.74/3.32 "kb": { 9.74/3.32 "nonunifying": [], 9.74/3.32 "intvars": {}, 9.74/3.32 "arithmetic": { 9.74/3.32 "type": "PlainIntegerRelationState", 9.74/3.32 "relations": [] 9.74/3.32 }, 9.74/3.32 "ground": [ 9.74/3.32 "T103", 9.74/3.32 "T105" 9.74/3.32 ], 9.74/3.32 "free": ["X81"], 9.74/3.32 "exprvars": [] 9.74/3.32 } 9.74/3.32 }, 9.74/3.32 "402": { 9.74/3.32 "goal": [{ 9.74/3.32 "clause": 2, 9.74/3.32 "scope": 5, 9.74/3.32 "term": "(member T113 T106)" 9.74/3.32 }], 9.74/3.32 "kb": { 9.74/3.32 "nonunifying": [], 9.74/3.32 "intvars": {}, 9.74/3.32 "arithmetic": { 9.74/3.32 "type": "PlainIntegerRelationState", 9.74/3.32 "relations": [] 9.74/3.32 }, 9.74/3.32 "ground": [ 9.74/3.32 "T106", 9.74/3.32 "T113" 9.74/3.32 ], 9.74/3.32 "free": [], 9.74/3.32 "exprvars": [] 9.74/3.32 } 9.74/3.32 }, 9.74/3.32 "326": { 9.74/3.32 "goal": [ 9.74/3.32 { 9.74/3.32 "clause": 2, 9.74/3.32 "scope": 2, 9.74/3.32 "term": "(member (. T11 (. T12 ([]))) T13)" 9.74/3.32 }, 9.74/3.32 { 9.74/3.32 "clause": 3, 9.74/3.32 "scope": 2, 9.74/3.32 "term": "(member (. T11 (. T12 ([]))) T13)" 9.74/3.32 }, 9.74/3.32 { 9.74/3.32 "clause": -1, 9.74/3.32 "scope": 2, 9.74/3.32 "term": null 9.74/3.32 }, 9.74/3.32 { 9.74/3.32 "clause": 1, 9.74/3.32 "scope": 1, 9.74/3.32 "term": "(reach T11 T12 T13 T14)" 9.74/3.32 } 9.74/3.32 ], 9.74/3.32 "kb": { 9.74/3.32 "nonunifying": [], 9.74/3.32 "intvars": {}, 9.74/3.32 "arithmetic": { 9.74/3.32 "type": "PlainIntegerRelationState", 9.74/3.32 "relations": [] 9.74/3.32 }, 9.74/3.32 "ground": [ 9.74/3.32 "T11", 9.74/3.32 "T12", 9.74/3.32 "T13", 9.74/3.32 "T14" 9.74/3.32 ], 9.74/3.32 "free": [], 9.74/3.32 "exprvars": [] 9.74/3.32 } 9.74/3.32 }, 9.74/3.32 "403": { 9.74/3.32 "goal": [{ 9.74/3.32 "clause": 3, 9.74/3.32 "scope": 5, 9.74/3.32 "term": "(member T113 T106)" 9.74/3.32 }], 9.74/3.32 "kb": { 9.74/3.32 "nonunifying": [], 9.74/3.32 "intvars": {}, 9.74/3.32 "arithmetic": { 9.74/3.32 "type": "PlainIntegerRelationState", 9.74/3.32 "relations": [] 9.74/3.32 }, 9.74/3.32 "ground": [ 9.74/3.32 "T106", 9.74/3.32 "T113" 9.74/3.32 ], 9.74/3.32 "free": [], 9.74/3.32 "exprvars": [] 9.74/3.32 } 9.74/3.32 }, 9.74/3.32 "327": { 9.74/3.32 "goal": [{ 9.74/3.32 "clause": 2, 9.74/3.32 "scope": 2, 9.74/3.32 "term": "(member (. T11 (. T12 ([]))) T13)" 9.74/3.32 }], 9.74/3.32 "kb": { 9.74/3.32 "nonunifying": [], 9.74/3.32 "intvars": {}, 9.74/3.32 "arithmetic": { 9.74/3.32 "type": "PlainIntegerRelationState", 9.74/3.32 "relations": [] 9.74/3.32 }, 9.74/3.32 "ground": [ 9.74/3.32 "T11", 9.74/3.32 "T12", 9.74/3.32 "T13" 9.74/3.32 ], 9.74/3.32 "free": [], 9.74/3.32 "exprvars": [] 9.74/3.32 } 9.74/3.32 }, 9.74/3.32 "328": { 9.74/3.32 "goal": [ 9.74/3.32 { 9.74/3.32 "clause": 3, 9.74/3.32 "scope": 2, 9.74/3.32 "term": "(member (. T11 (. T12 ([]))) T13)" 9.74/3.32 }, 9.74/3.32 { 9.74/3.32 "clause": -1, 9.74/3.32 "scope": 2, 9.74/3.32 "term": null 9.80/3.33 }, 9.80/3.33 { 9.80/3.33 "clause": 1, 9.80/3.33 "scope": 1, 9.80/3.33 "term": "(reach T11 T12 T13 T14)" 9.80/3.33 } 9.80/3.33 ], 9.80/3.33 "kb": { 9.80/3.33 "nonunifying": [], 9.80/3.33 "intvars": {}, 9.80/3.33 "arithmetic": { 9.80/3.33 "type": "PlainIntegerRelationState", 9.80/3.33 "relations": [] 9.80/3.33 }, 9.80/3.33 "ground": [ 9.80/3.33 "T11", 9.80/3.33 "T12", 9.80/3.33 "T13", 9.80/3.33 "T14" 9.80/3.33 ], 9.80/3.33 "free": [], 9.80/3.33 "exprvars": [] 9.80/3.33 } 9.80/3.33 }, 9.80/3.33 "329": { 9.80/3.33 "goal": [{ 9.80/3.33 "clause": -1, 9.80/3.33 "scope": -1, 9.80/3.33 "term": "(true)" 9.80/3.33 }], 9.80/3.33 "kb": { 9.80/3.33 "nonunifying": [], 9.80/3.33 "intvars": {}, 9.80/3.33 "arithmetic": { 9.80/3.33 "type": "PlainIntegerRelationState", 9.80/3.33 "relations": [] 9.80/3.33 }, 9.80/3.33 "ground": [], 9.80/3.33 "free": [], 9.80/3.33 "exprvars": [] 9.80/3.33 } 9.80/3.33 }, 9.80/3.33 "407": { 9.80/3.33 "goal": [{ 9.80/3.33 "clause": -1, 9.80/3.33 "scope": -1, 9.80/3.33 "term": "(true)" 9.80/3.33 }], 9.80/3.33 "kb": { 9.80/3.33 "nonunifying": [], 9.80/3.33 "intvars": {}, 9.80/3.33 "arithmetic": { 9.80/3.33 "type": "PlainIntegerRelationState", 9.80/3.33 "relations": [] 9.80/3.33 }, 9.80/3.33 "ground": [], 9.80/3.33 "free": [], 9.80/3.33 "exprvars": [] 9.80/3.33 } 9.80/3.33 }, 9.80/3.33 "408": { 9.80/3.33 "goal": [], 9.80/3.33 "kb": { 9.80/3.33 "nonunifying": [], 9.80/3.33 "intvars": {}, 9.80/3.33 "arithmetic": { 9.80/3.33 "type": "PlainIntegerRelationState", 9.80/3.33 "relations": [] 9.80/3.33 }, 9.80/3.33 "ground": [], 9.80/3.33 "free": [], 9.80/3.33 "exprvars": [] 9.80/3.33 } 9.80/3.33 }, 9.80/3.33 "409": { 9.80/3.33 "goal": [], 9.80/3.33 "kb": { 9.80/3.33 "nonunifying": [], 9.80/3.33 "intvars": {}, 9.80/3.33 "arithmetic": { 9.80/3.33 "type": "PlainIntegerRelationState", 9.80/3.33 "relations": [] 9.80/3.33 }, 9.80/3.33 "ground": [], 9.80/3.33 "free": [], 9.80/3.33 "exprvars": [] 9.80/3.33 } 9.80/3.33 }, 9.80/3.33 "370": { 9.80/3.33 "goal": [{ 9.80/3.33 "clause": 3, 9.80/3.33 "scope": 4, 9.80/3.33 "term": "(member (. T103 (. X81 ([]))) T105)" 9.80/3.33 }], 9.80/3.33 "kb": { 9.80/3.33 "nonunifying": [], 9.80/3.33 "intvars": {}, 9.80/3.33 "arithmetic": { 9.80/3.33 "type": "PlainIntegerRelationState", 9.80/3.33 "relations": [] 9.80/3.33 }, 9.80/3.33 "ground": [ 9.80/3.33 "T103", 9.80/3.33 "T105" 9.80/3.33 ], 9.80/3.33 "free": ["X81"], 9.80/3.33 "exprvars": [] 9.80/3.33 } 9.80/3.33 }, 9.80/3.33 "330": { 9.80/3.33 "goal": [], 9.80/3.33 "kb": { 9.80/3.33 "nonunifying": [], 9.80/3.33 "intvars": {}, 9.80/3.33 "arithmetic": { 9.80/3.33 "type": "PlainIntegerRelationState", 9.80/3.33 "relations": [] 9.80/3.33 }, 9.80/3.33 "ground": [], 9.80/3.33 "free": [], 9.80/3.33 "exprvars": [] 9.80/3.33 } 9.80/3.33 }, 9.80/3.33 "331": { 9.80/3.33 "goal": [], 9.80/3.33 "kb": { 9.80/3.33 "nonunifying": [], 9.80/3.33 "intvars": {}, 9.80/3.33 "arithmetic": { 9.80/3.33 "type": "PlainIntegerRelationState", 9.80/3.33 "relations": [] 9.80/3.33 }, 9.80/3.33 "ground": [], 9.80/3.33 "free": [], 9.80/3.33 "exprvars": [] 9.80/3.33 } 9.80/3.33 }, 9.80/3.33 "333": { 9.80/3.33 "goal": [{ 9.80/3.33 "clause": 3, 9.80/3.33 "scope": 2, 9.80/3.33 "term": "(member (. T11 (. T12 ([]))) T13)" 9.80/3.33 }], 9.80/3.33 "kb": { 9.80/3.33 "nonunifying": [], 9.80/3.33 "intvars": {}, 9.80/3.33 "arithmetic": { 9.80/3.33 "type": "PlainIntegerRelationState", 9.80/3.33 "relations": [] 9.80/3.33 }, 9.80/3.33 "ground": [ 9.80/3.33 "T11", 9.80/3.33 "T12", 9.80/3.33 "T13" 9.80/3.33 ], 9.80/3.33 "free": [], 9.80/3.33 "exprvars": [] 9.80/3.33 } 9.80/3.33 }, 9.80/3.33 "410": { 9.80/3.33 "goal": [{ 9.80/3.33 "clause": -1, 9.80/3.33 "scope": -1, 9.80/3.33 "term": "(member T174 T176)" 9.80/3.33 }], 9.80/3.33 "kb": { 9.80/3.33 "nonunifying": [], 9.80/3.33 "intvars": {}, 9.80/3.33 "arithmetic": { 9.80/3.33 "type": "PlainIntegerRelationState", 9.80/3.33 "relations": [] 9.80/3.33 }, 9.80/3.33 "ground": [ 9.80/3.33 "T174", 9.80/3.33 "T176" 9.80/3.33 ], 9.80/3.33 "free": [], 9.80/3.33 "exprvars": [] 9.80/3.33 } 9.80/3.33 }, 9.80/3.33 "334": { 9.80/3.33 "goal": [ 9.80/3.33 { 9.80/3.33 "clause": -1, 9.80/3.33 "scope": 2, 9.80/3.33 "term": null 9.80/3.33 }, 9.80/3.33 { 9.80/3.33 "clause": 1, 9.80/3.33 "scope": 1, 9.80/3.33 "term": "(reach T11 T12 T13 T14)" 9.80/3.33 } 9.80/3.33 ], 9.80/3.33 "kb": { 9.80/3.33 "nonunifying": [], 9.80/3.33 "intvars": {}, 9.80/3.33 "arithmetic": { 9.80/3.33 "type": "PlainIntegerRelationState", 9.80/3.33 "relations": [] 9.80/3.33 }, 9.80/3.33 "ground": [ 9.80/3.33 "T11", 9.80/3.33 "T12", 9.80/3.33 "T13", 9.80/3.33 "T14" 9.80/3.33 ], 9.80/3.33 "free": [], 9.80/3.33 "exprvars": [] 9.80/3.33 } 9.80/3.33 }, 9.80/3.33 "411": { 9.80/3.33 "goal": [], 9.80/3.33 "kb": { 9.80/3.33 "nonunifying": [], 9.80/3.33 "intvars": {}, 9.80/3.33 "arithmetic": { 9.80/3.33 "type": "PlainIntegerRelationState", 9.80/3.33 "relations": [] 9.80/3.33 }, 9.80/3.33 "ground": [], 9.80/3.33 "free": [], 9.80/3.33 "exprvars": [] 9.80/3.33 } 9.80/3.33 }, 9.80/3.33 "455": { 9.80/3.33 "goal": [{ 9.80/3.33 "clause": -1, 9.80/3.33 "scope": -1, 9.80/3.33 "term": "(true)" 9.80/3.33 }], 9.80/3.33 "kb": { 9.80/3.33 "nonunifying": [], 9.80/3.33 "intvars": {}, 9.80/3.33 "arithmetic": { 9.80/3.33 "type": "PlainIntegerRelationState", 9.80/3.33 "relations": [] 9.80/3.33 }, 9.80/3.33 "ground": [], 9.80/3.33 "free": [], 9.80/3.33 "exprvars": [] 9.80/3.33 } 9.80/3.33 }, 9.80/3.33 "412": { 9.80/3.33 "goal": [{ 9.80/3.33 "clause": -1, 9.80/3.33 "scope": -1, 9.80/3.33 "term": "(delete T113 T106 X82)" 9.80/3.33 }], 9.80/3.33 "kb": { 9.80/3.33 "nonunifying": [], 9.80/3.33 "intvars": {}, 9.80/3.33 "arithmetic": { 9.80/3.33 "type": "PlainIntegerRelationState", 9.80/3.33 "relations": [] 9.80/3.33 }, 9.80/3.33 "ground": [ 9.80/3.33 "T106", 9.80/3.33 "T113" 9.80/3.33 ], 9.80/3.33 "free": ["X82"], 9.80/3.33 "exprvars": [] 9.80/3.33 } 9.80/3.33 }, 9.80/3.33 "456": { 9.80/3.33 "goal": [], 9.80/3.33 "kb": { 9.80/3.33 "nonunifying": [], 9.80/3.33 "intvars": {}, 9.80/3.33 "arithmetic": { 9.80/3.33 "type": "PlainIntegerRelationState", 9.80/3.33 "relations": [] 9.80/3.33 }, 9.80/3.33 "ground": [], 9.80/3.33 "free": [], 9.80/3.33 "exprvars": [] 9.80/3.33 } 9.80/3.33 }, 9.80/3.33 "413": { 9.80/3.33 "goal": [{ 9.80/3.33 "clause": -1, 9.80/3.33 "scope": -1, 9.80/3.33 "term": "(reach T113 T104 T105 T185)" 9.80/3.33 }], 9.80/3.33 "kb": { 9.80/3.33 "nonunifying": [], 9.80/3.33 "intvars": {}, 9.80/3.33 "arithmetic": { 9.80/3.33 "type": "PlainIntegerRelationState", 9.80/3.33 "relations": [] 9.80/3.33 }, 9.80/3.33 "ground": [ 9.80/3.33 "T104", 9.80/3.33 "T105", 9.80/3.33 "T113", 9.80/3.33 "T185" 9.80/3.33 ], 9.80/3.33 "free": [], 9.80/3.33 "exprvars": [] 9.80/3.33 } 9.80/3.33 }, 9.80/3.33 "457": { 9.80/3.33 "goal": [], 9.80/3.33 "kb": { 9.80/3.33 "nonunifying": [], 9.80/3.33 "intvars": {}, 9.80/3.33 "arithmetic": { 9.80/3.33 "type": "PlainIntegerRelationState", 9.80/3.33 "relations": [] 9.80/3.33 }, 9.80/3.33 "ground": [], 9.80/3.33 "free": [], 9.80/3.33 "exprvars": [] 9.80/3.33 } 9.80/3.33 }, 9.80/3.33 "337": { 9.80/3.33 "goal": [{ 9.80/3.33 "clause": -1, 9.80/3.33 "scope": -1, 9.80/3.33 "term": "(member (. T46 (. T47 ([]))) T49)" 9.80/3.33 }], 9.80/3.33 "kb": { 9.80/3.33 "nonunifying": [], 9.80/3.33 "intvars": {}, 9.80/3.33 "arithmetic": { 9.80/3.33 "type": "PlainIntegerRelationState", 9.80/3.33 "relations": [] 9.80/3.33 }, 9.80/3.33 "ground": [ 9.80/3.33 "T46", 9.80/3.33 "T47", 9.80/3.33 "T49" 9.80/3.33 ], 9.80/3.33 "free": [], 9.80/3.33 "exprvars": [] 9.80/3.33 } 9.80/3.33 }, 9.80/3.33 "414": { 9.80/3.33 "goal": [ 9.80/3.33 { 9.80/3.33 "clause": 4, 9.80/3.33 "scope": 6, 9.80/3.33 "term": "(delete T113 T106 X82)" 9.80/3.33 }, 9.80/3.33 { 9.80/3.33 "clause": 5, 9.80/3.33 "scope": 6, 9.80/3.33 "term": "(delete T113 T106 X82)" 9.80/3.33 } 9.80/3.33 ], 9.80/3.33 "kb": { 9.80/3.33 "nonunifying": [], 9.80/3.33 "intvars": {}, 9.80/3.33 "arithmetic": { 9.80/3.33 "type": "PlainIntegerRelationState", 9.80/3.33 "relations": [] 9.80/3.33 }, 9.80/3.33 "ground": [ 9.80/3.33 "T106", 9.80/3.33 "T113" 9.80/3.33 ], 9.80/3.33 "free": ["X82"], 9.80/3.33 "exprvars": [] 9.80/3.33 } 9.80/3.33 }, 9.80/3.33 "458": { 9.80/3.33 "goal": [{ 9.80/3.33 "clause": -1, 9.80/3.33 "scope": -1, 9.80/3.33 "term": "(delete T206 T208 X191)" 9.80/3.33 }], 9.80/3.33 "kb": { 9.80/3.33 "nonunifying": [], 9.80/3.33 "intvars": {}, 9.80/3.33 "arithmetic": { 9.80/3.33 "type": "PlainIntegerRelationState", 9.80/3.33 "relations": [] 9.80/3.33 }, 9.80/3.33 "ground": [ 9.80/3.33 "T206", 9.80/3.33 "T208" 9.80/3.33 ], 9.80/3.33 "free": ["X191"], 9.80/3.33 "exprvars": [] 9.80/3.33 } 9.80/3.33 }, 9.80/3.33 "415": { 9.80/3.33 "goal": [{ 9.80/3.33 "clause": 4, 9.80/3.33 "scope": 6, 9.80/3.33 "term": "(delete T113 T106 X82)" 9.80/3.33 }], 9.80/3.33 "kb": { 9.80/3.33 "nonunifying": [], 9.80/3.33 "intvars": {}, 9.80/3.33 "arithmetic": { 9.80/3.33 "type": "PlainIntegerRelationState", 9.80/3.33 "relations": [] 9.80/3.33 }, 9.80/3.33 "ground": [ 9.80/3.33 "T106", 9.80/3.33 "T113" 9.80/3.33 ], 9.80/3.33 "free": ["X82"], 9.80/3.33 "exprvars": [] 9.80/3.33 } 9.80/3.33 }, 9.80/3.33 "459": { 9.80/3.33 "goal": [], 9.80/3.33 "kb": { 9.80/3.33 "nonunifying": [], 9.80/3.33 "intvars": {}, 9.80/3.33 "arithmetic": { 9.80/3.33 "type": "PlainIntegerRelationState", 9.80/3.33 "relations": [] 9.80/3.33 }, 9.80/3.33 "ground": [], 9.80/3.33 "free": [], 9.80/3.33 "exprvars": [] 9.80/3.33 } 9.80/3.33 }, 9.80/3.33 "339": { 9.80/3.33 "goal": [], 9.80/3.33 "kb": { 9.80/3.33 "nonunifying": [], 9.80/3.33 "intvars": {}, 9.80/3.33 "arithmetic": { 9.80/3.33 "type": "PlainIntegerRelationState", 9.80/3.33 "relations": [] 9.80/3.33 }, 9.80/3.33 "ground": [], 9.80/3.33 "free": [], 9.80/3.33 "exprvars": [] 9.80/3.33 } 9.80/3.33 }, 9.80/3.33 "416": { 9.80/3.33 "goal": [{ 9.80/3.33 "clause": 5, 9.80/3.33 "scope": 6, 9.80/3.33 "term": "(delete T113 T106 X82)" 9.80/3.33 }], 9.80/3.33 "kb": { 9.80/3.33 "nonunifying": [], 9.80/3.33 "intvars": {}, 9.80/3.33 "arithmetic": { 9.80/3.33 "type": "PlainIntegerRelationState", 9.80/3.33 "relations": [] 9.80/3.33 }, 9.80/3.33 "ground": [ 9.80/3.33 "T106", 9.80/3.33 "T113" 9.80/3.33 ], 9.80/3.33 "free": ["X82"], 9.80/3.33 "exprvars": [] 9.80/3.33 } 9.80/3.33 }, 9.80/3.33 "342": { 9.80/3.33 "goal": [ 9.80/3.33 { 9.80/3.33 "clause": 2, 9.80/3.33 "scope": 3, 9.80/3.33 "term": "(member (. T46 (. T47 ([]))) T49)" 9.80/3.33 }, 9.80/3.33 { 9.80/3.33 "clause": 3, 9.80/3.33 "scope": 3, 9.80/3.33 "term": "(member (. T46 (. T47 ([]))) T49)" 9.80/3.33 } 9.80/3.33 ], 9.80/3.33 "kb": { 9.80/3.33 "nonunifying": [], 9.80/3.33 "intvars": {}, 9.80/3.33 "arithmetic": { 9.80/3.33 "type": "PlainIntegerRelationState", 9.80/3.33 "relations": [] 9.80/3.33 }, 9.80/3.33 "ground": [ 9.80/3.33 "T46", 9.80/3.33 "T47", 9.80/3.33 "T49" 9.80/3.33 ], 9.80/3.33 "free": [], 9.80/3.33 "exprvars": [] 9.80/3.33 } 9.80/3.33 }, 9.80/3.33 "345": { 9.80/3.33 "goal": [{ 9.80/3.33 "clause": 2, 9.80/3.33 "scope": 3, 9.80/3.33 "term": "(member (. T46 (. T47 ([]))) T49)" 9.80/3.33 }], 9.80/3.33 "kb": { 9.80/3.33 "nonunifying": [], 9.80/3.33 "intvars": {}, 9.80/3.33 "arithmetic": { 9.80/3.33 "type": "PlainIntegerRelationState", 9.80/3.33 "relations": [] 9.80/3.33 }, 9.80/3.33 "ground": [ 9.80/3.33 "T46", 9.80/3.33 "T47", 9.80/3.33 "T49" 9.80/3.33 ], 9.80/3.33 "free": [], 9.80/3.33 "exprvars": [] 9.80/3.33 } 9.80/3.33 }, 9.80/3.33 "389": { 9.80/3.33 "goal": [{ 9.80/3.33 "clause": -1, 9.80/3.33 "scope": -1, 9.80/3.33 "term": "(true)" 9.80/3.33 }], 9.80/3.33 "kb": { 9.80/3.33 "nonunifying": [], 9.80/3.33 "intvars": {}, 9.80/3.33 "arithmetic": { 9.80/3.33 "type": "PlainIntegerRelationState", 9.80/3.33 "relations": [] 9.80/3.33 }, 9.80/3.33 "ground": [], 9.80/3.33 "free": [], 9.80/3.33 "exprvars": [] 9.80/3.33 } 9.80/3.33 }, 9.80/3.33 "346": { 9.80/3.33 "goal": [{ 9.80/3.33 "clause": 3, 9.80/3.33 "scope": 3, 9.80/3.33 "term": "(member (. T46 (. T47 ([]))) T49)" 9.80/3.33 }], 9.80/3.33 "kb": { 9.80/3.33 "nonunifying": [], 9.80/3.33 "intvars": {}, 9.80/3.33 "arithmetic": { 9.80/3.33 "type": "PlainIntegerRelationState", 9.80/3.33 "relations": [] 9.80/3.33 }, 9.80/3.33 "ground": [ 9.80/3.33 "T46", 9.80/3.33 "T47", 9.80/3.33 "T49" 9.80/3.33 ], 9.80/3.33 "free": [], 9.80/3.33 "exprvars": [] 9.80/3.33 } 9.80/3.33 }, 9.80/3.33 "347": { 9.80/3.33 "goal": [{ 9.80/3.33 "clause": -1, 9.80/3.33 "scope": -1, 9.80/3.33 "term": "(true)" 9.80/3.33 }], 9.80/3.33 "kb": { 9.80/3.33 "nonunifying": [], 9.80/3.33 "intvars": {}, 9.80/3.33 "arithmetic": { 9.80/3.33 "type": "PlainIntegerRelationState", 9.80/3.33 "relations": [] 9.80/3.33 }, 9.80/3.33 "ground": [], 9.80/3.33 "free": [], 9.80/3.33 "exprvars": [] 9.80/3.33 } 9.80/3.33 }, 9.80/3.33 "348": { 9.80/3.33 "goal": [], 9.80/3.33 "kb": { 9.80/3.33 "nonunifying": [], 9.80/3.33 "intvars": {}, 9.80/3.33 "arithmetic": { 9.80/3.33 "type": "PlainIntegerRelationState", 9.80/3.33 "relations": [] 9.80/3.33 }, 9.80/3.33 "ground": [], 9.80/3.33 "free": [], 9.80/3.33 "exprvars": [] 9.80/3.33 } 9.80/3.33 }, 9.80/3.33 "349": { 9.80/3.33 "goal": [], 9.80/3.33 "kb": { 9.80/3.33 "nonunifying": [], 9.80/3.33 "intvars": {}, 9.80/3.33 "arithmetic": { 9.80/3.33 "type": "PlainIntegerRelationState", 9.80/3.33 "relations": [] 9.80/3.33 }, 9.80/3.33 "ground": [], 9.80/3.33 "free": [], 9.80/3.33 "exprvars": [] 9.80/3.33 } 9.80/3.33 } 9.80/3.33 }, 9.80/3.33 "edges": [ 9.80/3.33 { 9.80/3.33 "from": 1, 9.80/3.33 "to": 324, 9.80/3.33 "label": "CASE" 9.80/3.33 }, 9.80/3.33 { 9.80/3.33 "from": 324, 9.80/3.33 "to": 325, 9.80/3.33 "label": "ONLY EVAL with clause\nreach(X5, X6, X7, X8) :- member(.(X5, .(X6, [])), X7).\nand substitutionT3 -> T11,\nX5 -> T11,\nT4 -> T12,\nX6 -> T12,\nT5 -> T13,\nX7 -> T13,\nT6 -> T14,\nX8 -> T14" 9.80/3.33 }, 9.80/3.33 { 9.80/3.33 "from": 325, 9.80/3.33 "to": 326, 9.80/3.33 "label": "CASE" 9.80/3.33 }, 9.80/3.33 { 9.80/3.33 "from": 326, 9.80/3.33 "to": 327, 9.80/3.33 "label": "PARALLEL" 9.80/3.33 }, 9.80/3.33 { 9.80/3.33 "from": 326, 9.80/3.33 "to": 328, 9.80/3.33 "label": "PARALLEL" 9.80/3.33 }, 9.80/3.33 { 9.80/3.33 "from": 327, 9.80/3.33 "to": 329, 9.80/3.33 "label": "EVAL with clause\nmember(X17, .(X17, X18)).\nand substitutionT11 -> T27,\nT12 -> T28,\nX17 -> .(T27, .(T28, [])),\nX18 -> T29,\nT13 -> .(.(T27, .(T28, [])), T29)" 9.80/3.33 }, 9.80/3.33 { 9.80/3.33 "from": 327, 9.80/3.33 "to": 330, 9.80/3.33 "label": "EVAL-BACKTRACK" 9.80/3.33 }, 9.80/3.33 { 9.80/3.33 "from": 328, 9.80/3.33 "to": 333, 9.80/3.33 "label": "PARALLEL" 9.80/3.33 }, 9.80/3.33 { 9.80/3.33 "from": 328, 9.80/3.33 "to": 334, 9.80/3.33 "label": "PARALLEL" 9.80/3.33 }, 9.80/3.33 { 9.80/3.33 "from": 329, 9.80/3.33 "to": 331, 9.80/3.33 "label": "SUCCESS" 9.80/3.33 }, 9.80/3.33 { 9.80/3.33 "from": 333, 9.80/3.33 "to": 337, 9.80/3.33 "label": "EVAL with clause\nmember(X31, .(X32, X33)) :- member(X31, X33).\nand substitutionT11 -> T46,\nT12 -> T47,\nX31 -> .(T46, .(T47, [])),\nX32 -> T48,\nX33 -> T49,\nT13 -> .(T48, T49)" 9.80/3.33 }, 9.80/3.33 { 9.80/3.33 "from": 333, 9.80/3.33 "to": 339, 9.80/3.33 "label": "EVAL-BACKTRACK" 9.80/3.33 }, 9.80/3.33 { 9.80/3.33 "from": 334, 9.80/3.33 "to": 360, 9.80/3.33 "label": "FAILURE" 9.80/3.33 }, 9.80/3.33 { 9.80/3.33 "from": 337, 9.80/3.33 "to": 342, 9.80/3.33 "label": "CASE" 9.80/3.33 }, 9.80/3.33 { 9.80/3.33 "from": 342, 9.80/3.33 "to": 345, 9.80/3.33 "label": "PARALLEL" 9.80/3.33 }, 9.80/3.33 { 9.80/3.33 "from": 342, 9.80/3.33 "to": 346, 9.80/3.33 "label": "PARALLEL" 9.80/3.33 }, 9.80/3.33 { 9.80/3.33 "from": 345, 9.80/3.33 "to": 347, 9.80/3.33 "label": "EVAL with clause\nmember(X46, .(X46, X47)).\nand substitutionT46 -> T68,\nT47 -> T69,\nX46 -> .(T68, .(T69, [])),\nX47 -> T70,\nT49 -> .(.(T68, .(T69, [])), T70)" 9.80/3.33 }, 9.80/3.33 { 9.80/3.33 "from": 345, 9.80/3.33 "to": 348, 9.80/3.33 "label": "EVAL-BACKTRACK" 9.80/3.33 }, 9.80/3.33 { 9.80/3.33 "from": 346, 9.80/3.33 "to": 350, 9.80/3.33 "label": "EVAL with clause\nmember(X54, .(X55, X56)) :- member(X54, X56).\nand substitutionT46 -> T79,\nT47 -> T80,\nX54 -> .(T79, .(T80, [])),\nX55 -> T81,\nX56 -> T82,\nT49 -> .(T81, T82)" 9.80/3.33 }, 9.80/3.33 { 9.80/3.33 "from": 346, 9.80/3.33 "to": 351, 9.80/3.33 "label": "EVAL-BACKTRACK" 9.80/3.33 }, 9.80/3.33 { 9.80/3.33 "from": 347, 9.80/3.33 "to": 349, 9.80/3.33 "label": "SUCCESS" 9.80/3.33 }, 9.80/3.33 { 9.80/3.33 "from": 350, 9.80/3.33 "to": 337, 9.80/3.33 "label": "INSTANCE with matching:\nT46 -> T79\nT47 -> T80\nT49 -> T82" 9.80/3.33 }, 9.80/3.33 { 9.80/3.33 "from": 360, 9.80/3.33 "to": 362, 9.80/3.33 "label": "ONLY EVAL with clause\nreach(X77, X78, X79, X80) :- ','(member(.(X77, .(X81, [])), X79), ','(member(X81, X80), ','(delete(X81, X80, X82), reach(X81, X78, X79, X82)))).\nand substitutionT11 -> T103,\nX77 -> T103,\nT12 -> T104,\nX78 -> T104,\nT13 -> T105,\nX79 -> T105,\nT14 -> T106,\nX80 -> T106" 9.80/3.33 }, 9.80/3.33 { 9.80/3.33 "from": 362, 9.80/3.33 "to": 365, 9.80/3.33 "label": "SPLIT 1" 9.80/3.33 }, 9.80/3.33 { 9.80/3.33 "from": 362, 9.80/3.33 "to": 366, 9.80/3.33 "label": "SPLIT 2\nnew knowledge:\nT103 is ground\nT113 is ground\nT105 is ground\nreplacements:X81 -> T113" 9.80/3.33 }, 9.80/3.33 { 9.80/3.33 "from": 365, 9.80/3.33 "to": 367, 9.80/3.33 "label": "CASE" 9.80/3.33 }, 9.80/3.33 { 9.80/3.33 "from": 366, 9.80/3.33 "to": 397, 9.80/3.33 "label": "SPLIT 1" 9.80/3.33 }, 9.80/3.33 { 9.80/3.33 "from": 366, 9.80/3.33 "to": 398, 9.80/3.33 "label": "SPLIT 2\nnew knowledge:\nT113 is ground\nT106 is ground" 9.80/3.33 }, 9.80/3.33 { 9.80/3.33 "from": 367, 9.80/3.33 "to": 369, 9.80/3.33 "label": "PARALLEL" 9.80/3.33 }, 9.80/3.33 { 9.80/3.33 "from": 367, 9.80/3.33 "to": 370, 9.80/3.33 "label": "PARALLEL" 9.80/3.33 }, 9.80/3.33 { 9.80/3.33 "from": 369, 9.80/3.33 "to": 389, 9.80/3.33 "label": "EVAL with clause\nmember(X107, .(X107, X108)).\nand substitutionT103 -> T132,\nX81 -> T133,\nX107 -> .(T132, .(T133, [])),\nX109 -> T133,\nX108 -> T134,\nT105 -> .(.(T132, .(T133, [])), T134)" 9.80/3.33 }, 9.80/3.33 { 9.80/3.33 "from": 369, 9.80/3.33 "to": 390, 9.80/3.33 "label": "EVAL-BACKTRACK" 9.80/3.33 }, 9.80/3.33 { 9.80/3.33 "from": 370, 9.80/3.33 "to": 394, 9.80/3.33 "label": "EVAL with clause\nmember(X118, .(X119, X120)) :- member(X118, X120).\nand substitutionT103 -> T141,\nX81 -> X121,\nX118 -> .(T141, .(X121, [])),\nX119 -> T142,\nX120 -> T143,\nT105 -> .(T142, T143)" 9.80/3.33 }, 9.80/3.33 { 9.80/3.33 "from": 370, 9.80/3.33 "to": 395, 9.80/3.33 "label": "EVAL-BACKTRACK" 9.80/3.33 }, 9.80/3.33 { 9.80/3.33 "from": 389, 9.80/3.33 "to": 391, 9.80/3.33 "label": "SUCCESS" 9.80/3.33 }, 9.80/3.33 { 9.80/3.33 "from": 394, 9.80/3.33 "to": 365, 9.80/3.33 "label": "INSTANCE with matching:\nT103 -> T141\nX81 -> X121\nT105 -> T143" 9.80/3.33 }, 9.80/3.33 { 9.80/3.33 "from": 397, 9.80/3.33 "to": 400, 9.80/3.33 "label": "CASE" 9.80/3.33 }, 9.80/3.33 { 9.80/3.33 "from": 398, 9.80/3.33 "to": 412, 9.80/3.33 "label": "SPLIT 1" 9.80/3.33 }, 9.80/3.33 { 9.80/3.33 "from": 398, 9.80/3.33 "to": 413, 9.80/3.33 "label": "SPLIT 2\nnew knowledge:\nT113 is ground\nT106 is ground\nT185 is ground\nreplacements:X82 -> T185" 9.80/3.33 }, 9.80/3.33 { 9.80/3.33 "from": 400, 9.80/3.33 "to": 402, 9.80/3.33 "label": "PARALLEL" 9.80/3.33 }, 9.80/3.33 { 9.80/3.33 "from": 400, 9.80/3.33 "to": 403, 9.80/3.33 "label": "PARALLEL" 9.80/3.33 }, 9.80/3.33 { 9.80/3.33 "from": 402, 9.80/3.33 "to": 407, 9.80/3.33 "label": "EVAL with clause\nmember(X144, .(X144, X145)).\nand substitutionT113 -> T166,\nX144 -> T166,\nX145 -> T167,\nT106 -> .(T166, T167)" 9.80/3.33 }, 9.80/3.33 { 9.80/3.33 "from": 402, 9.80/3.33 "to": 408, 9.80/3.33 "label": "EVAL-BACKTRACK" 9.80/3.33 }, 9.80/3.33 { 9.80/3.33 "from": 403, 9.80/3.33 "to": 410, 9.80/3.33 "label": "EVAL with clause\nmember(X152, .(X153, X154)) :- member(X152, X154).\nand substitutionT113 -> T174,\nX152 -> T174,\nX153 -> T175,\nX154 -> T176,\nT106 -> .(T175, T176)" 9.80/3.33 }, 9.80/3.33 { 9.80/3.33 "from": 403, 9.80/3.33 "to": 411, 9.80/3.33 "label": "EVAL-BACKTRACK" 9.80/3.33 }, 9.80/3.33 { 9.80/3.33 "from": 407, 9.80/3.33 "to": 409, 9.80/3.33 "label": "SUCCESS" 9.80/3.33 }, 9.80/3.33 { 9.80/3.33 "from": 410, 9.80/3.33 "to": 397, 9.80/3.33 "label": "INSTANCE with matching:\nT113 -> T174\nT106 -> T176" 9.80/3.33 }, 9.80/3.33 { 9.80/3.33 "from": 412, 9.80/3.33 "to": 414, 9.80/3.33 "label": "CASE" 9.80/3.33 }, 9.80/3.33 { 9.80/3.33 "from": 413, 9.80/3.33 "to": 1, 9.80/3.33 "label": "INSTANCE with matching:\nT3 -> T113\nT4 -> T104\nT5 -> T105\nT6 -> T185" 9.80/3.33 }, 9.80/3.33 { 9.80/3.33 "from": 414, 9.80/3.33 "to": 415, 9.80/3.33 "label": "PARALLEL" 9.80/3.33 }, 9.80/3.33 { 9.80/3.33 "from": 414, 9.80/3.33 "to": 416, 9.80/3.33 "label": "PARALLEL" 9.80/3.33 }, 9.80/3.33 { 9.80/3.33 "from": 415, 9.80/3.33 "to": 455, 9.80/3.33 "label": "EVAL with clause\ndelete(X175, .(X175, X176), X176).\nand substitutionT113 -> T198,\nX175 -> T198,\nX176 -> T199,\nT106 -> .(T198, T199),\nX82 -> T199" 9.80/3.33 }, 9.80/3.33 { 9.80/3.33 "from": 415, 9.80/3.33 "to": 456, 9.80/3.33 "label": "EVAL-BACKTRACK" 9.80/3.33 }, 9.80/3.33 { 9.80/3.33 "from": 416, 9.80/3.33 "to": 458, 9.80/3.33 "label": "EVAL with clause\ndelete(X187, .(X188, X189), .(X188, X190)) :- delete(X187, X189, X190).\nand substitutionT113 -> T206,\nX187 -> T206,\nX188 -> T207,\nX189 -> T208,\nT106 -> .(T207, T208),\nX190 -> X191,\nX82 -> .(T207, X191)" 9.80/3.33 }, 9.80/3.33 { 9.80/3.33 "from": 416, 9.80/3.33 "to": 459, 9.80/3.33 "label": "EVAL-BACKTRACK" 9.80/3.33 }, 9.80/3.33 { 9.80/3.33 "from": 455, 9.80/3.33 "to": 457, 9.80/3.33 "label": "SUCCESS" 9.80/3.33 }, 9.80/3.33 { 9.80/3.33 "from": 458, 9.80/3.33 "to": 412, 9.80/3.33 "label": "INSTANCE with matching:\nT113 -> T206\nT106 -> T208\nX82 -> X191" 9.80/3.33 } 9.80/3.33 ], 9.80/3.33 "type": "Graph" 9.80/3.33 } 9.80/3.33 } 9.80/3.33 9.80/3.33 ---------------------------------------- 9.80/3.33 9.80/3.33 (2) 9.80/3.33 Obligation: 9.80/3.33 Triples: 9.80/3.33 9.80/3.33 memberA(X1, X2, .(X3, X4)) :- memberA(X1, X2, X4). 9.80/3.33 memberB(X1, X2, .(X3, X4)) :- memberB(X1, X2, X4). 9.80/3.33 memberC(X1, .(X2, X3)) :- memberC(X1, X3). 9.80/3.33 deleteE(X1, .(X2, X3), .(X2, X4)) :- deleteE(X1, X3, X4). 9.80/3.33 reachD(X1, X2, .(X3, X4), X5) :- memberA(X1, X2, X4). 9.80/3.33 reachD(X1, X2, X3, X4) :- memberB(X1, X5, X3). 9.80/3.33 reachD(X1, X2, X3, X4) :- ','(membercB(X1, X5, X3), memberC(X5, X4)). 9.80/3.33 reachD(X1, X2, X3, X4) :- ','(membercB(X1, X5, X3), ','(membercC(X5, X4), deleteE(X5, X4, X6))). 9.80/3.33 reachD(X1, X2, X3, X4) :- ','(membercB(X1, X5, X3), ','(membercC(X5, X4), ','(deletecE(X5, X4, X6), reachD(X5, X2, X3, X6)))). 9.80/3.33 9.80/3.33 Clauses: 9.80/3.33 9.80/3.33 membercA(X1, X2, .(.(X1, .(X2, [])), X3)). 9.80/3.33 membercA(X1, X2, .(X3, X4)) :- membercA(X1, X2, X4). 9.80/3.33 membercB(X1, X2, .(.(X1, .(X2, [])), X3)). 9.80/3.33 membercB(X1, X2, .(X3, X4)) :- membercB(X1, X2, X4). 9.80/3.33 membercC(X1, .(X1, X2)). 9.80/3.33 membercC(X1, .(X2, X3)) :- membercC(X1, X3). 9.80/3.33 reachcD(X1, X2, .(.(X1, .(X2, [])), X3), X4). 9.80/3.33 reachcD(X1, X2, .(X3, X4), X5) :- membercA(X1, X2, X4). 9.80/3.33 reachcD(X1, X2, X3, X4) :- ','(membercB(X1, X5, X3), ','(membercC(X5, X4), ','(deletecE(X5, X4, X6), reachcD(X5, X2, X3, X6)))). 9.80/3.33 deletecE(X1, .(X1, X2), X2). 9.80/3.33 deletecE(X1, .(X2, X3), .(X2, X4)) :- deletecE(X1, X3, X4). 9.80/3.33 9.80/3.33 Afs: 9.80/3.33 9.80/3.33 reachD(x1, x2, x3, x4) = reachD(x1, x2, x3, x4) 9.80/3.33 9.80/3.33 9.80/3.33 ---------------------------------------- 9.80/3.33 9.80/3.33 (3) TriplesToPiDPProof (SOUND) 9.80/3.33 We use the technique of [DT09]. With regard to the inferred argument filtering the predicates were used in the following modes: 9.80/3.33 9.80/3.33 reachD_in_4: (b,b,b,b) 9.80/3.33 9.80/3.33 memberA_in_3: (b,b,b) 9.80/3.33 9.80/3.33 memberB_in_3: (b,f,b) 9.80/3.33 9.80/3.33 membercB_in_3: (b,f,b) 9.80/3.33 9.80/3.33 memberC_in_2: (b,b) 9.80/3.33 9.80/3.33 membercC_in_2: (b,b) 9.80/3.33 9.80/3.33 deleteE_in_3: (b,b,f) 9.80/3.33 9.80/3.33 deletecE_in_3: (b,b,f) 9.80/3.33 9.80/3.33 Transforming TRIPLES into the following Term Rewriting System: 9.80/3.33 9.80/3.33 Pi DP problem: 9.80/3.33 The TRS P consists of the following rules: 9.80/3.33 9.80/3.33 REACHD_IN_GGGG(X1, X2, .(X3, X4), X5) -> U5_GGGG(X1, X2, X3, X4, X5, memberA_in_ggg(X1, X2, X4)) 9.80/3.33 REACHD_IN_GGGG(X1, X2, .(X3, X4), X5) -> MEMBERA_IN_GGG(X1, X2, X4) 9.80/3.33 MEMBERA_IN_GGG(X1, X2, .(X3, X4)) -> U1_GGG(X1, X2, X3, X4, memberA_in_ggg(X1, X2, X4)) 9.80/3.33 MEMBERA_IN_GGG(X1, X2, .(X3, X4)) -> MEMBERA_IN_GGG(X1, X2, X4) 9.80/3.33 REACHD_IN_GGGG(X1, X2, X3, X4) -> U6_GGGG(X1, X2, X3, X4, memberB_in_gag(X1, X5, X3)) 9.80/3.33 REACHD_IN_GGGG(X1, X2, X3, X4) -> MEMBERB_IN_GAG(X1, X5, X3) 9.80/3.33 MEMBERB_IN_GAG(X1, X2, .(X3, X4)) -> U2_GAG(X1, X2, X3, X4, memberB_in_gag(X1, X2, X4)) 9.80/3.33 MEMBERB_IN_GAG(X1, X2, .(X3, X4)) -> MEMBERB_IN_GAG(X1, X2, X4) 9.80/3.33 REACHD_IN_GGGG(X1, X2, X3, X4) -> U7_GGGG(X1, X2, X3, X4, membercB_in_gag(X1, X5, X3)) 9.80/3.33 U7_GGGG(X1, X2, X3, X4, membercB_out_gag(X1, X5, X3)) -> U8_GGGG(X1, X2, X3, X4, memberC_in_gg(X5, X4)) 9.80/3.33 U7_GGGG(X1, X2, X3, X4, membercB_out_gag(X1, X5, X3)) -> MEMBERC_IN_GG(X5, X4) 9.80/3.33 MEMBERC_IN_GG(X1, .(X2, X3)) -> U3_GG(X1, X2, X3, memberC_in_gg(X1, X3)) 9.80/3.33 MEMBERC_IN_GG(X1, .(X2, X3)) -> MEMBERC_IN_GG(X1, X3) 9.80/3.33 U7_GGGG(X1, X2, X3, X4, membercB_out_gag(X1, X5, X3)) -> U9_GGGG(X1, X2, X3, X4, X5, membercC_in_gg(X5, X4)) 9.80/3.33 U9_GGGG(X1, X2, X3, X4, X5, membercC_out_gg(X5, X4)) -> U10_GGGG(X1, X2, X3, X4, deleteE_in_gga(X5, X4, X6)) 9.80/3.33 U9_GGGG(X1, X2, X3, X4, X5, membercC_out_gg(X5, X4)) -> DELETEE_IN_GGA(X5, X4, X6) 9.80/3.33 DELETEE_IN_GGA(X1, .(X2, X3), .(X2, X4)) -> U4_GGA(X1, X2, X3, X4, deleteE_in_gga(X1, X3, X4)) 9.80/3.33 DELETEE_IN_GGA(X1, .(X2, X3), .(X2, X4)) -> DELETEE_IN_GGA(X1, X3, X4) 9.80/3.33 U9_GGGG(X1, X2, X3, X4, X5, membercC_out_gg(X5, X4)) -> U11_GGGG(X1, X2, X3, X4, X5, deletecE_in_gga(X5, X4, X6)) 9.80/3.33 U11_GGGG(X1, X2, X3, X4, X5, deletecE_out_gga(X5, X4, X6)) -> U12_GGGG(X1, X2, X3, X4, reachD_in_gggg(X5, X2, X3, X6)) 9.80/3.33 U11_GGGG(X1, X2, X3, X4, X5, deletecE_out_gga(X5, X4, X6)) -> REACHD_IN_GGGG(X5, X2, X3, X6) 9.80/3.33 9.80/3.33 The TRS R consists of the following rules: 9.80/3.33 9.80/3.33 membercB_in_gag(X1, X2, .(.(X1, .(X2, [])), X3)) -> membercB_out_gag(X1, X2, .(.(X1, .(X2, [])), X3)) 9.80/3.33 membercB_in_gag(X1, X2, .(X3, X4)) -> U15_gag(X1, X2, X3, X4, membercB_in_gag(X1, X2, X4)) 9.80/3.33 U15_gag(X1, X2, X3, X4, membercB_out_gag(X1, X2, X4)) -> membercB_out_gag(X1, X2, .(X3, X4)) 9.80/3.33 membercC_in_gg(X1, .(X1, X2)) -> membercC_out_gg(X1, .(X1, X2)) 9.80/3.33 membercC_in_gg(X1, .(X2, X3)) -> U16_gg(X1, X2, X3, membercC_in_gg(X1, X3)) 9.80/3.33 U16_gg(X1, X2, X3, membercC_out_gg(X1, X3)) -> membercC_out_gg(X1, .(X2, X3)) 9.80/3.33 deletecE_in_gga(X1, .(X1, X2), X2) -> deletecE_out_gga(X1, .(X1, X2), X2) 9.80/3.33 deletecE_in_gga(X1, .(X2, X3), .(X2, X4)) -> U22_gga(X1, X2, X3, X4, deletecE_in_gga(X1, X3, X4)) 9.80/3.33 U22_gga(X1, X2, X3, X4, deletecE_out_gga(X1, X3, X4)) -> deletecE_out_gga(X1, .(X2, X3), .(X2, X4)) 9.80/3.33 9.80/3.33 The argument filtering Pi contains the following mapping: 9.80/3.33 reachD_in_gggg(x1, x2, x3, x4) = reachD_in_gggg(x1, x2, x3, x4) 9.80/3.33 9.80/3.33 .(x1, x2) = .(x1, x2) 9.80/3.33 9.80/3.33 memberA_in_ggg(x1, x2, x3) = memberA_in_ggg(x1, x2, x3) 9.80/3.33 9.80/3.33 memberB_in_gag(x1, x2, x3) = memberB_in_gag(x1, x3) 9.80/3.33 9.80/3.33 membercB_in_gag(x1, x2, x3) = membercB_in_gag(x1, x3) 9.80/3.33 9.80/3.33 [] = [] 9.80/3.33 9.80/3.33 membercB_out_gag(x1, x2, x3) = membercB_out_gag(x1, x2, x3) 9.80/3.33 9.80/3.33 U15_gag(x1, x2, x3, x4, x5) = U15_gag(x1, x3, x4, x5) 9.80/3.33 9.80/3.33 memberC_in_gg(x1, x2) = memberC_in_gg(x1, x2) 9.80/3.33 9.80/3.33 membercC_in_gg(x1, x2) = membercC_in_gg(x1, x2) 9.80/3.33 9.80/3.33 membercC_out_gg(x1, x2) = membercC_out_gg(x1, x2) 9.80/3.33 9.80/3.33 U16_gg(x1, x2, x3, x4) = U16_gg(x1, x2, x3, x4) 9.80/3.33 9.80/3.33 deleteE_in_gga(x1, x2, x3) = deleteE_in_gga(x1, x2) 9.80/3.33 9.80/3.33 deletecE_in_gga(x1, x2, x3) = deletecE_in_gga(x1, x2) 9.80/3.33 9.80/3.33 deletecE_out_gga(x1, x2, x3) = deletecE_out_gga(x1, x2, x3) 9.80/3.33 9.80/3.33 U22_gga(x1, x2, x3, x4, x5) = U22_gga(x1, x2, x3, x5) 9.80/3.33 9.80/3.33 REACHD_IN_GGGG(x1, x2, x3, x4) = REACHD_IN_GGGG(x1, x2, x3, x4) 9.80/3.33 9.80/3.33 U5_GGGG(x1, x2, x3, x4, x5, x6) = U5_GGGG(x1, x2, x3, x4, x5, x6) 9.80/3.33 9.80/3.33 MEMBERA_IN_GGG(x1, x2, x3) = MEMBERA_IN_GGG(x1, x2, x3) 9.80/3.33 9.80/3.33 U1_GGG(x1, x2, x3, x4, x5) = U1_GGG(x1, x2, x3, x4, x5) 9.80/3.33 9.80/3.33 U6_GGGG(x1, x2, x3, x4, x5) = U6_GGGG(x1, x2, x3, x4, x5) 9.80/3.33 9.80/3.33 MEMBERB_IN_GAG(x1, x2, x3) = MEMBERB_IN_GAG(x1, x3) 9.80/3.33 9.80/3.33 U2_GAG(x1, x2, x3, x4, x5) = U2_GAG(x1, x3, x4, x5) 9.80/3.33 9.80/3.33 U7_GGGG(x1, x2, x3, x4, x5) = U7_GGGG(x1, x2, x3, x4, x5) 9.80/3.33 9.80/3.33 U8_GGGG(x1, x2, x3, x4, x5) = U8_GGGG(x1, x2, x3, x4, x5) 9.80/3.33 9.80/3.33 MEMBERC_IN_GG(x1, x2) = MEMBERC_IN_GG(x1, x2) 9.80/3.33 9.80/3.33 U3_GG(x1, x2, x3, x4) = U3_GG(x1, x2, x3, x4) 9.80/3.33 9.80/3.33 U9_GGGG(x1, x2, x3, x4, x5, x6) = U9_GGGG(x1, x2, x3, x4, x5, x6) 9.80/3.33 9.80/3.33 U10_GGGG(x1, x2, x3, x4, x5) = U10_GGGG(x1, x2, x3, x4, x5) 9.80/3.33 9.80/3.33 DELETEE_IN_GGA(x1, x2, x3) = DELETEE_IN_GGA(x1, x2) 9.80/3.33 9.80/3.33 U4_GGA(x1, x2, x3, x4, x5) = U4_GGA(x1, x2, x3, x5) 9.80/3.33 9.80/3.33 U11_GGGG(x1, x2, x3, x4, x5, x6) = U11_GGGG(x1, x2, x3, x4, x5, x6) 9.80/3.33 9.80/3.33 U12_GGGG(x1, x2, x3, x4, x5) = U12_GGGG(x1, x2, x3, x4, x5) 9.80/3.33 9.80/3.33 9.80/3.33 We have to consider all (P,R,Pi)-chains 9.80/3.33 9.80/3.33 9.80/3.33 Infinitary Constructor Rewriting Termination of PiDP implies Termination of TRIPLES 9.80/3.33 9.80/3.33 9.80/3.33 9.80/3.33 ---------------------------------------- 9.80/3.33 9.80/3.33 (4) 9.80/3.33 Obligation: 9.80/3.33 Pi DP problem: 9.80/3.33 The TRS P consists of the following rules: 9.80/3.33 9.80/3.33 REACHD_IN_GGGG(X1, X2, .(X3, X4), X5) -> U5_GGGG(X1, X2, X3, X4, X5, memberA_in_ggg(X1, X2, X4)) 9.80/3.33 REACHD_IN_GGGG(X1, X2, .(X3, X4), X5) -> MEMBERA_IN_GGG(X1, X2, X4) 9.80/3.33 MEMBERA_IN_GGG(X1, X2, .(X3, X4)) -> U1_GGG(X1, X2, X3, X4, memberA_in_ggg(X1, X2, X4)) 9.80/3.33 MEMBERA_IN_GGG(X1, X2, .(X3, X4)) -> MEMBERA_IN_GGG(X1, X2, X4) 9.80/3.33 REACHD_IN_GGGG(X1, X2, X3, X4) -> U6_GGGG(X1, X2, X3, X4, memberB_in_gag(X1, X5, X3)) 9.80/3.33 REACHD_IN_GGGG(X1, X2, X3, X4) -> MEMBERB_IN_GAG(X1, X5, X3) 9.80/3.33 MEMBERB_IN_GAG(X1, X2, .(X3, X4)) -> U2_GAG(X1, X2, X3, X4, memberB_in_gag(X1, X2, X4)) 9.80/3.33 MEMBERB_IN_GAG(X1, X2, .(X3, X4)) -> MEMBERB_IN_GAG(X1, X2, X4) 9.80/3.33 REACHD_IN_GGGG(X1, X2, X3, X4) -> U7_GGGG(X1, X2, X3, X4, membercB_in_gag(X1, X5, X3)) 9.80/3.33 U7_GGGG(X1, X2, X3, X4, membercB_out_gag(X1, X5, X3)) -> U8_GGGG(X1, X2, X3, X4, memberC_in_gg(X5, X4)) 9.80/3.33 U7_GGGG(X1, X2, X3, X4, membercB_out_gag(X1, X5, X3)) -> MEMBERC_IN_GG(X5, X4) 9.80/3.33 MEMBERC_IN_GG(X1, .(X2, X3)) -> U3_GG(X1, X2, X3, memberC_in_gg(X1, X3)) 9.80/3.33 MEMBERC_IN_GG(X1, .(X2, X3)) -> MEMBERC_IN_GG(X1, X3) 9.80/3.33 U7_GGGG(X1, X2, X3, X4, membercB_out_gag(X1, X5, X3)) -> U9_GGGG(X1, X2, X3, X4, X5, membercC_in_gg(X5, X4)) 9.80/3.33 U9_GGGG(X1, X2, X3, X4, X5, membercC_out_gg(X5, X4)) -> U10_GGGG(X1, X2, X3, X4, deleteE_in_gga(X5, X4, X6)) 9.80/3.33 U9_GGGG(X1, X2, X3, X4, X5, membercC_out_gg(X5, X4)) -> DELETEE_IN_GGA(X5, X4, X6) 9.80/3.33 DELETEE_IN_GGA(X1, .(X2, X3), .(X2, X4)) -> U4_GGA(X1, X2, X3, X4, deleteE_in_gga(X1, X3, X4)) 9.80/3.33 DELETEE_IN_GGA(X1, .(X2, X3), .(X2, X4)) -> DELETEE_IN_GGA(X1, X3, X4) 9.80/3.33 U9_GGGG(X1, X2, X3, X4, X5, membercC_out_gg(X5, X4)) -> U11_GGGG(X1, X2, X3, X4, X5, deletecE_in_gga(X5, X4, X6)) 9.80/3.33 U11_GGGG(X1, X2, X3, X4, X5, deletecE_out_gga(X5, X4, X6)) -> U12_GGGG(X1, X2, X3, X4, reachD_in_gggg(X5, X2, X3, X6)) 9.80/3.33 U11_GGGG(X1, X2, X3, X4, X5, deletecE_out_gga(X5, X4, X6)) -> REACHD_IN_GGGG(X5, X2, X3, X6) 9.80/3.33 9.80/3.33 The TRS R consists of the following rules: 9.80/3.33 9.80/3.33 membercB_in_gag(X1, X2, .(.(X1, .(X2, [])), X3)) -> membercB_out_gag(X1, X2, .(.(X1, .(X2, [])), X3)) 9.80/3.33 membercB_in_gag(X1, X2, .(X3, X4)) -> U15_gag(X1, X2, X3, X4, membercB_in_gag(X1, X2, X4)) 9.80/3.33 U15_gag(X1, X2, X3, X4, membercB_out_gag(X1, X2, X4)) -> membercB_out_gag(X1, X2, .(X3, X4)) 9.80/3.33 membercC_in_gg(X1, .(X1, X2)) -> membercC_out_gg(X1, .(X1, X2)) 9.80/3.33 membercC_in_gg(X1, .(X2, X3)) -> U16_gg(X1, X2, X3, membercC_in_gg(X1, X3)) 9.80/3.33 U16_gg(X1, X2, X3, membercC_out_gg(X1, X3)) -> membercC_out_gg(X1, .(X2, X3)) 9.80/3.33 deletecE_in_gga(X1, .(X1, X2), X2) -> deletecE_out_gga(X1, .(X1, X2), X2) 9.80/3.33 deletecE_in_gga(X1, .(X2, X3), .(X2, X4)) -> U22_gga(X1, X2, X3, X4, deletecE_in_gga(X1, X3, X4)) 9.80/3.33 U22_gga(X1, X2, X3, X4, deletecE_out_gga(X1, X3, X4)) -> deletecE_out_gga(X1, .(X2, X3), .(X2, X4)) 9.80/3.33 9.80/3.33 The argument filtering Pi contains the following mapping: 9.80/3.33 reachD_in_gggg(x1, x2, x3, x4) = reachD_in_gggg(x1, x2, x3, x4) 9.80/3.33 9.80/3.33 .(x1, x2) = .(x1, x2) 9.80/3.33 9.80/3.33 memberA_in_ggg(x1, x2, x3) = memberA_in_ggg(x1, x2, x3) 9.80/3.33 9.80/3.33 memberB_in_gag(x1, x2, x3) = memberB_in_gag(x1, x3) 9.80/3.33 9.80/3.33 membercB_in_gag(x1, x2, x3) = membercB_in_gag(x1, x3) 9.80/3.33 9.80/3.33 [] = [] 9.80/3.33 9.80/3.33 membercB_out_gag(x1, x2, x3) = membercB_out_gag(x1, x2, x3) 9.80/3.33 9.80/3.33 U15_gag(x1, x2, x3, x4, x5) = U15_gag(x1, x3, x4, x5) 9.80/3.33 9.80/3.33 memberC_in_gg(x1, x2) = memberC_in_gg(x1, x2) 9.80/3.33 9.80/3.33 membercC_in_gg(x1, x2) = membercC_in_gg(x1, x2) 9.80/3.33 9.80/3.33 membercC_out_gg(x1, x2) = membercC_out_gg(x1, x2) 9.80/3.33 9.80/3.33 U16_gg(x1, x2, x3, x4) = U16_gg(x1, x2, x3, x4) 9.80/3.33 9.80/3.33 deleteE_in_gga(x1, x2, x3) = deleteE_in_gga(x1, x2) 9.80/3.33 9.80/3.33 deletecE_in_gga(x1, x2, x3) = deletecE_in_gga(x1, x2) 9.80/3.33 9.80/3.33 deletecE_out_gga(x1, x2, x3) = deletecE_out_gga(x1, x2, x3) 9.80/3.33 9.80/3.33 U22_gga(x1, x2, x3, x4, x5) = U22_gga(x1, x2, x3, x5) 9.80/3.33 9.80/3.33 REACHD_IN_GGGG(x1, x2, x3, x4) = REACHD_IN_GGGG(x1, x2, x3, x4) 9.80/3.33 9.80/3.33 U5_GGGG(x1, x2, x3, x4, x5, x6) = U5_GGGG(x1, x2, x3, x4, x5, x6) 9.80/3.33 9.80/3.33 MEMBERA_IN_GGG(x1, x2, x3) = MEMBERA_IN_GGG(x1, x2, x3) 9.80/3.33 9.80/3.33 U1_GGG(x1, x2, x3, x4, x5) = U1_GGG(x1, x2, x3, x4, x5) 9.80/3.33 9.80/3.33 U6_GGGG(x1, x2, x3, x4, x5) = U6_GGGG(x1, x2, x3, x4, x5) 9.80/3.33 9.80/3.33 MEMBERB_IN_GAG(x1, x2, x3) = MEMBERB_IN_GAG(x1, x3) 9.80/3.33 9.80/3.33 U2_GAG(x1, x2, x3, x4, x5) = U2_GAG(x1, x3, x4, x5) 9.80/3.33 9.80/3.33 U7_GGGG(x1, x2, x3, x4, x5) = U7_GGGG(x1, x2, x3, x4, x5) 9.80/3.33 9.80/3.33 U8_GGGG(x1, x2, x3, x4, x5) = U8_GGGG(x1, x2, x3, x4, x5) 9.80/3.33 9.80/3.33 MEMBERC_IN_GG(x1, x2) = MEMBERC_IN_GG(x1, x2) 9.80/3.33 9.80/3.33 U3_GG(x1, x2, x3, x4) = U3_GG(x1, x2, x3, x4) 9.80/3.33 9.80/3.33 U9_GGGG(x1, x2, x3, x4, x5, x6) = U9_GGGG(x1, x2, x3, x4, x5, x6) 9.80/3.33 9.80/3.33 U10_GGGG(x1, x2, x3, x4, x5) = U10_GGGG(x1, x2, x3, x4, x5) 9.80/3.33 9.80/3.33 DELETEE_IN_GGA(x1, x2, x3) = DELETEE_IN_GGA(x1, x2) 9.80/3.33 9.80/3.33 U4_GGA(x1, x2, x3, x4, x5) = U4_GGA(x1, x2, x3, x5) 9.80/3.33 9.80/3.33 U11_GGGG(x1, x2, x3, x4, x5, x6) = U11_GGGG(x1, x2, x3, x4, x5, x6) 9.80/3.33 9.80/3.33 U12_GGGG(x1, x2, x3, x4, x5) = U12_GGGG(x1, x2, x3, x4, x5) 9.80/3.33 9.80/3.33 9.80/3.33 We have to consider all (P,R,Pi)-chains 9.80/3.33 ---------------------------------------- 9.80/3.33 9.80/3.33 (5) DependencyGraphProof (EQUIVALENT) 9.80/3.33 The approximation of the Dependency Graph [LOPSTR] contains 5 SCCs with 13 less nodes. 9.80/3.33 ---------------------------------------- 9.80/3.33 9.80/3.33 (6) 9.80/3.33 Complex Obligation (AND) 9.80/3.33 9.80/3.33 ---------------------------------------- 9.80/3.33 9.80/3.33 (7) 9.80/3.33 Obligation: 9.80/3.33 Pi DP problem: 9.80/3.33 The TRS P consists of the following rules: 9.80/3.33 9.80/3.33 DELETEE_IN_GGA(X1, .(X2, X3), .(X2, X4)) -> DELETEE_IN_GGA(X1, X3, X4) 9.80/3.33 9.80/3.33 The TRS R consists of the following rules: 9.80/3.33 9.80/3.33 membercB_in_gag(X1, X2, .(.(X1, .(X2, [])), X3)) -> membercB_out_gag(X1, X2, .(.(X1, .(X2, [])), X3)) 9.80/3.33 membercB_in_gag(X1, X2, .(X3, X4)) -> U15_gag(X1, X2, X3, X4, membercB_in_gag(X1, X2, X4)) 9.80/3.33 U15_gag(X1, X2, X3, X4, membercB_out_gag(X1, X2, X4)) -> membercB_out_gag(X1, X2, .(X3, X4)) 9.80/3.33 membercC_in_gg(X1, .(X1, X2)) -> membercC_out_gg(X1, .(X1, X2)) 9.80/3.33 membercC_in_gg(X1, .(X2, X3)) -> U16_gg(X1, X2, X3, membercC_in_gg(X1, X3)) 9.80/3.33 U16_gg(X1, X2, X3, membercC_out_gg(X1, X3)) -> membercC_out_gg(X1, .(X2, X3)) 9.80/3.33 deletecE_in_gga(X1, .(X1, X2), X2) -> deletecE_out_gga(X1, .(X1, X2), X2) 9.80/3.33 deletecE_in_gga(X1, .(X2, X3), .(X2, X4)) -> U22_gga(X1, X2, X3, X4, deletecE_in_gga(X1, X3, X4)) 9.80/3.33 U22_gga(X1, X2, X3, X4, deletecE_out_gga(X1, X3, X4)) -> deletecE_out_gga(X1, .(X2, X3), .(X2, X4)) 9.80/3.33 9.80/3.33 The argument filtering Pi contains the following mapping: 9.80/3.33 .(x1, x2) = .(x1, x2) 9.80/3.33 9.80/3.33 membercB_in_gag(x1, x2, x3) = membercB_in_gag(x1, x3) 9.80/3.33 9.80/3.33 [] = [] 9.80/3.33 9.80/3.33 membercB_out_gag(x1, x2, x3) = membercB_out_gag(x1, x2, x3) 9.80/3.33 9.80/3.33 U15_gag(x1, x2, x3, x4, x5) = U15_gag(x1, x3, x4, x5) 9.80/3.33 9.80/3.33 membercC_in_gg(x1, x2) = membercC_in_gg(x1, x2) 9.80/3.33 9.80/3.33 membercC_out_gg(x1, x2) = membercC_out_gg(x1, x2) 9.80/3.33 9.80/3.33 U16_gg(x1, x2, x3, x4) = U16_gg(x1, x2, x3, x4) 9.80/3.33 9.80/3.33 deletecE_in_gga(x1, x2, x3) = deletecE_in_gga(x1, x2) 9.80/3.33 9.80/3.33 deletecE_out_gga(x1, x2, x3) = deletecE_out_gga(x1, x2, x3) 9.80/3.33 9.80/3.33 U22_gga(x1, x2, x3, x4, x5) = U22_gga(x1, x2, x3, x5) 9.80/3.33 9.80/3.33 DELETEE_IN_GGA(x1, x2, x3) = DELETEE_IN_GGA(x1, x2) 9.80/3.33 9.80/3.33 9.80/3.33 We have to consider all (P,R,Pi)-chains 9.80/3.33 ---------------------------------------- 9.80/3.33 9.80/3.33 (8) UsableRulesProof (EQUIVALENT) 9.80/3.33 For (infinitary) constructor rewriting [LOPSTR] we can delete all non-usable rules from R. 9.80/3.33 ---------------------------------------- 9.80/3.33 9.80/3.33 (9) 9.80/3.33 Obligation: 9.80/3.33 Pi DP problem: 9.80/3.33 The TRS P consists of the following rules: 9.80/3.33 9.80/3.33 DELETEE_IN_GGA(X1, .(X2, X3), .(X2, X4)) -> DELETEE_IN_GGA(X1, X3, X4) 9.80/3.33 9.80/3.33 R is empty. 9.80/3.33 The argument filtering Pi contains the following mapping: 9.80/3.33 .(x1, x2) = .(x1, x2) 9.80/3.33 9.80/3.33 DELETEE_IN_GGA(x1, x2, x3) = DELETEE_IN_GGA(x1, x2) 9.80/3.33 9.80/3.33 9.80/3.33 We have to consider all (P,R,Pi)-chains 9.80/3.33 ---------------------------------------- 9.80/3.33 9.80/3.33 (10) PiDPToQDPProof (SOUND) 9.80/3.33 Transforming (infinitary) constructor rewriting Pi-DP problem [LOPSTR] into ordinary QDP problem [LPAR04] by application of Pi. 9.80/3.33 ---------------------------------------- 9.80/3.33 9.80/3.33 (11) 9.80/3.33 Obligation: 9.80/3.33 Q DP problem: 9.80/3.33 The TRS P consists of the following rules: 9.80/3.33 9.80/3.33 DELETEE_IN_GGA(X1, .(X2, X3)) -> DELETEE_IN_GGA(X1, X3) 9.80/3.33 9.80/3.33 R is empty. 9.80/3.33 Q is empty. 9.80/3.33 We have to consider all (P,Q,R)-chains. 9.80/3.33 ---------------------------------------- 9.80/3.33 9.80/3.33 (12) QDPSizeChangeProof (EQUIVALENT) 9.80/3.33 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. 9.80/3.33 9.80/3.33 From the DPs we obtained the following set of size-change graphs: 9.80/3.33 *DELETEE_IN_GGA(X1, .(X2, X3)) -> DELETEE_IN_GGA(X1, X3) 9.80/3.33 The graph contains the following edges 1 >= 1, 2 > 2 9.80/3.33 9.80/3.33 9.80/3.33 ---------------------------------------- 9.80/3.33 9.80/3.33 (13) 9.80/3.33 YES 9.80/3.33 9.80/3.33 ---------------------------------------- 9.80/3.33 9.80/3.33 (14) 9.80/3.33 Obligation: 9.80/3.33 Pi DP problem: 9.80/3.33 The TRS P consists of the following rules: 9.80/3.33 9.80/3.33 MEMBERC_IN_GG(X1, .(X2, X3)) -> MEMBERC_IN_GG(X1, X3) 9.80/3.33 9.80/3.33 The TRS R consists of the following rules: 9.80/3.33 9.80/3.33 membercB_in_gag(X1, X2, .(.(X1, .(X2, [])), X3)) -> membercB_out_gag(X1, X2, .(.(X1, .(X2, [])), X3)) 9.80/3.33 membercB_in_gag(X1, X2, .(X3, X4)) -> U15_gag(X1, X2, X3, X4, membercB_in_gag(X1, X2, X4)) 9.80/3.33 U15_gag(X1, X2, X3, X4, membercB_out_gag(X1, X2, X4)) -> membercB_out_gag(X1, X2, .(X3, X4)) 9.80/3.33 membercC_in_gg(X1, .(X1, X2)) -> membercC_out_gg(X1, .(X1, X2)) 9.80/3.33 membercC_in_gg(X1, .(X2, X3)) -> U16_gg(X1, X2, X3, membercC_in_gg(X1, X3)) 9.80/3.33 U16_gg(X1, X2, X3, membercC_out_gg(X1, X3)) -> membercC_out_gg(X1, .(X2, X3)) 9.80/3.33 deletecE_in_gga(X1, .(X1, X2), X2) -> deletecE_out_gga(X1, .(X1, X2), X2) 9.80/3.33 deletecE_in_gga(X1, .(X2, X3), .(X2, X4)) -> U22_gga(X1, X2, X3, X4, deletecE_in_gga(X1, X3, X4)) 9.80/3.33 U22_gga(X1, X2, X3, X4, deletecE_out_gga(X1, X3, X4)) -> deletecE_out_gga(X1, .(X2, X3), .(X2, X4)) 9.80/3.33 9.80/3.33 The argument filtering Pi contains the following mapping: 9.80/3.33 .(x1, x2) = .(x1, x2) 9.80/3.33 9.80/3.33 membercB_in_gag(x1, x2, x3) = membercB_in_gag(x1, x3) 9.80/3.33 9.80/3.33 [] = [] 9.80/3.33 9.80/3.33 membercB_out_gag(x1, x2, x3) = membercB_out_gag(x1, x2, x3) 9.80/3.33 9.80/3.33 U15_gag(x1, x2, x3, x4, x5) = U15_gag(x1, x3, x4, x5) 9.80/3.33 9.80/3.33 membercC_in_gg(x1, x2) = membercC_in_gg(x1, x2) 9.80/3.33 9.80/3.33 membercC_out_gg(x1, x2) = membercC_out_gg(x1, x2) 9.80/3.33 9.80/3.33 U16_gg(x1, x2, x3, x4) = U16_gg(x1, x2, x3, x4) 9.80/3.33 9.80/3.33 deletecE_in_gga(x1, x2, x3) = deletecE_in_gga(x1, x2) 9.80/3.33 9.80/3.33 deletecE_out_gga(x1, x2, x3) = deletecE_out_gga(x1, x2, x3) 9.80/3.33 9.80/3.33 U22_gga(x1, x2, x3, x4, x5) = U22_gga(x1, x2, x3, x5) 9.80/3.33 9.80/3.33 MEMBERC_IN_GG(x1, x2) = MEMBERC_IN_GG(x1, x2) 9.80/3.33 9.80/3.33 9.80/3.33 We have to consider all (P,R,Pi)-chains 9.80/3.33 ---------------------------------------- 9.80/3.33 9.80/3.33 (15) UsableRulesProof (EQUIVALENT) 9.80/3.33 For (infinitary) constructor rewriting [LOPSTR] we can delete all non-usable rules from R. 9.80/3.33 ---------------------------------------- 9.80/3.33 9.80/3.33 (16) 9.80/3.33 Obligation: 9.80/3.33 Pi DP problem: 9.80/3.33 The TRS P consists of the following rules: 9.80/3.33 9.80/3.33 MEMBERC_IN_GG(X1, .(X2, X3)) -> MEMBERC_IN_GG(X1, X3) 9.80/3.33 9.80/3.33 R is empty. 9.80/3.33 Pi is empty. 9.80/3.33 We have to consider all (P,R,Pi)-chains 9.80/3.33 ---------------------------------------- 9.80/3.33 9.80/3.33 (17) PiDPToQDPProof (EQUIVALENT) 9.80/3.33 Transforming (infinitary) constructor rewriting Pi-DP problem [LOPSTR] into ordinary QDP problem [LPAR04] by application of Pi. 9.80/3.33 ---------------------------------------- 9.80/3.33 9.80/3.33 (18) 9.80/3.33 Obligation: 9.80/3.33 Q DP problem: 9.80/3.33 The TRS P consists of the following rules: 9.80/3.33 9.80/3.33 MEMBERC_IN_GG(X1, .(X2, X3)) -> MEMBERC_IN_GG(X1, X3) 9.80/3.33 9.80/3.33 R is empty. 9.80/3.33 Q is empty. 9.80/3.33 We have to consider all (P,Q,R)-chains. 9.80/3.33 ---------------------------------------- 9.80/3.33 9.80/3.33 (19) QDPSizeChangeProof (EQUIVALENT) 9.80/3.33 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. 9.80/3.33 9.80/3.33 From the DPs we obtained the following set of size-change graphs: 9.80/3.33 *MEMBERC_IN_GG(X1, .(X2, X3)) -> MEMBERC_IN_GG(X1, X3) 9.80/3.33 The graph contains the following edges 1 >= 1, 2 > 2 9.80/3.33 9.80/3.33 9.80/3.33 ---------------------------------------- 9.80/3.33 9.80/3.33 (20) 9.80/3.33 YES 9.80/3.33 9.80/3.33 ---------------------------------------- 9.80/3.33 9.80/3.33 (21) 9.80/3.33 Obligation: 9.80/3.33 Pi DP problem: 9.80/3.33 The TRS P consists of the following rules: 9.80/3.33 9.80/3.33 MEMBERB_IN_GAG(X1, X2, .(X3, X4)) -> MEMBERB_IN_GAG(X1, X2, X4) 9.80/3.33 9.80/3.33 The TRS R consists of the following rules: 9.80/3.33 9.80/3.33 membercB_in_gag(X1, X2, .(.(X1, .(X2, [])), X3)) -> membercB_out_gag(X1, X2, .(.(X1, .(X2, [])), X3)) 9.80/3.33 membercB_in_gag(X1, X2, .(X3, X4)) -> U15_gag(X1, X2, X3, X4, membercB_in_gag(X1, X2, X4)) 9.80/3.33 U15_gag(X1, X2, X3, X4, membercB_out_gag(X1, X2, X4)) -> membercB_out_gag(X1, X2, .(X3, X4)) 9.80/3.33 membercC_in_gg(X1, .(X1, X2)) -> membercC_out_gg(X1, .(X1, X2)) 9.80/3.33 membercC_in_gg(X1, .(X2, X3)) -> U16_gg(X1, X2, X3, membercC_in_gg(X1, X3)) 9.80/3.33 U16_gg(X1, X2, X3, membercC_out_gg(X1, X3)) -> membercC_out_gg(X1, .(X2, X3)) 9.80/3.33 deletecE_in_gga(X1, .(X1, X2), X2) -> deletecE_out_gga(X1, .(X1, X2), X2) 9.80/3.33 deletecE_in_gga(X1, .(X2, X3), .(X2, X4)) -> U22_gga(X1, X2, X3, X4, deletecE_in_gga(X1, X3, X4)) 9.80/3.33 U22_gga(X1, X2, X3, X4, deletecE_out_gga(X1, X3, X4)) -> deletecE_out_gga(X1, .(X2, X3), .(X2, X4)) 9.80/3.33 9.80/3.33 The argument filtering Pi contains the following mapping: 9.80/3.33 .(x1, x2) = .(x1, x2) 9.80/3.33 9.80/3.33 membercB_in_gag(x1, x2, x3) = membercB_in_gag(x1, x3) 9.80/3.33 9.80/3.33 [] = [] 9.80/3.33 9.80/3.33 membercB_out_gag(x1, x2, x3) = membercB_out_gag(x1, x2, x3) 9.80/3.33 9.80/3.33 U15_gag(x1, x2, x3, x4, x5) = U15_gag(x1, x3, x4, x5) 9.80/3.33 9.80/3.33 membercC_in_gg(x1, x2) = membercC_in_gg(x1, x2) 9.80/3.33 9.80/3.33 membercC_out_gg(x1, x2) = membercC_out_gg(x1, x2) 9.80/3.33 9.80/3.33 U16_gg(x1, x2, x3, x4) = U16_gg(x1, x2, x3, x4) 9.80/3.33 9.80/3.33 deletecE_in_gga(x1, x2, x3) = deletecE_in_gga(x1, x2) 9.80/3.33 9.80/3.33 deletecE_out_gga(x1, x2, x3) = deletecE_out_gga(x1, x2, x3) 9.80/3.33 9.80/3.33 U22_gga(x1, x2, x3, x4, x5) = U22_gga(x1, x2, x3, x5) 9.80/3.33 9.80/3.33 MEMBERB_IN_GAG(x1, x2, x3) = MEMBERB_IN_GAG(x1, x3) 9.80/3.33 9.80/3.33 9.80/3.33 We have to consider all (P,R,Pi)-chains 9.80/3.33 ---------------------------------------- 9.80/3.33 9.80/3.33 (22) UsableRulesProof (EQUIVALENT) 9.80/3.33 For (infinitary) constructor rewriting [LOPSTR] we can delete all non-usable rules from R. 9.80/3.33 ---------------------------------------- 9.80/3.33 9.80/3.33 (23) 9.80/3.33 Obligation: 9.80/3.33 Pi DP problem: 9.80/3.33 The TRS P consists of the following rules: 9.80/3.33 9.80/3.33 MEMBERB_IN_GAG(X1, X2, .(X3, X4)) -> MEMBERB_IN_GAG(X1, X2, X4) 9.80/3.33 9.80/3.33 R is empty. 9.80/3.33 The argument filtering Pi contains the following mapping: 9.80/3.33 .(x1, x2) = .(x1, x2) 9.80/3.33 9.80/3.33 MEMBERB_IN_GAG(x1, x2, x3) = MEMBERB_IN_GAG(x1, x3) 9.80/3.33 9.80/3.33 9.80/3.33 We have to consider all (P,R,Pi)-chains 9.80/3.33 ---------------------------------------- 9.80/3.33 9.80/3.33 (24) PiDPToQDPProof (SOUND) 9.80/3.33 Transforming (infinitary) constructor rewriting Pi-DP problem [LOPSTR] into ordinary QDP problem [LPAR04] by application of Pi. 9.80/3.33 ---------------------------------------- 9.80/3.33 9.80/3.33 (25) 9.80/3.33 Obligation: 9.80/3.33 Q DP problem: 9.80/3.33 The TRS P consists of the following rules: 9.80/3.33 9.80/3.33 MEMBERB_IN_GAG(X1, .(X3, X4)) -> MEMBERB_IN_GAG(X1, X4) 9.80/3.33 9.80/3.33 R is empty. 9.80/3.33 Q is empty. 9.80/3.33 We have to consider all (P,Q,R)-chains. 9.80/3.33 ---------------------------------------- 9.80/3.33 9.80/3.33 (26) QDPSizeChangeProof (EQUIVALENT) 9.80/3.33 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. 9.80/3.33 9.80/3.33 From the DPs we obtained the following set of size-change graphs: 9.80/3.33 *MEMBERB_IN_GAG(X1, .(X3, X4)) -> MEMBERB_IN_GAG(X1, X4) 9.80/3.33 The graph contains the following edges 1 >= 1, 2 > 2 9.80/3.33 9.80/3.33 9.80/3.33 ---------------------------------------- 9.80/3.33 9.80/3.33 (27) 9.80/3.33 YES 9.80/3.33 9.80/3.33 ---------------------------------------- 9.80/3.33 9.80/3.33 (28) 9.80/3.33 Obligation: 9.80/3.33 Pi DP problem: 9.80/3.33 The TRS P consists of the following rules: 9.80/3.33 9.80/3.33 MEMBERA_IN_GGG(X1, X2, .(X3, X4)) -> MEMBERA_IN_GGG(X1, X2, X4) 9.80/3.33 9.80/3.33 The TRS R consists of the following rules: 9.80/3.33 9.80/3.33 membercB_in_gag(X1, X2, .(.(X1, .(X2, [])), X3)) -> membercB_out_gag(X1, X2, .(.(X1, .(X2, [])), X3)) 9.80/3.33 membercB_in_gag(X1, X2, .(X3, X4)) -> U15_gag(X1, X2, X3, X4, membercB_in_gag(X1, X2, X4)) 9.80/3.33 U15_gag(X1, X2, X3, X4, membercB_out_gag(X1, X2, X4)) -> membercB_out_gag(X1, X2, .(X3, X4)) 9.80/3.33 membercC_in_gg(X1, .(X1, X2)) -> membercC_out_gg(X1, .(X1, X2)) 9.80/3.33 membercC_in_gg(X1, .(X2, X3)) -> U16_gg(X1, X2, X3, membercC_in_gg(X1, X3)) 9.80/3.33 U16_gg(X1, X2, X3, membercC_out_gg(X1, X3)) -> membercC_out_gg(X1, .(X2, X3)) 9.80/3.33 deletecE_in_gga(X1, .(X1, X2), X2) -> deletecE_out_gga(X1, .(X1, X2), X2) 9.80/3.33 deletecE_in_gga(X1, .(X2, X3), .(X2, X4)) -> U22_gga(X1, X2, X3, X4, deletecE_in_gga(X1, X3, X4)) 9.80/3.33 U22_gga(X1, X2, X3, X4, deletecE_out_gga(X1, X3, X4)) -> deletecE_out_gga(X1, .(X2, X3), .(X2, X4)) 9.80/3.33 9.80/3.33 The argument filtering Pi contains the following mapping: 9.80/3.33 .(x1, x2) = .(x1, x2) 9.80/3.33 9.80/3.33 membercB_in_gag(x1, x2, x3) = membercB_in_gag(x1, x3) 9.80/3.33 9.80/3.33 [] = [] 9.80/3.33 9.80/3.33 membercB_out_gag(x1, x2, x3) = membercB_out_gag(x1, x2, x3) 9.80/3.33 9.80/3.33 U15_gag(x1, x2, x3, x4, x5) = U15_gag(x1, x3, x4, x5) 9.80/3.33 9.80/3.33 membercC_in_gg(x1, x2) = membercC_in_gg(x1, x2) 9.80/3.33 9.80/3.33 membercC_out_gg(x1, x2) = membercC_out_gg(x1, x2) 9.80/3.33 9.80/3.33 U16_gg(x1, x2, x3, x4) = U16_gg(x1, x2, x3, x4) 9.80/3.33 9.80/3.33 deletecE_in_gga(x1, x2, x3) = deletecE_in_gga(x1, x2) 9.80/3.33 9.80/3.33 deletecE_out_gga(x1, x2, x3) = deletecE_out_gga(x1, x2, x3) 9.80/3.33 9.80/3.33 U22_gga(x1, x2, x3, x4, x5) = U22_gga(x1, x2, x3, x5) 9.80/3.33 9.80/3.33 MEMBERA_IN_GGG(x1, x2, x3) = MEMBERA_IN_GGG(x1, x2, x3) 9.80/3.33 9.80/3.33 9.80/3.33 We have to consider all (P,R,Pi)-chains 9.80/3.33 ---------------------------------------- 9.80/3.33 9.80/3.33 (29) UsableRulesProof (EQUIVALENT) 9.80/3.33 For (infinitary) constructor rewriting [LOPSTR] we can delete all non-usable rules from R. 9.80/3.33 ---------------------------------------- 9.80/3.33 9.80/3.33 (30) 9.80/3.33 Obligation: 9.80/3.33 Pi DP problem: 9.80/3.33 The TRS P consists of the following rules: 9.80/3.33 9.80/3.33 MEMBERA_IN_GGG(X1, X2, .(X3, X4)) -> MEMBERA_IN_GGG(X1, X2, X4) 9.80/3.33 9.80/3.33 R is empty. 9.80/3.33 Pi is empty. 9.80/3.33 We have to consider all (P,R,Pi)-chains 9.80/3.33 ---------------------------------------- 9.80/3.33 9.80/3.33 (31) PiDPToQDPProof (EQUIVALENT) 9.80/3.33 Transforming (infinitary) constructor rewriting Pi-DP problem [LOPSTR] into ordinary QDP problem [LPAR04] by application of Pi. 9.80/3.33 ---------------------------------------- 9.80/3.33 9.80/3.33 (32) 9.80/3.33 Obligation: 9.80/3.33 Q DP problem: 9.80/3.33 The TRS P consists of the following rules: 9.80/3.33 9.80/3.33 MEMBERA_IN_GGG(X1, X2, .(X3, X4)) -> MEMBERA_IN_GGG(X1, X2, X4) 9.80/3.33 9.80/3.33 R is empty. 9.80/3.33 Q is empty. 9.80/3.33 We have to consider all (P,Q,R)-chains. 9.80/3.33 ---------------------------------------- 9.80/3.33 9.80/3.33 (33) QDPSizeChangeProof (EQUIVALENT) 9.80/3.33 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. 9.80/3.33 9.80/3.33 From the DPs we obtained the following set of size-change graphs: 9.80/3.33 *MEMBERA_IN_GGG(X1, X2, .(X3, X4)) -> MEMBERA_IN_GGG(X1, X2, X4) 9.80/3.33 The graph contains the following edges 1 >= 1, 2 >= 2, 3 > 3 9.80/3.33 9.80/3.33 9.80/3.33 ---------------------------------------- 9.80/3.33 9.80/3.33 (34) 9.80/3.33 YES 9.80/3.33 9.80/3.33 ---------------------------------------- 9.80/3.33 9.80/3.33 (35) 9.80/3.33 Obligation: 9.80/3.33 Pi DP problem: 9.80/3.33 The TRS P consists of the following rules: 9.80/3.33 9.80/3.33 REACHD_IN_GGGG(X1, X2, X3, X4) -> U7_GGGG(X1, X2, X3, X4, membercB_in_gag(X1, X5, X3)) 9.80/3.33 U7_GGGG(X1, X2, X3, X4, membercB_out_gag(X1, X5, X3)) -> U9_GGGG(X1, X2, X3, X4, X5, membercC_in_gg(X5, X4)) 9.80/3.33 U9_GGGG(X1, X2, X3, X4, X5, membercC_out_gg(X5, X4)) -> U11_GGGG(X1, X2, X3, X4, X5, deletecE_in_gga(X5, X4, X6)) 9.80/3.33 U11_GGGG(X1, X2, X3, X4, X5, deletecE_out_gga(X5, X4, X6)) -> REACHD_IN_GGGG(X5, X2, X3, X6) 9.80/3.33 9.80/3.33 The TRS R consists of the following rules: 9.80/3.33 9.80/3.33 membercB_in_gag(X1, X2, .(.(X1, .(X2, [])), X3)) -> membercB_out_gag(X1, X2, .(.(X1, .(X2, [])), X3)) 9.80/3.33 membercB_in_gag(X1, X2, .(X3, X4)) -> U15_gag(X1, X2, X3, X4, membercB_in_gag(X1, X2, X4)) 9.80/3.33 U15_gag(X1, X2, X3, X4, membercB_out_gag(X1, X2, X4)) -> membercB_out_gag(X1, X2, .(X3, X4)) 9.80/3.33 membercC_in_gg(X1, .(X1, X2)) -> membercC_out_gg(X1, .(X1, X2)) 9.80/3.33 membercC_in_gg(X1, .(X2, X3)) -> U16_gg(X1, X2, X3, membercC_in_gg(X1, X3)) 9.80/3.33 U16_gg(X1, X2, X3, membercC_out_gg(X1, X3)) -> membercC_out_gg(X1, .(X2, X3)) 9.80/3.33 deletecE_in_gga(X1, .(X1, X2), X2) -> deletecE_out_gga(X1, .(X1, X2), X2) 9.80/3.33 deletecE_in_gga(X1, .(X2, X3), .(X2, X4)) -> U22_gga(X1, X2, X3, X4, deletecE_in_gga(X1, X3, X4)) 9.80/3.33 U22_gga(X1, X2, X3, X4, deletecE_out_gga(X1, X3, X4)) -> deletecE_out_gga(X1, .(X2, X3), .(X2, X4)) 9.80/3.33 9.80/3.33 The argument filtering Pi contains the following mapping: 9.80/3.33 .(x1, x2) = .(x1, x2) 9.80/3.33 9.80/3.33 membercB_in_gag(x1, x2, x3) = membercB_in_gag(x1, x3) 9.80/3.33 9.80/3.33 [] = [] 9.80/3.33 9.80/3.33 membercB_out_gag(x1, x2, x3) = membercB_out_gag(x1, x2, x3) 9.80/3.33 9.80/3.33 U15_gag(x1, x2, x3, x4, x5) = U15_gag(x1, x3, x4, x5) 9.80/3.33 9.80/3.33 membercC_in_gg(x1, x2) = membercC_in_gg(x1, x2) 9.80/3.33 9.80/3.33 membercC_out_gg(x1, x2) = membercC_out_gg(x1, x2) 9.80/3.33 9.80/3.33 U16_gg(x1, x2, x3, x4) = U16_gg(x1, x2, x3, x4) 9.80/3.33 9.80/3.33 deletecE_in_gga(x1, x2, x3) = deletecE_in_gga(x1, x2) 9.80/3.33 9.80/3.33 deletecE_out_gga(x1, x2, x3) = deletecE_out_gga(x1, x2, x3) 9.80/3.33 9.80/3.33 U22_gga(x1, x2, x3, x4, x5) = U22_gga(x1, x2, x3, x5) 9.80/3.33 9.80/3.33 REACHD_IN_GGGG(x1, x2, x3, x4) = REACHD_IN_GGGG(x1, x2, x3, x4) 9.80/3.33 9.80/3.33 U7_GGGG(x1, x2, x3, x4, x5) = U7_GGGG(x1, x2, x3, x4, x5) 9.80/3.33 9.80/3.33 U9_GGGG(x1, x2, x3, x4, x5, x6) = U9_GGGG(x1, x2, x3, x4, x5, x6) 9.80/3.33 9.80/3.33 U11_GGGG(x1, x2, x3, x4, x5, x6) = U11_GGGG(x1, x2, x3, x4, x5, x6) 9.80/3.33 9.80/3.33 9.80/3.33 We have to consider all (P,R,Pi)-chains 9.80/3.33 ---------------------------------------- 9.80/3.33 9.80/3.33 (36) PiDPToQDPProof (SOUND) 9.80/3.33 Transforming (infinitary) constructor rewriting Pi-DP problem [LOPSTR] into ordinary QDP problem [LPAR04] by application of Pi. 9.80/3.33 ---------------------------------------- 9.80/3.33 9.80/3.33 (37) 9.80/3.33 Obligation: 9.80/3.33 Q DP problem: 9.80/3.33 The TRS P consists of the following rules: 9.80/3.33 9.80/3.33 REACHD_IN_GGGG(X1, X2, X3, X4) -> U7_GGGG(X1, X2, X3, X4, membercB_in_gag(X1, X3)) 9.80/3.33 U7_GGGG(X1, X2, X3, X4, membercB_out_gag(X1, X5, X3)) -> U9_GGGG(X1, X2, X3, X4, X5, membercC_in_gg(X5, X4)) 9.80/3.33 U9_GGGG(X1, X2, X3, X4, X5, membercC_out_gg(X5, X4)) -> U11_GGGG(X1, X2, X3, X4, X5, deletecE_in_gga(X5, X4)) 9.80/3.33 U11_GGGG(X1, X2, X3, X4, X5, deletecE_out_gga(X5, X4, X6)) -> REACHD_IN_GGGG(X5, X2, X3, X6) 9.80/3.33 9.80/3.33 The TRS R consists of the following rules: 9.80/3.33 9.80/3.33 membercB_in_gag(X1, .(.(X1, .(X2, [])), X3)) -> membercB_out_gag(X1, X2, .(.(X1, .(X2, [])), X3)) 9.80/3.33 membercB_in_gag(X1, .(X3, X4)) -> U15_gag(X1, X3, X4, membercB_in_gag(X1, X4)) 9.80/3.33 U15_gag(X1, X3, X4, membercB_out_gag(X1, X2, X4)) -> membercB_out_gag(X1, X2, .(X3, X4)) 9.80/3.33 membercC_in_gg(X1, .(X1, X2)) -> membercC_out_gg(X1, .(X1, X2)) 9.80/3.33 membercC_in_gg(X1, .(X2, X3)) -> U16_gg(X1, X2, X3, membercC_in_gg(X1, X3)) 9.80/3.33 U16_gg(X1, X2, X3, membercC_out_gg(X1, X3)) -> membercC_out_gg(X1, .(X2, X3)) 9.80/3.33 deletecE_in_gga(X1, .(X1, X2)) -> deletecE_out_gga(X1, .(X1, X2), X2) 9.80/3.33 deletecE_in_gga(X1, .(X2, X3)) -> U22_gga(X1, X2, X3, deletecE_in_gga(X1, X3)) 9.80/3.33 U22_gga(X1, X2, X3, deletecE_out_gga(X1, X3, X4)) -> deletecE_out_gga(X1, .(X2, X3), .(X2, X4)) 9.80/3.33 9.80/3.33 The set Q consists of the following terms: 9.80/3.33 9.80/3.33 membercB_in_gag(x0, x1) 9.80/3.33 U15_gag(x0, x1, x2, x3) 9.80/3.33 membercC_in_gg(x0, x1) 9.80/3.33 U16_gg(x0, x1, x2, x3) 9.80/3.33 deletecE_in_gga(x0, x1) 9.80/3.33 U22_gga(x0, x1, x2, x3) 9.80/3.33 9.80/3.33 We have to consider all (P,Q,R)-chains. 9.80/3.33 ---------------------------------------- 9.80/3.33 9.80/3.33 (38) QDPQMonotonicMRRProof (EQUIVALENT) 9.80/3.33 By using the Q-monotonic rule removal processor with the following ordering, at least one Dependency Pair or term rewrite system rule of this QDP problem can be strictly oriented such that it always occurs at a strongly monotonic position in a (P,Q,R)-chain. 9.80/3.33 9.80/3.33 Strictly oriented dependency pairs: 9.80/3.33 9.80/3.33 U7_GGGG(X1, X2, X3, X4, membercB_out_gag(X1, X5, X3)) -> U9_GGGG(X1, X2, X3, X4, X5, membercC_in_gg(X5, X4)) 9.80/3.33 U11_GGGG(X1, X2, X3, X4, X5, deletecE_out_gga(X5, X4, X6)) -> REACHD_IN_GGGG(X5, X2, X3, X6) 9.80/3.33 9.80/3.33 Strictly oriented rules of the TRS R: 9.80/3.33 9.80/3.33 deletecE_in_gga(X1, .(X1, X2)) -> deletecE_out_gga(X1, .(X1, X2), X2) 9.80/3.33 deletecE_in_gga(X1, .(X2, X3)) -> U22_gga(X1, X2, X3, deletecE_in_gga(X1, X3)) 9.80/3.33 9.80/3.33 Used ordering: Polynomial interpretation [POLO]: 9.80/3.33 9.80/3.33 POL(.(x_1, x_2)) = 2 + 2*x_2 9.80/3.33 POL(REACHD_IN_GGGG(x_1, x_2, x_3, x_4)) = 1 + x_2 + 2*x_4 9.80/3.33 POL(U11_GGGG(x_1, x_2, x_3, x_4, x_5, x_6)) = x_2 + 2*x_6 9.80/3.33 POL(U15_gag(x_1, x_2, x_3, x_4)) = 0 9.80/3.33 POL(U16_gg(x_1, x_2, x_3, x_4)) = 0 9.80/3.33 POL(U22_gga(x_1, x_2, x_3, x_4)) = 1 + 2*x_4 9.80/3.33 POL(U7_GGGG(x_1, x_2, x_3, x_4, x_5)) = 1 + x_2 + 2*x_4 9.80/3.33 POL(U9_GGGG(x_1, x_2, x_3, x_4, x_5, x_6)) = x_2 + 2*x_4 9.80/3.33 POL([]) = 0 9.80/3.33 POL(deletecE_in_gga(x_1, x_2)) = x_2 9.80/3.33 POL(deletecE_out_gga(x_1, x_2, x_3)) = 1 + x_3 9.80/3.33 POL(membercB_in_gag(x_1, x_2)) = 0 9.80/3.33 POL(membercB_out_gag(x_1, x_2, x_3)) = 0 9.80/3.33 POL(membercC_in_gg(x_1, x_2)) = 0 9.80/3.33 POL(membercC_out_gg(x_1, x_2)) = 0 9.80/3.33 9.80/3.33 9.80/3.33 ---------------------------------------- 9.80/3.33 9.80/3.33 (39) 9.80/3.33 Obligation: 9.80/3.33 Q DP problem: 9.80/3.33 The TRS P consists of the following rules: 9.80/3.33 9.80/3.33 REACHD_IN_GGGG(X1, X2, X3, X4) -> U7_GGGG(X1, X2, X3, X4, membercB_in_gag(X1, X3)) 9.80/3.33 U9_GGGG(X1, X2, X3, X4, X5, membercC_out_gg(X5, X4)) -> U11_GGGG(X1, X2, X3, X4, X5, deletecE_in_gga(X5, X4)) 9.80/3.33 9.80/3.33 The TRS R consists of the following rules: 9.80/3.33 9.80/3.33 membercB_in_gag(X1, .(.(X1, .(X2, [])), X3)) -> membercB_out_gag(X1, X2, .(.(X1, .(X2, [])), X3)) 9.80/3.33 membercB_in_gag(X1, .(X3, X4)) -> U15_gag(X1, X3, X4, membercB_in_gag(X1, X4)) 9.80/3.33 U15_gag(X1, X3, X4, membercB_out_gag(X1, X2, X4)) -> membercB_out_gag(X1, X2, .(X3, X4)) 9.80/3.33 membercC_in_gg(X1, .(X1, X2)) -> membercC_out_gg(X1, .(X1, X2)) 9.80/3.33 membercC_in_gg(X1, .(X2, X3)) -> U16_gg(X1, X2, X3, membercC_in_gg(X1, X3)) 9.80/3.33 U16_gg(X1, X2, X3, membercC_out_gg(X1, X3)) -> membercC_out_gg(X1, .(X2, X3)) 9.80/3.33 U22_gga(X1, X2, X3, deletecE_out_gga(X1, X3, X4)) -> deletecE_out_gga(X1, .(X2, X3), .(X2, X4)) 9.80/3.33 9.80/3.33 The set Q consists of the following terms: 9.80/3.33 9.80/3.33 membercB_in_gag(x0, x1) 9.80/3.33 U15_gag(x0, x1, x2, x3) 9.80/3.33 membercC_in_gg(x0, x1) 9.80/3.33 U16_gg(x0, x1, x2, x3) 9.80/3.33 deletecE_in_gga(x0, x1) 9.80/3.33 U22_gga(x0, x1, x2, x3) 9.80/3.33 9.80/3.33 We have to consider all (P,Q,R)-chains. 9.80/3.33 ---------------------------------------- 9.80/3.33 9.80/3.33 (40) DependencyGraphProof (EQUIVALENT) 9.80/3.33 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 0 SCCs with 2 less nodes. 9.80/3.33 ---------------------------------------- 9.80/3.33 9.80/3.33 (41) 9.80/3.33 TRUE 9.80/3.35 EOF