Term Rewriting System R:
[x, y]
g(f(x, y)) -> f(f(g(g(x)), g(g(y))), f(g(g(x)), g(g(y))))

Innermost Termination of R to be shown.

`   R`
`     ↳Dependency Pair Analysis`

R contains the following Dependency Pairs:

G(f(x, y)) -> G(g(x))
G(f(x, y)) -> G(x)
G(f(x, y)) -> G(g(y))
G(f(x, y)) -> G(y)

Furthermore, R contains one SCC.

`   R`
`     ↳DPs`
`       →DP Problem 1`
`         ↳Narrowing Transformation`

Dependency Pairs:

G(f(x, y)) -> G(y)
G(f(x, y)) -> G(g(y))
G(f(x, y)) -> G(x)
G(f(x, y)) -> G(g(x))

Rule:

g(f(x, y)) -> f(f(g(g(x)), g(g(y))), f(g(g(x)), g(g(y))))

Strategy:

innermost

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

G(f(x, y)) -> G(g(x))
one new Dependency Pair is created:

G(f(f(x'', y''), y)) -> G(f(f(g(g(x'')), g(g(y''))), f(g(g(x'')), g(g(y'')))))

The transformation is resulting in one new DP problem:

`   R`
`     ↳DPs`
`       →DP Problem 1`
`         ↳Nar`
`           →DP Problem 2`
`             ↳Narrowing Transformation`

Dependency Pairs:

G(f(f(x'', y''), y)) -> G(f(f(g(g(x'')), g(g(y''))), f(g(g(x'')), g(g(y'')))))
G(f(x, y)) -> G(g(y))
G(f(x, y)) -> G(x)
G(f(x, y)) -> G(y)

Rule:

g(f(x, y)) -> f(f(g(g(x)), g(g(y))), f(g(g(x)), g(g(y))))

Strategy:

innermost

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

G(f(x, y)) -> G(g(y))
one new Dependency Pair is created:

G(f(x, f(x'', y''))) -> G(f(f(g(g(x'')), g(g(y''))), f(g(g(x'')), g(g(y'')))))

The transformation is resulting in one new DP problem:

`   R`
`     ↳DPs`
`       →DP Problem 1`
`         ↳Nar`
`           →DP Problem 2`
`             ↳Nar`
`             ...`
`               →DP Problem 3`
`                 ↳Forward Instantiation Transformation`

Dependency Pairs:

G(f(x, f(x'', y''))) -> G(f(f(g(g(x'')), g(g(y''))), f(g(g(x'')), g(g(y'')))))
G(f(x, y)) -> G(y)
G(f(x, y)) -> G(x)
G(f(f(x'', y''), y)) -> G(f(f(g(g(x'')), g(g(y''))), f(g(g(x'')), g(g(y'')))))

Rule:

g(f(x, y)) -> f(f(g(g(x)), g(g(y))), f(g(g(x)), g(g(y))))

Strategy:

innermost

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

G(f(x, y)) -> G(x)
three new Dependency Pairs are created:

