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