YES Problem 1: (VAR v_NonEmpty:S x:S y:S z:S) (RULES ++(x:S,g(y:S,z:S)) -> g(++(x:S,y:S),z:S) ++(x:S,nil) -> x:S f(x:S,g(y:S,z:S)) -> g(f(x:S,y:S),z:S) f(x:S,nil) -> g(nil,x:S) max(g(g(g(x:S,y:S),z:S),u)) -> max'(max(g(g(x:S,y:S),z:S)),u) max(g(g(nil,x:S),y:S)) -> max'(x:S,y:S) mem(g(x:S,y:S),z:S) -> or(=(y:S,z:S),mem(x:S,z:S)) mem(nil,y:S) -> ffalse mem(x:S,max(x:S)) -> not(null(x:S)) null(g(x:S,y:S)) -> ffalse null(nil) -> ttrue ) Problem 1: Dependency Pairs Processor: -> Pairs: ++#(x:S,g(y:S,z:S)) -> ++#(x:S,y:S) F(x:S,g(y:S,z:S)) -> F(x:S,y:S) MAX(g(g(g(x:S,y:S),z:S),u)) -> MAX(g(g(x:S,y:S),z:S)) MEM(g(x:S,y:S),z:S) -> MEM(x:S,z:S) MEM(x:S,max(x:S)) -> NULL(x:S) -> Rules: ++(x:S,g(y:S,z:S)) -> g(++(x:S,y:S),z:S) ++(x:S,nil) -> x:S f(x:S,g(y:S,z:S)) -> g(f(x:S,y:S),z:S) f(x:S,nil) -> g(nil,x:S) max(g(g(g(x:S,y:S),z:S),u)) -> max'(max(g(g(x:S,y:S),z:S)),u) max(g(g(nil,x:S),y:S)) -> max'(x:S,y:S) mem(g(x:S,y:S),z:S) -> or(=(y:S,z:S),mem(x:S,z:S)) mem(nil,y:S) -> ffalse mem(x:S,max(x:S)) -> not(null(x:S)) null(g(x:S,y:S)) -> ffalse null(nil) -> ttrue Problem 1: SCC Processor: -> Pairs: ++#(x:S,g(y:S,z:S)) -> ++#(x:S,y:S) F(x:S,g(y:S,z:S)) -> F(x:S,y:S) MAX(g(g(g(x:S,y:S),z:S),u)) -> MAX(g(g(x:S,y:S),z:S)) MEM(g(x:S,y:S),z:S) -> MEM(x:S,z:S) MEM(x:S,max(x:S)) -> NULL(x:S) -> Rules: ++(x:S,g(y:S,z:S)) -> g(++(x:S,y:S),z:S) ++(x:S,nil) -> x:S f(x:S,g(y:S,z:S)) -> g(f(x:S,y:S),z:S) f(x:S,nil) -> g(nil,x:S) max(g(g(g(x:S,y:S),z:S),u)) -> max'(max(g(g(x:S,y:S),z:S)),u) max(g(g(nil,x:S),y:S)) -> max'(x:S,y:S) mem(g(x:S,y:S),z:S) -> or(=(y:S,z:S),mem(x:S,z:S)) mem(nil,y:S) -> ffalse mem(x:S,max(x:S)) -> not(null(x:S)) null(g(x:S,y:S)) -> ffalse null(nil) -> ttrue ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: MEM(g(x:S,y:S),z:S) -> MEM(x:S,z:S) ->->-> Rules: ++(x:S,g(y:S,z:S)) -> g(++(x:S,y:S),z:S) ++(x:S,nil) -> x:S f(x:S,g(y:S,z:S)) -> g(f(x:S,y:S),z:S) f(x:S,nil) -> g(nil,x:S) max(g(g(g(x:S,y:S),z:S),u)) -> max'(max(g(g(x:S,y:S),z:S)),u) max(g(g(nil,x:S),y:S)) -> max'(x:S,y:S) mem(g(x:S,y:S),z:S) -> or(=(y:S,z:S),mem(x:S,z:S)) mem(nil,y:S) -> ffalse mem(x:S,max(x:S)) -> not(null(x:S)) null(g(x:S,y:S)) -> ffalse null(nil) -> ttrue ->->Cycle: ->->-> Pairs: MAX(g(g(g(x:S,y:S),z:S),u)) -> MAX(g(g(x:S,y:S),z:S)) ->->-> Rules: ++(x:S,g(y:S,z:S)) -> g(++(x:S,y:S),z:S) ++(x:S,nil) -> x:S f(x:S,g(y:S,z:S)) -> g(f(x:S,y:S),z:S) f(x:S,nil) -> g(nil,x:S) max(g(g(g(x:S,y:S),z:S),u)) -> max'(max(g(g(x:S,y:S),z:S)),u) max(g(g(nil,x:S),y:S)) -> max'(x:S,y:S) mem(g(x:S,y:S),z:S) -> or(=(y:S,z:S),mem(x:S,z:S)) mem(nil,y:S) -> ffalse mem(x:S,max(x:S)) -> not(null(x:S)) null(g(x:S,y:S)) -> ffalse null(nil) -> ttrue ->->Cycle: ->->-> Pairs: F(x:S,g(y:S,z:S)) -> F(x:S,y:S) ->->-> Rules: ++(x:S,g(y:S,z:S)) -> g(++(x:S,y:S),z:S) ++(x:S,nil) -> x:S f(x:S,g(y:S,z:S)) -> g(f(x:S,y:S),z:S) f(x:S,nil) -> g(nil,x:S) max(g(g(g(x:S,y:S),z:S),u)) -> max'(max(g(g(x:S,y:S),z:S)),u) max(g(g(nil,x:S),y:S)) -> max'(x:S,y:S) mem(g(x:S,y:S),z:S) -> or(=(y:S,z:S),mem(x:S,z:S)) mem(nil,y:S) -> ffalse mem(x:S,max(x:S)) -> not(null(x:S)) null(g(x:S,y:S)) -> ffalse null(nil) -> ttrue ->->Cycle: ->->-> Pairs: ++#(x:S,g(y:S,z:S)) -> ++#(x:S,y:S) ->->-> Rules: ++(x:S,g(y:S,z:S)) -> g(++(x:S,y:S),z:S) ++(x:S,nil) -> x:S f(x:S,g(y:S,z:S)) -> g(f(x:S,y:S),z:S) f(x:S,nil) -> g(nil,x:S) max(g(g(g(x:S,y:S),z:S),u)) -> max'(max(g(g(x:S,y:S),z:S)),u) max(g(g(nil,x:S),y:S)) -> max'(x:S,y:S) mem(g(x:S,y:S),z:S) -> or(=(y:S,z:S),mem(x:S,z:S)) mem(nil,y:S) -> ffalse mem(x:S,max(x:S)) -> not(null(x:S)) null(g(x:S,y:S)) -> ffalse null(nil) -> ttrue The problem is decomposed in 4 subproblems. Problem 1.1: Subterm Processor: -> Pairs: MEM(g(x:S,y:S),z:S) -> MEM(x:S,z:S) -> Rules: ++(x:S,g(y:S,z:S)) -> g(++(x:S,y:S),z:S) ++(x:S,nil) -> x:S f(x:S,g(y:S,z:S)) -> g(f(x:S,y:S),z:S) f(x:S,nil) -> g(nil,x:S) max(g(g(g(x:S,y:S),z:S),u)) -> max'(max(g(g(x:S,y:S),z:S)),u) max(g(g(nil,x:S),y:S)) -> max'(x:S,y:S) mem(g(x:S,y:S),z:S) -> or(=(y:S,z:S),mem(x:S,z:S)) mem(nil,y:S) -> ffalse mem(x:S,max(x:S)) -> not(null(x:S)) null(g(x:S,y:S)) -> ffalse null(nil) -> ttrue ->Projection: pi(MEM) = 1 Problem 1.1: SCC Processor: -> Pairs: Empty -> Rules: ++(x:S,g(y:S,z:S)) -> g(++(x:S,y:S),z:S) ++(x:S,nil) -> x:S f(x:S,g(y:S,z:S)) -> g(f(x:S,y:S),z:S) f(x:S,nil) -> g(nil,x:S) max(g(g(g(x:S,y:S),z:S),u)) -> max'(max(g(g(x:S,y:S),z:S)),u) max(g(g(nil,x:S),y:S)) -> max'(x:S,y:S) mem(g(x:S,y:S),z:S) -> or(=(y:S,z:S),mem(x:S,z:S)) mem(nil,y:S) -> ffalse mem(x:S,max(x:S)) -> not(null(x:S)) null(g(x:S,y:S)) -> ffalse null(nil) -> ttrue ->Strongly Connected Components: There is no strongly connected component The problem is finite. Problem 1.2: Subterm Processor: -> Pairs: MAX(g(g(g(x:S,y:S),z:S),u)) -> MAX(g(g(x:S,y:S),z:S)) -> Rules: ++(x:S,g(y:S,z:S)) -> g(++(x:S,y:S),z:S) ++(x:S,nil) -> x:S f(x:S,g(y:S,z:S)) -> g(f(x:S,y:S),z:S) f(x:S,nil) -> g(nil,x:S) max(g(g(g(x:S,y:S),z:S),u)) -> max'(max(g(g(x:S,y:S),z:S)),u) max(g(g(nil,x:S),y:S)) -> max'(x:S,y:S) mem(g(x:S,y:S),z:S) -> or(=(y:S,z:S),mem(x:S,z:S)) mem(nil,y:S) -> ffalse mem(x:S,max(x:S)) -> not(null(x:S)) null(g(x:S,y:S)) -> ffalse null(nil) -> ttrue ->Projection: pi(MAX) = 1 Problem 1.2: SCC Processor: -> Pairs: Empty -> Rules: ++(x:S,g(y:S,z:S)) -> g(++(x:S,y:S),z:S) ++(x:S,nil) -> x:S f(x:S,g(y:S,z:S)) -> g(f(x:S,y:S),z:S) f(x:S,nil) -> g(nil,x:S) max(g(g(g(x:S,y:S),z:S),u)) -> max'(max(g(g(x:S,y:S),z:S)),u) max(g(g(nil,x:S),y:S)) -> max'(x:S,y:S) mem(g(x:S,y:S),z:S) -> or(=(y:S,z:S),mem(x:S,z:S)) mem(nil,y:S) -> ffalse mem(x:S,max(x:S)) -> not(null(x:S)) null(g(x:S,y:S)) -> ffalse null(nil) -> ttrue ->Strongly Connected Components: There is no strongly connected component The problem is finite. Problem 1.3: Subterm Processor: -> Pairs: F(x:S,g(y:S,z:S)) -> F(x:S,y:S) -> Rules: ++(x:S,g(y:S,z:S)) -> g(++(x:S,y:S),z:S) ++(x:S,nil) -> x:S f(x:S,g(y:S,z:S)) -> g(f(x:S,y:S),z:S) f(x:S,nil) -> g(nil,x:S) max(g(g(g(x:S,y:S),z:S),u)) -> max'(max(g(g(x:S,y:S),z:S)),u) max(g(g(nil,x:S),y:S)) -> max'(x:S,y:S) mem(g(x:S,y:S),z:S) -> or(=(y:S,z:S),mem(x:S,z:S)) mem(nil,y:S) -> ffalse mem(x:S,max(x:S)) -> not(null(x:S)) null(g(x:S,y:S)) -> ffalse null(nil) -> ttrue ->Projection: pi(F) = 2 Problem 1.3: SCC Processor: -> Pairs: Empty -> Rules: ++(x:S,g(y:S,z:S)) -> g(++(x:S,y:S),z:S) ++(x:S,nil) -> x:S f(x:S,g(y:S,z:S)) -> g(f(x:S,y:S),z:S) f(x:S,nil) -> g(nil,x:S) max(g(g(g(x:S,y:S),z:S),u)) -> max'(max(g(g(x:S,y:S),z:S)),u) max(g(g(nil,x:S),y:S)) -> max'(x:S,y:S) mem(g(x:S,y:S),z:S) -> or(=(y:S,z:S),mem(x:S,z:S)) mem(nil,y:S) -> ffalse mem(x:S,max(x:S)) -> not(null(x:S)) null(g(x:S,y:S)) -> ffalse null(nil) -> ttrue ->Strongly Connected Components: There is no strongly connected component The problem is finite. Problem 1.4: Subterm Processor: -> Pairs: ++#(x:S,g(y:S,z:S)) -> ++#(x:S,y:S) -> Rules: ++(x:S,g(y:S,z:S)) -> g(++(x:S,y:S),z:S) ++(x:S,nil) -> x:S f(x:S,g(y:S,z:S)) -> g(f(x:S,y:S),z:S) f(x:S,nil) -> g(nil,x:S) max(g(g(g(x:S,y:S),z:S),u)) -> max'(max(g(g(x:S,y:S),z:S)),u) max(g(g(nil,x:S),y:S)) -> max'(x:S,y:S) mem(g(x:S,y:S),z:S) -> or(=(y:S,z:S),mem(x:S,z:S)) mem(nil,y:S) -> ffalse mem(x:S,max(x:S)) -> not(null(x:S)) null(g(x:S,y:S)) -> ffalse null(nil) -> ttrue ->Projection: pi(++#) = 2 Problem 1.4: SCC Processor: -> Pairs: Empty -> Rules: ++(x:S,g(y:S,z:S)) -> g(++(x:S,y:S),z:S) ++(x:S,nil) -> x:S f(x:S,g(y:S,z:S)) -> g(f(x:S,y:S),z:S) f(x:S,nil) -> g(nil,x:S) max(g(g(g(x:S,y:S),z:S),u)) -> max'(max(g(g(x:S,y:S),z:S)),u) max(g(g(nil,x:S),y:S)) -> max'(x:S,y:S) mem(g(x:S,y:S),z:S) -> or(=(y:S,z:S),mem(x:S,z:S)) mem(nil,y:S) -> ffalse mem(x:S,max(x:S)) -> not(null(x:S)) null(g(x:S,y:S)) -> ffalse null(nil) -> ttrue ->Strongly Connected Components: There is no strongly connected component The problem is finite.