G(f(f(x'', y''), y)) -> G(f(x'', y''))
G(f(f(f(x'''', y''''), y''), y)) -> G(f(f(x'''', y''''), y''))
G(f(f(x'', f(x'''', y'''')), y)) -> G(f(x'', f(x'''', y'''')))

The transformation is resulting in one new DP problem:

`   R`
`     ↳DPs`
`       →DP Problem 1`
`         ↳Nar`
`           →DP Problem 2`
`             ↳Nar`
`             ...`
`               →DP Problem 4`
`                 ↳Forward Instantiation Transformation`

Dependency Pairs:

G(f(f(x'', f(x'''', y'''')), y)) -> G(f(x'', f(x'''', y'''')))
G(f(f(f(x'''', y''''), y''), y)) -> G(f(f(x'''', y''''), y''))
G(f(f(x'', y''), y)) -> G(f(x'', y''))
G(f(f(x'', y''), y)) -> G(f(f(g(g(x'')), g(g(y''))), f(g(g(x'')), g(g(y'')))))
G(f(x, y)) -> G(y)
G(f(x, f(x'', y''))) -> G(f(f(g(g(x'')), g(g(y''))), f(g(g(x'')), g(g(y'')))))

Rule:

g(f(x, y)) -> f(f(g(g(x)), g(g(y))), f(g(g(x)), g(g(y))))

Strategy:

innermost

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

G(f(x, y)) -> G(y)
five new Dependency Pairs are created:

G(f(x, f(x'', y''))) -> G(f(x'', y''))
G(f(x, f(f(x'''', y''''), y''))) -> G(f(f(x'''', y''''), y''))
G(f(x, f(x'', f(x'''', y'''')))) -> G(f(x'', f(x'''', y'''')))
G(f(x, f(f(f(x'''''', y''''''), y''''), y''))) -> G(f(f(f(x'''''', y''''''), y''''), y''))
G(f(x, f(f(x'''', f(x'''''', y'''''')), y''))) -> G(f(f(x'''', f(x'''''', y'''''')), y''))

The transformation is resulting in one new DP problem:

`   R`
`     ↳DPs`
`       →DP Problem 1`
`         ↳Nar`
`           →DP Problem 2`
`             ↳Nar`
`             ...`
`               →DP Problem 5`
`                 ↳Forward Instantiation Transformation`

Dependency Pairs:

G(f(x, f(f(x'''', f(x'''''', y'''''')), y''))) -> G(f(f(x'''', f(x'''''', y'''''')), y''))
G(f(x, f(f(f(x'''''', y''''''), y''''), y''))) -> G(f(f(f(x'''''', y''''''), y''''), y''))
G(f(x, f(x'', f(x'''', y'''')))) -> G(f(x'', f(x'''', y'''')))
G(f(x, f(f(x'''', y''''), y''))) -> G(f(f(x'''', y''''), y''))
G(f(x, f(x'', y''))) -> G(f(x'', y''))
G(f(f(f(x'''', y''''), y''), y)) -> G(f(f(x'''', y''''), y''))
G(f(f(x'', y''), y)) -> G(f(x'', y''))
G(f(x, f(x'', y''))) -> G(f(f(g(g(x'')), g(g(y''))), f(g(g(x'')), g(g(y'')))))
G(f(f(x'', y''), y)) -> G(f(f(g(g(x'')), g(g(y''))), f(g(g(x'')), g(g(y'')))))
G(f(f(x'', f(x'''', y'''')), y)) -> G(f(x'', f(x'''', y'''')))

Rule:

g(f(x, y)) -> f(f(g(g(x)), g(g(y))), f(g(g(x)), g(g(y))))

Strategy:

innermost

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

G(f(f(x'', y''), y)) -> G(f(x'', y''))
eight new Dependency Pairs are created:

G(f(f(f(x'''', y''''), y''0), y)) -> G(f(f(x'''', y''''), y''0))
G(f(f(x'''', f(x''''', y'''')), y)) -> G(f(x'''', f(x''''', y'''')))
G(f(f(f(f(x'''''', y''''''), y''''), y''0), y)) -> G(f(f(f(x'''''', y''''''), y''''), y''0))
G(f(f(f(x'''', f(x'''''', y'''''')), y'''), y)) -> G(f(f(x'''', f(x'''''', y'''''')), y'''))
G(f(f(x''', f(f(x'''''', y''''''), y'''')), y)) -> G(f(x''', f(f(x'''''', y''''''), y'''')))
G(f(f(x'''', f(x'''0, f(x'''''', y''''''))), y)) -> G(f(x'''', f(x'''0, f(x'''''', y''''''))))
G(f(f(x''', f(f(f(x'''''''', y''''''''), y''''''), y'''')), y)) -> G(f(x''', f(f(f(x'''''''', y''''''''), y''''''), y'''')))
G(f(f(x''', f(f(x'''''', f(x'''''''', y'''''''')), y'''')), y)) -> G(f(x''', f(f(x'''''', f(x'''''''', y'''''''')), y'''')))

The transformation is resulting in one new DP problem:

`   R`
`     ↳DPs`
`       →DP Problem 1`
`         ↳Nar`
`           →DP Problem 2`
`             ↳Nar`
`             ...`
`               →DP Problem 6`
`                 ↳Forward Instantiation Transformation`

Dependency Pairs:

G(f(f(x''', f(f(x'''''', f(x'''''''', y'''''''')), y'''')), y)) -> G(f(x''', f(f(x'''''', f(x'''''''', y'''''''')), y'''')))
G(f(f(x''', f(f(f(x'''''''', y''''''''), y''''''), y'''')), y)) -> G(f(x''', f(f(f(x'''''''', y''''''''), y''''''), y'''')))
G(f(f(x'''', f(x'''0, f(x'''''', y''''''))), y)) -> G(f(x'''', f(x'''0, f(x'''''', y''''''))))
G(f(f(x''', f(f(x'''''', y''''''), y'''')), y)) -> G(f(x''', f(f(x'''''', y''''''), y'''')))
G(f(f(f(x'''', f(x'''''', y'''''')), y'''), y)) -> G(f(f(x'''', f(x'''''', y'''''')), y'''))
G(f(f(f(f(x'''''', y''''''), y''''), y''0), y)) -> G(f(f(f(x'''''', y''''''), y''''), y''0))
G(f(f(x'''', f(x''''', y'''')), y)) -> G(f(x'''', f(x''''', y'''')))
G(f(f(f(x'''', y''''), y''0), y)) -> G(f(f(x'''', y''''), y''0))
G(f(x, f(f(f(x'''''', y''''''), y''''), y''))) -> G(f(f(f(x'''''', y''''''), y''''), y''))
G(f(x, f(x'', f(x'''', y'''')))) -> G(f(x'', f(x'''', y'''')))
G(f(x, f(f(x'''', y''''), y''))) -> G(f(f(x'''', y''''), y''))
G(f(x, f(x'', y''))) -> G(f(x'', y''))
G(f(f(x'', f(x'''', y'''')), y)) -> G(f(x'', f(x'''', y'''')))
G(f(f(f(x'''', y''''), y''), y)) -> G(f(f(x'''', y''''), y''))
G(f(x, f(x'', y''))) -> G(f(f(g(g(x'')), g(g(y''))), f(g(g(x'')), g(g(y'')))))
G(f(f(x'', y''), y)) -> G(f(f(g(g(x'')), g(g(y''))), f(g(g(x'')), g(g(y'')))))
G(f(x, f(f(x'''', f(x'''''', y'''''')), y''))) -> G(f(f(x'''', f(x'''''', y'''''')), y''))

Rule:

g(f(x, y)) -> f(f(g(g(x)), g(g(y))), f(g(g(x)), g(g(y))))

Strategy:

innermost

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

G(f(x, f(x'', y''))) -> G(f(x'', y''))
16 new Dependency Pairs are created:

G(f(x, f(f(x'''', y''''), y''0))) -> G(f(f(x'''', y''''), y''0))
G(f(x, f(x'''', f(x''''', y'''')))) -> G(f(x'''', f(x''''', y'''')))
G(f(x, f(f(f(x'''''', y''''''), y''''), y''0))) -> G(f(f(f(x'''''', y''''''), y''''), y''0))
G(f(x, f(f(x'''', f(x'''''', y'''''')), y'''))) -> G(f(f(x'''', f(x'''''', y'''''')), y'''))
G(f(x, f(x''', f(f(x'''''', y''''''), y'''')))) -> G(f(x''', f(f(x'''''', y''''''), y'''')))
G(f(x, f(x'''', f(x'''0, f(x'''''', y''''''))))) -> G(f(x'''', f(x'''0, f(x'''''', y''''''))))
G(f(x, f(x''', f(f(f(x'''''''', y''''''''), y''''''), y'''')))) -> G(f(x''', f(f(f(x'''''''', y''''''''), y''''''), y'''')))
G(f(x, f(x''', f(f(x'''''', f(x'''''''', y'''''''')), y'''')))) -> G(f(x''', f(f(x'''''', f(x'''''''', y'''''''')), y'''')))
G(f(x, f(f(f(x'''''', y''''''), y''0''), y'''))) -> G(f(f(f(x'''''', y''''''), y''0''), y'''))
G(f(x, f(f(x'''''''', f(x''''''''', y'''''')), y'''))) -> G(f(f(x'''''''', f(x''''''''', y'''''')), y'''))
G(f(x, f(f(f(f(x'''''''', y''''''''), y''''''), y''0''), y'''))) -> G(f(f(f(f(x'''''''', y''''''''), y''''''), y''0''), y'''))
G(f(x, f(f(f(x'''''', f(x'''''''', y'''''''')), y'''''), y'''))) -> G(f(f(f(x'''''', f(x'''''''', y'''''''')), y'''''), y'''))
G(f(x, f(f(x''''', f(f(x'''''''', y''''''''), y'''''')), y'''))) -> G(f(f(x''''', f(f(x'''''''', y''''''''), y'''''')), y'''))
G(f(x, f(f(x'''''', f(x'''0'', f(x'''''''', y''''''''))), y'''))) -> G(f(f(x'''''', f(x'''0'', f(x'''''''', y''''''''))), y'''))
G(f(x, f(f(x''''', f(f(f(x'''''''''', y''''''''''), y''''''''), y'''''')), y'''))) -> G(f(f(x''''', f(f(f(x'''''''''', y''''''''''), y''''''''), y'''''')), y'''))
G(f(x, f(f(x''''', f(f(x'''''''', f(x'''''''''', y'''''''''')), y'''''')), y'''))) -> G(f(f(x''''', f(f(x'''''''', f(x'''''''''', y'''''''''')), y'''''')), y'''))

The transformation is resulting in one new DP problem:

`   R`
`     ↳DPs`
`       →DP Problem 1`
`         ↳Nar`
`           →DP Problem 2`
`             ↳Nar`
`             ...`
`               →DP Problem 7`
`                 ↳Remaining Obligation(s)`

The following remains to be proven:
Dependency Pairs:

G(f(x, f(f(x''''', f(f(x'''''''', f(x'''''''''', y'''''''''')), y'''''')), y'''))) -> G(f(f(x''''', f(f(x'''''''', f(x'''''''''', y'''''''''')), y'''''')), y'''))
G(f(x, f(f(x''''', f(f(f(x'''''''''', y''''''''''), y''''''''), y'''''')), y'''))) -> G(f(f(x''''', f(f(f(x'''''''''', y''''''''''), y''''''''), y'''''')), y'''))
G(f(x, f(f(x'''''', f(x'''0'', f(x'''''''', y''''''''))), y'''))) -> G(f(f(x'''''', f(x'''0'', f(x'''''''', y''''''''))), y'''))
G(f(x, f(f(x''''', f(f(x'''''''', y''''''''), y'''''')), y'''))) -> G(f(f(x''''', f(f(x'''''''', y''''''''), y'''''')), y'''))
G(f(x, f(f(f(x'''''', f(x'''''''', y'''''''')), y'''''), y'''))) -> G(f(f(f(x'''''', f(x'''''''', y'''''''')), y'''''), y'''))
G(f(x, f(f(f(f(x'''''''', y''''''''), y''''''), y''0''), y'''))) -> G(f(f(f(f(x'''''''', y''''''''), y''''''), y''0''), y'''))
G(f(x, f(f(x'''''''', f(x''''''''', y'''''')), y'''))) -> G(f(f(x'''''''', f(x''''''''', y'''''')), y'''))
G(f(x, f(f(f(x'''''', y''''''), y''0''), y'''))) -> G(f(f(f(x'''''', y''''''), y''0''), y'''))
G(f(x, f(x''', f(f(x'''''', f(x'''''''', y'''''''')), y'''')))) -> G(f(x''', f(f(x'''''', f(x'''''''', y'''''''')), y'''')))
G(f(x, f(x''', f(f(f(x'''''''', y''''''''), y''''''), y'''')))) -> G(f(x''', f(f(f(x'''''''', y''''''''), y''''''), y'''')))
G(f(x, f(x'''', f(x'''0, f(x'''''', y''''''))))) -> G(f(x'''', f(x'''0, f(x'''''', y''''''))))
G(f(x, f(x''', f(f(x'''''', y''''''), y'''')))) -> G(f(x''', f(f(x'''''', y''''''), y'''')))
G(f(x, f(f(x'''', f(x'''''', y'''''')), y'''))) -> G(f(f(x'''', f(x'''''', y'''''')), y'''))
G(f(x, f(f(f(x'''''', y''''''), y''''), y''0))) -> G(f(f(f(x'''''', y''''''), y''''), y''0))
G(f(x, f(x'''', f(x''''', y'''')))) -> G(f(x'''', f(x''''', y'''')))
G(f(x, f(f(x'''', y''''), y''0))) -> G(f(f(x'''', y''''), y''0))
G(f(f(x''', f(f(f(x'''''''', y''''''''), y''''''), y'''')), y)) -> G(f(x''', f(f(f(x'''''''', y''''''''), y''''''), y'''')))
G(f(f(x'''', f(x'''0, f(x'''''', y''''''))), y)) -> G(f(x'''', f(x'''0, f(x'''''', y''''''))))
G(f(f(x''', f(f(x'''''', y''''''), y'''')), y)) -> G(f(x''', f(f(x'''''', y''''''), y'''')))
G(f(f(f(x'''', f(x'''''', y'''''')), y'''), y)) -> G(f(f(x'''', f(x'''''', y'''''')), y'''))
G(f(f(f(f(x'''''', y''''''), y''''), y''0), y)) -> G(f(f(f(x'''''', y''''''), y''''), y''0))
G(f(f(x'''', f(x''''', y'''')), y)) -> G(f(x'''', f(x''''', y'''')))
G(f(f(f(x'''', y''''), y''0), y)) -> G(f(f(x'''', y''''), y''0))
G(f(x, f(f(x'''', f(x'''''', y'''''')), y''))) -> G(f(f(x'''', f(x'''''', y'''''')), y''))
G(f(x, f(f(f(x'''''', y''''''), y''''), y''))) -> G(f(f(f(x'''''', y''''''), y''''), y''))
G(f(x, f(x'', f(x'''', y'''')))) -> G(f(x'', f(x'''', y'''')))
G(f(x, f(f(x'''', y''''), y''))) -> G(f(f(x'''', y''''), y''))
G(f(f(x'', f(x'''', y'''')), y)) -> G(f(x'', f(x'''', y'''')))
G(f(f(f(x'''', y''''), y''), y)) -> G(f(f(x'''', y''''), y''))
G(f(x, f(x'', y''))) -> G(f(f(g(g(x'')), g(g(y''))), f(g(g(x'')), g(g(y'')))))
G(f(f(x'', y''), y)) -> G(f(f(g(g(x'')), g(g(y''))), f(g(g(x'')), g(g(y'')))))
G(f(f(x''', f(f(x'''''', f(x'''''''', y'''''''')), y'''')), y)) -> G(f(x''', f(f(x'''''', f(x'''''''', y'''''''')), y'''')))

Rule:

g(f(x, y)) -> f(f(g(g(x)), g(g(y))), f(g(g(x)), g(g(y))))

Strategy:

innermost

Innermost Termination of R could not be shown.
Duration:
0:02 minutes