Term Rewriting System R:
[x]
+(p1, p1) -> p2
+(p1, +(p2, p2)) -> p5
+(p5, p5) -> p10
+(+(x, y), z) -> +(x, +(y, z))
+(p1, +(p1, x)) -> +(p2, x)
+(p1, +(p2, +(p2, x))) -> +(p5, x)
+(p2, p1) -> +(p1, p2)
+(p2, +(p1, x)) -> +(p1, +(p2, x))
+(p2, +(p2, p2)) -> +(p1, p5)
+(p2, +(p2, +(p2, x))) -> +(p1, +(p5, x))
+(p5, p1) -> +(p1, p5)
+(p5, +(p1, x)) -> +(p1, +(p5, x))
+(p5, p2) -> +(p2, p5)
+(p5, +(p2, x)) -> +(p2, +(p5, x))
+(p5, +(p5, x)) -> +(p10, x)
+(p10, p1) -> +(p1, p10)
+(p10, +(p1, x)) -> +(p1, +(p10, x))
+(p10, p2) -> +(p2, p10)
+(p10, +(p2, x)) -> +(p2, +(p10, x))
+(p10, p5) -> +(p5, p10)
+(p10, +(p5, x)) -> +(p5, +(p10, x))

Innermost Termination of R to be shown.



   R
Dependency Pair Analysis



R contains the following Dependency Pairs:

+'(+(x, y), z) -> +'(x, +(y, z))
+'(+(x, y), z) -> +'(y, z)
+'(p1, +(p1, x)) -> +'(p2, x)
+'(p1, +(p2, +(p2, x))) -> +'(p5, x)
+'(p2, p1) -> +'(p1, p2)
+'(p2, +(p1, x)) -> +'(p1, +(p2, x))
+'(p2, +(p1, x)) -> +'(p2, x)
+'(p2, +(p2, p2)) -> +'(p1, p5)
+'(p2, +(p2, +(p2, x))) -> +'(p1, +(p5, x))
+'(p2, +(p2, +(p2, x))) -> +'(p5, x)
+'(p5, p1) -> +'(p1, p5)
+'(p5, +(p1, x)) -> +'(p1, +(p5, x))
+'(p5, +(p1, x)) -> +'(p5, x)
+'(p5, p2) -> +'(p2, p5)
+'(p5, +(p2, x)) -> +'(p2, +(p5, x))
+'(p5, +(p2, x)) -> +'(p5, x)
+'(p5, +(p5, x)) -> +'(p10, x)
+'(p10, p1) -> +'(p1, p10)
+'(p10, +(p1, x)) -> +'(p1, +(p10, x))
+'(p10, +(p1, x)) -> +'(p10, x)
+'(p10, p2) -> +'(p2, p10)
+'(p10, +(p2, x)) -> +'(p2, +(p10, x))
+'(p10, +(p2, x)) -> +'(p10, x)
+'(p10, p5) -> +'(p5, p10)
+'(p10, +(p5, x)) -> +'(p5, +(p10, x))
+'(p10, +(p5, x)) -> +'(p10, x)

Furthermore, R contains three SCCs.


   R
DPs
       →DP Problem 1
Polynomial Ordering
       →DP Problem 2
Nar
       →DP Problem 3
Polo


Dependency Pair:

+'(p10, +(p2, x)) -> +'(p10, x)


Rules:


