YES
The TRS could be proven terminating. The proof took 31 ms.
Problem 1 was processed with processor DependencyGraph (19ms). | Problem 2 was processed with processor SubtermCriterion (1ms).
| mark#(c(X)) | → | a__c#(X) | mark#(f(X)) | → | a__f#(mark(X)) | |
| a__h#(X) | → | a__c#(d(X)) | mark#(f(X)) | → | mark#(X) | |
| a__f#(f(X)) | → | a__c#(f(g(f(X)))) | mark#(h(X)) | → | mark#(X) | |
| mark#(h(X)) | → | a__h#(mark(X)) |
| a__f(f(X)) | → | a__c(f(g(f(X)))) | a__c(X) | → | d(X) | |
| a__h(X) | → | a__c(d(X)) | mark(f(X)) | → | a__f(mark(X)) | |
| mark(c(X)) | → | a__c(X) | mark(h(X)) | → | a__h(mark(X)) | |
| mark(g(X)) | → | g(X) | mark(d(X)) | → | d(X) | |
| a__f(X) | → | f(X) | a__c(X) | → | c(X) | |
| a__h(X) | → | h(X) |
Termination of terms over the following signature is verified: f, g, d, c, a__c, mark, a__h, a__f, h
| mark#(f(X)) → mark#(X) | mark#(h(X)) → mark#(X) |
| mark#(f(X)) | → | mark#(X) | mark#(h(X)) | → | mark#(X) |
| a__f(f(X)) | → | a__c(f(g(f(X)))) | a__c(X) | → | d(X) | |
| a__h(X) | → | a__c(d(X)) | mark(f(X)) | → | a__f(mark(X)) | |
| mark(c(X)) | → | a__c(X) | mark(h(X)) | → | a__h(mark(X)) | |
| mark(g(X)) | → | g(X) | mark(d(X)) | → | d(X) | |
| a__f(X) | → | f(X) | a__c(X) | → | c(X) | |
| a__h(X) | → | h(X) |
Termination of terms over the following signature is verified: f, g, d, c, a__c, mark, a__h, a__f, h
The following projection was used:
Thus, the following dependency pairs are removed:
| mark#(f(X)) | → | mark#(X) | mark#(h(X)) | → | mark#(X) |