YES TRS: { merge(x, nil()) -> x, merge(nil(), y) -> y, merge(++(x, y), ++(u(), v())) -> ++(x, merge(y, ++(u(), v()))), merge(++(x, y), ++(u(), v())) -> ++(u(), merge(++(x, y), v()))} RUF: Strict: {merge(++(x, y), ++(u(), v())) -> ++(x, merge(y, ++(u(), v()))), merge(++(x, y), ++(u(), v())) -> ++(u(), merge(++(x, y), v()))} Weak: {} DP: Strict: {merge#(++(x, y), ++(u(), v())) -> merge#(y, ++(u(), v())), merge#(++(x, y), ++(u(), v())) -> merge#(++(x, y), v())} Weak: {merge(++(x, y), ++(u(), v())) -> ++(x, merge(y, ++(u(), v()))), merge(++(x, y), ++(u(), v())) -> ++(u(), merge(++(x, y), v()))} EDG: {(merge#(++(x, y), ++(u(), v())) -> merge#(y, ++(u(), v())), merge#(++(x, y), ++(u(), v())) -> merge#(y, ++(u(), v()))) (merge#(++(x, y), ++(u(), v())) -> merge#(y, ++(u(), v())), merge#(++(x, y), ++(u(), v())) -> merge#(++(x, y), v()))} SCCS: Scc: {merge#(++(x, y), ++(u(), v())) -> merge#(y, ++(u(), v()))} SCC: Strict: {merge#(++(x, y), ++(u(), v())) -> merge#(y, ++(u(), v()))} Weak: {merge(++(x, y), ++(u(), v())) -> ++(x, merge(y, ++(u(), v()))), merge(++(x, y), ++(u(), v())) -> ++(u(), merge(++(x, y), v()))} SPSC: Simple Projection: pi(merge#) = 0 Strict: {} Qed