YES TRS: { msort(nil()) -> nil(), msort(.(x, y)) -> .(min(x, y), msort(del(min(x, y), .(x, y)))), min(x, nil()) -> x, min(x, .(y, z)) -> if(<=(x, y), min(x, z), min(y, z)), del(x, nil()) -> nil(), del(x, .(y, z)) -> if(=(x, y), z, .(y, del(x, z)))} DP: Strict: { msort#(.(x, y)) -> msort#(del(min(x, y), .(x, y))), msort#(.(x, y)) -> min#(x, y), msort#(.(x, y)) -> del#(min(x, y), .(x, y)), min#(x, .(y, z)) -> min#(x, z), min#(x, .(y, z)) -> min#(y, z), del#(x, .(y, z)) -> del#(x, z)} Weak: { msort(nil()) -> nil(), msort(.(x, y)) -> .(min(x, y), msort(del(min(x, y), .(x, y)))), min(x, nil()) -> x, min(x, .(y, z)) -> if(<=(x, y), min(x, z), min(y, z)), del(x, nil()) -> nil(), del(x, .(y, z)) -> if(=(x, y), z, .(y, del(x, z)))} EDG: {(min#(x, .(y, z)) -> min#(x, z), min#(x, .(y, z)) -> min#(y, z)) (min#(x, .(y, z)) -> min#(x, z), min#(x, .(y, z)) -> min#(x, z)) (del#(x, .(y, z)) -> del#(x, z), del#(x, .(y, z)) -> del#(x, z)) (msort#(.(x, y)) -> msort#(del(min(x, y), .(x, y))), msort#(.(x, y)) -> del#(min(x, y), .(x, y))) (msort#(.(x, y)) -> msort#(del(min(x, y), .(x, y))), msort#(.(x, y)) -> min#(x, y)) (msort#(.(x, y)) -> msort#(del(min(x, y), .(x, y))), msort#(.(x, y)) -> msort#(del(min(x, y), .(x, y)))) (msort#(.(x, y)) -> min#(x, y), min#(x, .(y, z)) -> min#(x, z)) (msort#(.(x, y)) -> min#(x, y), min#(x, .(y, z)) -> min#(y, z)) (min#(x, .(y, z)) -> min#(y, z), min#(x, .(y, z)) -> min#(x, z)) (min#(x, .(y, z)) -> min#(y, z), min#(x, .(y, z)) -> min#(y, z)) (msort#(.(x, y)) -> del#(min(x, y), .(x, y)), del#(x, .(y, z)) -> del#(x, z))} SCCS: Scc: {del#(x, .(y, z)) -> del#(x, z)} Scc: {min#(x, .(y, z)) -> min#(x, z), min#(x, .(y, z)) -> min#(y, z)} Scc: {msort#(.(x, y)) -> msort#(del(min(x, y), .(x, y)))} SCC: Strict: {del#(x, .(y, z)) -> del#(x, z)} Weak: { msort(nil()) -> nil(), msort(.(x, y)) -> .(min(x, y), msort(del(min(x, y), .(x, y)))), min(x, nil()) -> x, min(x, .(y, z)) -> if(<=(x, y), min(x, z), min(y, z)), del(x, nil()) -> nil(), del(x, .(y, z)) -> if(=(x, y), z, .(y, del(x, z)))} SPSC: Simple Projection: pi(del#) = 1 Strict: {} Qed SCC: Strict: {min#(x, .(y, z)) -> min#(x, z), min#(x, .(y, z)) -> min#(y, z)} Weak: { msort(nil()) -> nil(), msort(.(x, y)) -> .(min(x, y), msort(del(min(x, y), .(x, y)))), min(x, nil()) -> x, min(x, .(y, z)) -> if(<=(x, y), min(x, z), min(y, z)), del(x, nil()) -> nil(), del(x, .(y, z)) -> if(=(x, y), z, .(y, del(x, z)))} SPSC: Simple Projection: pi(min#) = 1 Strict: {min#(x, .(y, z)) -> min#(y, z)} EDG: {(min#(x, .(y, z)) -> min#(y, z), min#(x, .(y, z)) -> min#(y, z))} SCCS: Scc: {min#(x, .(y, z)) -> min#(y, z)} SCC: Strict: {min#(x, .(y, z)) -> min#(y, z)} Weak: { msort(nil()) -> nil(), msort(.(x, y)) -> .(min(x, y), msort(del(min(x, y), .(x, y)))), min(x, nil()) -> x, min(x, .(y, z)) -> if(<=(x, y), min(x, z), min(y, z)), del(x, nil()) -> nil(), del(x, .(y, z)) -> if(=(x, y), z, .(y, del(x, z)))} SPSC: Simple Projection: pi(min#) = 1 Strict: {} Qed SCC: Strict: {msort#(.(x, y)) -> msort#(del(min(x, y), .(x, y)))} Weak: { msort(nil()) -> nil(), msort(.(x, y)) -> .(min(x, y), msort(del(min(x, y), .(x, y)))), min(x, nil()) -> x, min(x, .(y, z)) -> if(<=(x, y), min(x, z), min(y, z)), del(x, nil()) -> nil(), del(x, .(y, z)) -> if(=(x, y), z, .(y, del(x, z)))} POLY: Argument Filtering: pi(=) = [], pi(<=) = [], pi(if) = [], pi(del) = [], pi(min) = [], pi(.) = [], pi(msort#) = 0, pi(msort) = [], pi(nil) = [] Usable Rules: {} Interpretation: [del] = 0, [.] = 1 Strict: {} Weak: { msort(nil()) -> nil(), msort(.(x, y)) -> .(min(x, y), msort(del(min(x, y), .(x, y)))), min(x, nil()) -> x, min(x, .(y, z)) -> if(<=(x, y), min(x, z), min(y, z)), del(x, nil()) -> nil(), del(x, .(y, z)) -> if(=(x, y), z, .(y, del(x, z)))} Qed