(0) Obligation:

Q restricted rewrite system:
The TRS R consists of the following rules:

ap(f, x) → x
ap(ap(ap(g, x), y), ap(s, z)) → ap(ap(ap(g, x), y), ap(ap(x, y), 0))

Q is empty.

(1) DependencyPairsProof (EQUIVALENT transformation)

Using Dependency Pairs [AG00,LPAR04] we result in the following initial DP problem.

(2) Obligation:

Q DP problem:
The TRS P consists of the following rules:

AP(ap(ap(g, x), y), ap(s, z)) → AP(ap(ap(g, x), y), ap(ap(x, y), 0))
AP(ap(ap(g, x), y), ap(s, z)) → AP(ap(x, y), 0)
AP(ap(ap(g, x), y), ap(s, z)) → AP(x, y)

The TRS R consists of the following rules:

ap(f, x) → x
ap(ap(ap(g, x), y), ap(s, z)) → ap(ap(ap(g, x), y), ap(ap(x, y), 0))

Q is empty.
We have to consider all minimal (P,Q,R)-chains.

(3) DependencyGraphProof (EQUIVALENT transformation)

The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node.

(4) Obligation:

Q DP problem:
The TRS P consists of the following rules:

AP(ap(ap(g, x), y), ap(s, z)) → AP(x, y)
AP(ap(ap(g, x), y), ap(s, z)) → AP(ap(ap(g, x), y), ap(ap(x, y), 0))

The TRS R consists of the following rules:

ap(f, x) → x
ap(ap(ap(g, x), y), ap(s, z)) → ap(ap(ap(g, x), y), ap(ap(x, y), 0))

Q is empty.
We have to consider all minimal (P,Q,R)-chains.

(5) NonLoopProof (EQUIVALENT transformation)

By Theorem 8 [NONLOOP] we deduce infiniteness of the QDP.
We apply the theorem with m = 1, b = 0,
σ' = [ ], and μ' = [ ] on the rule
AP(ap(ap(g, f), zl1), ap(s, 0))[zl1 / ap(f, zl1)]n[zl1 / s] → AP(ap(ap(g, f), zl1), ap(s, 0))[zl1 / ap(f, zl1)]n[zl1 / s]
This rule is correct for the QDP as the following derivation shows:

intermediate steps: Equivalent (Domain Renaming) - Equivalent (Domain Renaming) - Equivalent (Simplify mu) - Instantiate mu - Instantiate mu - Equivalent (Remove Unused) - Instantiate mu - Equivalent (Domain Renaming) - Instantiation - Equivalent (Domain Renaming)
AP(ap(ap(g, f), x1), ap(s, x0))[x1 / ap(f, x1)]n[x1 / y0] → AP(ap(ap(g, f), x1), ap(y0, 0))[x1 / ap(f, x1)]n[x1 / y0]
    by Narrowing at position: [1,0]
        intermediate steps: Instantiate mu - Instantiate Sigma - Instantiation - Instantiation
        AP(ap(ap(g, x), y), ap(s, z))[ ]n[ ] → AP(ap(ap(g, x), y), ap(ap(x, y), 0))[ ]n[ ]
            by OriginalRule from TRS P

        intermediate steps: Equivalent (Add Unused) - Equivalent (Add Unused) - Equivalent (Domain Renaming) - Equivalent (Domain Renaming) - Instantiation - Equivalent (Domain Renaming)
        ap(f, x)[x / ap(f, x)]n[ ] → x[ ]n[ ]
            by PatternCreation I
                ap(f, x)[ ]n[ ] → x[ ]n[ ]
                    by OriginalRule from TRS R

(6) NO