4.29/3.06 NO 4.29/3.06 We consider the system theBenchmark. 4.29/3.06 4.29/3.06 Alphabet: 4.29/3.06 4.29/3.06 0 : [] --> b 4.29/3.06 cons : [d * e] --> e 4.29/3.06 f : [b * b * b] --> a 4.29/3.06 false : [] --> c 4.29/3.06 filter : [d -> c * e] --> e 4.29/3.06 filter2 : [c * d -> c * d * e] --> e 4.29/3.06 g : [b] --> b 4.29/3.06 map : [d -> d * e] --> e 4.29/3.06 nil : [] --> e 4.29/3.06 s : [b] --> b 4.29/3.06 true : [] --> c 4.29/3.06 4.29/3.06 Rules: 4.29/3.06 4.29/3.06 f(g(x), s(0), y) => f(y, y, g(x)) 4.29/3.06 g(s(x)) => s(g(x)) 4.29/3.06 g(0) => 0 4.29/3.06 map(h, nil) => nil 4.29/3.06 map(h, cons(x, y)) => cons(h x, map(h, y)) 4.29/3.06 filter(h, nil) => nil 4.29/3.06 filter(h, cons(x, y)) => filter2(h x, h, x, y) 4.29/3.06 filter2(true, h, x, y) => cons(x, filter(h, y)) 4.29/3.06 filter2(false, h, x, y) => filter(h, y) 4.29/3.06 4.29/3.06 This AFS is converted to an AFSM simply by replacing all free variables by meta-variables (with arity 0). 4.29/3.06 4.29/3.06 This system is non-terminating, as demonstrated by our external first-order non-termination checker: 4.29/3.06 4.29/3.06 || The following well-typed term is terminating: f(g(s(0)), g(s(0)), g(s(0))) 4.29/3.06 || 4.29/3.06 || proof of resources/system.trs 4.29/3.06 || # AProVE Commit ID: 500ec9b2e2a919720cb177ef26031cb0220e008e fuhs 20130603 4.29/3.06 || 4.29/3.06 || 4.29/3.06 || Termination w.r.t. Q of the given QTRS could be disproven: 4.29/3.06 || 4.29/3.06 || (0) QTRS 4.29/3.06 || (1) NonTerminationProof [EQUIVALENT, 0 ms] 4.29/3.06 || (2) NO 4.29/3.06 || 4.29/3.06 || 4.29/3.06 || ---------------------------------------- 4.29/3.06 || 4.29/3.06 || (0) 4.29/3.06 || Obligation: 4.29/3.06 || Q restricted rewrite system: 4.29/3.06 || The TRS R consists of the following rules: 4.29/3.06 || 4.29/3.06 || f(g(%X), s(0), %Y) -> f(%Y, %Y, g(%X)) 4.29/3.06 || g(s(%X)) -> s(g(%X)) 4.29/3.06 || g(0) -> 0 4.29/3.06 || 4.29/3.06 || Q is empty. 4.29/3.06 || 4.29/3.06 || ---------------------------------------- 4.29/3.06 || 4.29/3.06 || (1) NonTerminationProof (EQUIVALENT) 4.29/3.06 || The following loops were found: 4.29/3.06 || 4.29/3.06 || ---------- Loop: ---------- 4.29/3.06 || 4.29/3.06 || f(g(s(0)), g(s(0)), g(s(0))) -> f(g(s(0)), s(g(0)), g(s(0))) with rule g(s(%X')) -> s(g(%X')) at position [1] and matcher [%X' / 0] 4.29/3.06 || 4.29/3.06 || f(g(s(0)), s(g(0)), g(s(0))) -> f(g(s(0)), s(0), g(s(0))) with rule g(0) -> 0 at position [1,0] and matcher [ ] 4.29/3.06 || 4.29/3.06 || f(g(s(0)), s(0), g(s(0))) -> f(g(s(0)), g(s(0)), g(s(0))) with rule f(g(%X), s(0), %Y) -> f(%Y, %Y, g(%X)) at position [] and matcher [%X / s(0), %Y / g(s(0))] 4.29/3.06 || 4.29/3.06 || Now an instance of the first term with Matcher [ ] occurs in the last term at position []. 4.29/3.06 || 4.29/3.06 || Context: [] 4.29/3.06 || 4.29/3.06 || 4.29/3.06 || ---------------------------------------- 4.29/3.06 || 4.29/3.06 || (2) 4.29/3.06 || NO 4.29/3.06 || 4.29/3.06 EOF