+(p1, p1) -> p2
+(p1, +(p2, p2)) -> p5
+(p5, p5) -> p10
+(+(x, y), z) -> +(x, +(y, z))
+(p1, +(p1, x)) -> +(p2, x)
+(p1, +(p2, +(p2, x))) -> +(p5, x)
+(p2, p1) -> +(p1, p2)
+(p2, +(p1, x)) -> +(p1, +(p2, x))
+(p2, +(p2, p2)) -> +(p1, p5)
+(p2, +(p2, +(p2, x))) -> +(p1, +(p5, x))
+(p5, p1) -> +(p1, p5)
+(p5, +(p1, x)) -> +(p1, +(p5, x))
+(p5, p2) -> +(p2, p5)
+(p5, +(p2, x)) -> +(p2, +(p5, x))
+(p5, +(p5, x)) -> +(p10, x)
+(p10, p1) -> +(p1, p10)
+(p10, +(p1, x)) -> +(p1, +(p10, x))
+(p10, p2) -> +(p2, p10)
+(p10, +(p2, x)) -> +(p2, +(p10, x))
+(p10, p5) -> +(p5, p10)
+(p10, +(p5, x)) -> +(p5, +(p10, x))


Strategy:

innermost




The following dependency pair can be strictly oriented:

+'(p10, +(p2, x)) -> +'(p10, x)


There are no usable rules for innermost that need to be oriented.

