MAYBE TRS: { f(x, y, g(z)) -> g(f(x, y, z)), f(x, g(y), z) -> g(f(x, y, z)), f(g(x), y, z) -> g(f(x, y, z)), f(0(), 1(), x) -> f(g(x), g(x), x)} DP: Strict: { f#(x, y, g(z)) -> f#(x, y, z), f#(x, g(y), z) -> f#(x, y, z), f#(g(x), y, z) -> f#(x, y, z), f#(0(), 1(), x) -> f#(g(x), g(x), x)} Weak: { f(x, y, g(z)) -> g(f(x, y, z)), f(x, g(y), z) -> g(f(x, y, z)), f(g(x), y, z) -> g(f(x, y, z)), f(0(), 1(), x) -> f(g(x), g(x), x)} EDG: {(f#(x, g(y), z) -> f#(x, y, z), f#(0(), 1(), x) -> f#(g(x), g(x), x)) (f#(x, g(y), z) -> f#(x, y, z), f#(g(x), y, z) -> f#(x, y, z)) (f#(x, g(y), z) -> f#(x, y, z), f#(x, g(y), z) -> f#(x, y, z)) (f#(x, g(y), z) -> f#(x, y, z), f#(x, y, g(z)) -> f#(x, y, z)) (f#(0(), 1(), x) -> f#(g(x), g(x), x), f#(g(x), y, z) -> f#(x, y, z)) (f#(0(), 1(), x) -> f#(g(x), g(x), x), f#(x, g(y), z) -> f#(x, y, z)) (f#(0(), 1(), x) -> f#(g(x), g(x), x), f#(x, y, g(z)) -> f#(x, y, z)) (f#(g(x), y, z) -> f#(x, y, z), f#(x, y, g(z)) -> f#(x, y, z)) (f#(g(x), y, z) -> f#(x, y, z), f#(x, g(y), z) -> f#(x, y, z)) (f#(g(x), y, z) -> f#(x, y, z), f#(g(x), y, z) -> f#(x, y, z)) (f#(g(x), y, z) -> f#(x, y, z), f#(0(), 1(), x) -> f#(g(x), g(x), x)) (f#(x, y, g(z)) -> f#(x, y, z), f#(x, y, g(z)) -> f#(x, y, z)) (f#(x, y, g(z)) -> f#(x, y, z), f#(x, g(y), z) -> f#(x, y, z)) (f#(x, y, g(z)) -> f#(x, y, z), f#(g(x), y, z) -> f#(x, y, z)) (f#(x, y, g(z)) -> f#(x, y, z), f#(0(), 1(), x) -> f#(g(x), g(x), x))} SCCS: Scc: { f#(x, y, g(z)) -> f#(x, y, z), f#(x, g(y), z) -> f#(x, y, z), f#(g(x), y, z) -> f#(x, y, z), f#(0(), 1(), x) -> f#(g(x), g(x), x)} SCC: Strict: { f#(x, y, g(z)) -> f#(x, y, z), f#(x, g(y), z) -> f#(x, y, z), f#(g(x), y, z) -> f#(x, y, z), f#(0(), 1(), x) -> f#(g(x), g(x), x)} Weak: { f(x, y, g(z)) -> g(f(x, y, z)), f(x, g(y), z) -> g(f(x, y, z)), f(g(x), y, z) -> g(f(x, y, z)), f(0(), 1(), x) -> f(g(x), g(x), x)} SPSC: Simple Projection: pi(f#) = 2 Strict: { f#(x, g(y), z) -> f#(x, y, z), f#(g(x), y, z) -> f#(x, y, z), f#(0(), 1(), x) -> f#(g(x), g(x), x)} EDG: {(f#(g(x), y, z) -> f#(x, y, z), f#(0(), 1(), x) -> f#(g(x), g(x), x)) (f#(g(x), y, z) -> f#(x, y, z), f#(g(x), y, z) -> f#(x, y, z)) (f#(g(x), y, z) -> f#(x, y, z), f#(x, g(y), z) -> f#(x, y, z)) (f#(0(), 1(), x) -> f#(g(x), g(x), x), f#(x, g(y), z) -> f#(x, y, z)) (f#(0(), 1(), x) -> f#(g(x), g(x), x), f#(g(x), y, z) -> f#(x, y, z)) (f#(x, g(y), z) -> f#(x, y, z), f#(x, g(y), z) -> f#(x, y, z)) (f#(x, g(y), z) -> f#(x, y, z), f#(g(x), y, z) -> f#(x, y, z)) (f#(x, g(y), z) -> f#(x, y, z), f#(0(), 1(), x) -> f#(g(x), g(x), x))} SCCS: Scc: { f#(x, g(y), z) -> f#(x, y, z), f#(g(x), y, z) -> f#(x, y, z), f#(0(), 1(), x) -> f#(g(x), g(x), x)} SCC: Strict: { f#(x, g(y), z) -> f#(x, y, z), f#(g(x), y, z) -> f#(x, y, z), f#(0(), 1(), x) -> f#(g(x), g(x), x)} Weak: { f(x, y, g(z)) -> g(f(x, y, z)), f(x, g(y), z) -> g(f(x, y, z)), f(g(x), y, z) -> g(f(x, y, z)), f(0(), 1(), x) -> f(g(x), g(x), x)} Fail