Used ordering: Polynomial ordering with Polynomial interpretation:
  POL(p10)=  0  
  POL(p2)=  0  
  POL(+(x1, x2))=  1 + x2  
  POL(+'(x1, x2))=  x2  

resulting in one new DP problem.



   R
DPs
       →DP Problem 1
Polo
           →DP Problem 4
Dependency Graph
       →DP Problem 2
Nar
       →DP Problem 3
Polo


Dependency Pair:


Rules:


+(p1, p1) -> p2
+(p1, +(p2, p2)) -> p5
+(p5, p5) -> p10
+(+(x, y), z) -> +(x, +(y, z))
+(p1, +(p1, x)) -> +(p2, x)
+(p1, +(p2, +(p2, x))) -> +(p5, x)
+(p2, p1) -> +(p1, p2)
+(p2, +(p1, x)) -> +(p1, +(p2, x))
+(p2, +(p2, p2)) -> +(p1, p5)
+(p2, +(p2, +(p2, x))) -> +(p1, +(p5, x))
+(p5, p1) -> +(p1, p5)
+(p5, +(p1, x)) -> +(p1, +(p5, x))
+(p5, p2) -> +(p2, p5)
+(p5, +(p2, x)) -> +(p2, +(p5, x))
+(p5, +(p5, x)) -> +(p10, x)
+(p10, p1) -> +(p1, p10)
+(p10, +(p1, x)) -> +(p1, +(p10, x))
+(p10, p2) -> +(p2, p10)
+(p10, +(p2, x)) -> +(p2, +(p10, x))
+(p10, p5) -> +(p5, p10)
+(p10, +(p5, x)) -> +(p5, +(p10, x))


Strategy:

innermost




Using the Dependency Graph resulted in no new DP problems.


   R
DPs
       →DP Problem 1
Polo
       →DP Problem 2
Narrowing Transformation
       →DP Problem 3
Polo


Dependency Pair:

+'(+(x, y), z) -> +'(x, +(y, z))


Rules:


+(p1, p1) -> p2
+(p1, +(p2, p2)) -> p5
+(p5, p5) -> p10
+(+(x, y), z) -> +(x, +(y, z))
+(p1, +(p1, x)) -> +(p2, x)
+(p1, +(p2, +(p2, x))) -> +(p5, x)
+(p2, p1) -> +(p1, p2)
+(p2, +(p1, x)) -> +(p1, +(p2, x))
+(p2, +(p2, p2)) -> +(p1, p5)
+(p2, +(p2, +(p2, x))) -> +(p1, +(p5, x))
+(p5, p1) -> +(p1, p5)
+(p5, +(p1, x)) -> +(p1, +(p5, x))
+(p5, p2) -> +(p2, p5)
+(p5, +(p2, x)) -> +(p2, +(p5, x))
+(p5, +(p5, x)) -> +(p10, x)
+(p10, p1) -> +(p1, p10)
+(p10, +(p1, x)) -> +(p1, +(p10, x))
+(p10, p2) -> +(p2, p10)
+(p10, +(p2, x)) -> +(p2, +(p10, x))
+(p10, p5) -> +(p5, p10)
+(p10, +(p5, x)) -> +(p5, +(p10, x))


Strategy:

innermost




On this DP problem, a Narrowing SCC transformation can be performed.
As a result of transforming the rule

+'(+(x, y), z) -> +'(x, +(y, z))
no new Dependency Pairs are created.
The transformation is resulting in no new DP problems.



   R
DPs
       →DP Problem 1
Polo
       →DP Problem 2
Nar
       →DP Problem 3
Polynomial Ordering


Dependency Pair:

+'(p5, +(p2, x)) -> +'(p5, x)


Rules:


+(p1, p1) -> p2
+(p1, +(p2, p2)) -> p5
+(p5, p5) -> p10
+(+(x, y), z) -> +(x, +(y, z))
+(p1, +(p1, x)) -> +(p2, x)
+(p1, +(p2, +(p2, x))) -> +(p5, x)
+(p2, p1) -> +(p1, p2)
+(p2, +(p1, x)) -> +(p1, +(p2, x))
+(p2, +(p2, p2)) -> +(p1, p5)
+(p2, +(p2, +(p2, x))) -> +(p1, +(p5, x))
+(p5, p1) -> +(p1, p5)
+(p5, +(p1, x)) -> +(p1, +(p5, x))
+(p5, p2) -> +(p2, p5)
+(p5, +(p2, x)) -> +(p2, +(p5, x))
+(p5, +(p5, x)) -> +(p10, x)
+(p10, p1) -> +(p1, p10)
+(p10, +(p1, x)) -> +(p1, +(p10, x))
+(p10, p2) -> +(p2, p10)
+(p10, +(p2, x)) -> +(p2, +(p10, x))
+(p10, p5) -> +(p5, p10)
+(p10, +(p5, x)) -> +(p5, +(p10, x))


Strategy:

innermost




The following dependency pair can be strictly oriented:

+'(p5, +(p2, x)) -> +'(p5, x)


There are no usable rules for innermost that need to be oriented.

Used ordering: Polynomial ordering with Polynomial interpretation:
  POL(p5)=  0  
  POL(p2)=  0  
  POL(+(x1, x2))=  1 + x2  
  POL(+'(x1, x2))=  x2  

resulting in one new DP problem.



   R
DPs
       →DP Problem 1
Polo
       →DP Problem 2
Nar
       →DP Problem 3
Polo
           →DP Problem 5
Dependency Graph


Dependency Pair:


Rules:


+(p1, p1) -> p2
+(p1, +(p2, p2)) -> p5
+(p5, p5) -> p10
+(+(x, y), z) -> +(x, +(y, z))
+(p1, +(p1, x)) -> +(p2, x)
+(p1, +(p2, +(p2, x))) -> +(p5, x)
+(p2, p1) -> +(p1, p2)
+(p2, +(p1, x)) -> +(p1, +(p2, x))
+(p2, +(p2, p2)) -> +(p1, p5)
+(p2, +(p2, +(p2, x))) -> +(p1, +(p5, x))
+(p5, p1) -> +(p1, p5)
+(p5, +(p1, x)) -> +(p1, +(p5, x))
+(p5, p2) -> +(p2, p5)
+(p5, +(p2, x)) -> +(p2, +(p5, x))
+(p5, +(p5, x)) -> +(p10, x)
+(p10, p1) -> +(p1, p10)
+(p10, +(p1, x)) -> +(p1, +(p10, x))
+(p10, p2) -> +(p2, p10)
+(p10, +(p2, x)) -> +(p2, +(p10, x))
+(p10, p5) -> +(p5, p10)
+(p10, +(p5, x)) -> +(p5, +(p10, x))


Strategy:

innermost




Using the Dependency Graph resulted in no new DP problems.

Innermost Termination of R successfully shown.
Duration:
0:00 minutes