R
↳Dependency Pair Analysis
APP(app(le, app(s, x)), app(s, y)) -> APP(app(le, x), y)
APP(app(le, app(s, x)), app(s, y)) -> APP(le, x)
APP(app(minus, x), app(s, y)) -> APP(pred, app(app(minus, x), y))
APP(app(minus, x), app(s, y)) -> APP(app(minus, x), y)
APP(app(gcd, app(s, x)), app(s, y)) -> APP(app(app(ifgcd, app(app(le, y), x)), app(s, x)), app(s, y))
APP(app(gcd, app(s, x)), app(s, y)) -> APP(app(ifgcd, app(app(le, y), x)), app(s, x))
APP(app(gcd, app(s, x)), app(s, y)) -> APP(ifgcd, app(app(le, y), x))
APP(app(gcd, app(s, x)), app(s, y)) -> APP(app(le, y), x)
APP(app(gcd, app(s, x)), app(s, y)) -> APP(le, y)
APP(app(app(ifgcd, true), app(s, x)), app(s, y)) -> APP(app(gcd, app(app(minus, x), y)), app(s, y))
APP(app(app(ifgcd, true), app(s, x)), app(s, y)) -> APP(gcd, app(app(minus, x), y))
APP(app(app(ifgcd, true), app(s, x)), app(s, y)) -> APP(app(minus, x), y)
APP(app(app(ifgcd, true), app(s, x)), app(s, y)) -> APP(minus, x)
APP(app(app(ifgcd, false), app(s, x)), app(s, y)) -> APP(app(gcd, app(app(minus, y), x)), app(s, x))
APP(app(app(ifgcd, false), app(s, x)), app(s, y)) -> APP(gcd, app(app(minus, y), x))
APP(app(app(ifgcd, false), app(s, x)), app(s, y)) -> APP(app(minus, y), x)
APP(app(app(ifgcd, false), app(s, x)), app(s, y)) -> APP(minus, y)
R
↳DPs
→DP Problem 1
↳Polynomial Ordering
→DP Problem 2
↳Nar
APP(app(minus, x), app(s, y)) -> APP(app(minus, x), y)
app(app(le, 0), y) -> true
app(app(le, app(s, x)), 0) -> false
app(app(le, app(s, x)), app(s, y)) -> app(app(le, x), y)
app(pred, app(s, x)) -> x
app(app(minus, x), 0) -> x
app(app(minus, x), app(s, y)) -> app(pred, app(app(minus, x), y))
app(app(gcd, 0), y) -> y
app(app(gcd, app(s, x)), 0) -> app(s, x)
app(app(gcd, app(s, x)), app(s, y)) -> app(app(app(ifgcd, app(app(le, y), x)), app(s, x)), app(s, y))
app(app(app(ifgcd, true), app(s, x)), app(s, y)) -> app(app(gcd, app(app(minus, x), y)), app(s, y))
app(app(app(ifgcd, false), app(s, x)), app(s, y)) -> app(app(gcd, app(app(minus, y), x)), app(s, x))
innermost
APP(app(minus, x), app(s, y)) -> APP(app(minus, x), y)
POL(if_gcd) = 0 POL(0) = 0 POL(false) = 0 POL(pred) = 0 POL(minus) = 0 POL(true) = 0 POL(s) = 0 POL(le) = 0 POL(app(x1, x2)) = 1 + x2 POL(APP(x1, x2)) = x2 POL(gcd) = 0
R
↳DPs
→DP Problem 1
↳Polo
→DP Problem 3
↳Dependency Graph
→DP Problem 2
↳Nar
app(app(le, 0), y) -> true
app(app(le, app(s, x)), 0) -> false
app(app(le, app(s, x)), app(s, y)) -> app(app(le, x), y)
app(pred, app(s, x)) -> x
app(app(minus, x), 0) -> x
app(app(minus, x), app(s, y)) -> app(pred, app(app(minus, x), y))
app(app(gcd, 0), y) -> y
app(app(gcd, app(s, x)), 0) -> app(s, x)
app(app(gcd, app(s, x)), app(s, y)) -> app(app(app(ifgcd, app(app(le, y), x)), app(s, x)), app(s, y))
app(app(app(ifgcd, true), app(s, x)), app(s, y)) -> app(app(gcd, app(app(minus, x), y)), app(s, y))
app(app(app(ifgcd, false), app(s, x)), app(s, y)) -> app(app(gcd, app(app(minus, y), x)), app(s, x))
innermost
R
↳DPs
→DP Problem 1
↳Polo
→DP Problem 2
↳Narrowing Transformation
APP(app(app(ifgcd, false), app(s, x)), app(s, y)) -> APP(app(minus, y), x)
APP(app(app(ifgcd, false), app(s, x)), app(s, y)) -> APP(app(gcd, app(app(minus, y), x)), app(s, x))
APP(app(app(ifgcd, true), app(s, x)), app(s, y)) -> APP(app(minus, x), y)
APP(app(app(ifgcd, true), app(s, x)), app(s, y)) -> APP(app(gcd, app(app(minus, x), y)), app(s, y))
APP(app(gcd, app(s, x)), app(s, y)) -> APP(app(le, y), x)
APP(app(gcd, app(s, x)), app(s, y)) -> APP(app(ifgcd, app(app(le, y), x)), app(s, x))
APP(app(gcd, app(s, x)), app(s, y)) -> APP(app(app(ifgcd, app(app(le, y), x)), app(s, x)), app(s, y))
APP(app(le, app(s, x)), app(s, y)) -> APP(app(le, x), y)
app(app(le, 0), y) -> true
app(app(le, app(s, x)), 0) -> false
app(app(le, app(s, x)), app(s, y)) -> app(app(le, x), y)
app(pred, app(s, x)) -> x
app(app(minus, x), 0) -> x
app(app(minus, x), app(s, y)) -> app(pred, app(app(minus, x), y))
app(app(gcd, 0), y) -> y
app(app(gcd, app(s, x)), 0) -> app(s, x)
app(app(gcd, app(s, x)), app(s, y)) -> app(app(app(ifgcd, app(app(le, y), x)), app(s, x)), app(s, y))
app(app(app(ifgcd, true), app(s, x)), app(s, y)) -> app(app(gcd, app(app(minus, x), y)), app(s, y))
app(app(app(ifgcd, false), app(s, x)), app(s, y)) -> app(app(gcd, app(app(minus, y), x)), app(s, x))
innermost
no new Dependency Pairs are created.
APP(app(app(ifgcd, true), app(s, x)), app(s, y)) -> APP(app(minus, x), y)
R
↳DPs
→DP Problem 1
↳Polo
→DP Problem 2
↳Nar
→DP Problem 4
↳Narrowing Transformation
APP(app(app(ifgcd, false), app(s, x)), app(s, y)) -> APP(app(gcd, app(app(minus, y), x)), app(s, x))
APP(app(app(ifgcd, true), app(s, x)), app(s, y)) -> APP(app(gcd, app(app(minus, x), y)), app(s, y))
APP(app(gcd, app(s, x)), app(s, y)) -> APP(app(le, y), x)
APP(app(gcd, app(s, x)), app(s, y)) -> APP(app(ifgcd, app(app(le, y), x)), app(s, x))
APP(app(gcd, app(s, x)), app(s, y)) -> APP(app(app(ifgcd, app(app(le, y), x)), app(s, x)), app(s, y))
APP(app(le, app(s, x)), app(s, y)) -> APP(app(le, x), y)
APP(app(app(ifgcd, false), app(s, x)), app(s, y)) -> APP(app(minus, y), x)
app(app(le, 0), y) -> true
app(app(le, app(s, x)), 0) -> false
app(app(le, app(s, x)), app(s, y)) -> app(app(le, x), y)
app(pred, app(s, x)) -> x
app(app(minus, x), 0) -> x
app(app(minus, x), app(s, y)) -> app(pred, app(app(minus, x), y))
app(app(gcd, 0), y) -> y
app(app(gcd, app(s, x)), 0) -> app(s, x)
app(app(gcd, app(s, x)), app(s, y)) -> app(app(app(ifgcd, app(app(le, y), x)), app(s, x)), app(s, y))
app(app(app(ifgcd, true), app(s, x)), app(s, y)) -> app(app(gcd, app(app(minus, x), y)), app(s, y))
app(app(app(ifgcd, false), app(s, x)), app(s, y)) -> app(app(gcd, app(app(minus, y), x)), app(s, x))
innermost
no new Dependency Pairs are created.
APP(app(app(ifgcd, false), app(s, x)), app(s, y)) -> APP(app(minus, y), x)
R
↳DPs
→DP Problem 1
↳Polo
→DP Problem 2
↳Nar
→DP Problem 4
↳Nar
...
→DP Problem 5
↳Narrowing Transformation
APP(app(app(ifgcd, true), app(s, x)), app(s, y)) -> APP(app(gcd, app(app(minus, x), y)), app(s, y))
APP(app(gcd, app(s, x)), app(s, y)) -> APP(app(le, y), x)
APP(app(gcd, app(s, x)), app(s, y)) -> APP(app(ifgcd, app(app(le, y), x)), app(s, x))
APP(app(gcd, app(s, x)), app(s, y)) -> APP(app(app(ifgcd, app(app(le, y), x)), app(s, x)), app(s, y))
APP(app(le, app(s, x)), app(s, y)) -> APP(app(le, x), y)
APP(app(app(ifgcd, false), app(s, x)), app(s, y)) -> APP(app(gcd, app(app(minus, y), x)), app(s, x))
app(app(le, 0), y) -> true
app(app(le, app(s, x)), 0) -> false
app(app(le, app(s, x)), app(s, y)) -> app(app(le, x), y)
app(pred, app(s, x)) -> x
app(app(minus, x), 0) -> x
app(app(minus, x), app(s, y)) -> app(pred, app(app(minus, x), y))
app(app(gcd, 0), y) -> y
app(app(gcd, app(s, x)), 0) -> app(s, x)
app(app(gcd, app(s, x)), app(s, y)) -> app(app(app(ifgcd, app(app(le, y), x)), app(s, x)), app(s, y))
app(app(app(ifgcd, true), app(s, x)), app(s, y)) -> app(app(gcd, app(app(minus, x), y)), app(s, y))
app(app(app(ifgcd, false), app(s, x)), app(s, y)) -> app(app(gcd, app(app(minus, y), x)), app(s, x))
innermost
three new Dependency Pairs are created:
APP(app(gcd, app(s, x)), app(s, y)) -> APP(app(app(ifgcd, app(app(le, y), x)), app(s, x)), app(s, y))
APP(app(gcd, app(s, x')), app(s, 0)) -> APP(app(app(ifgcd, true), app(s, x')), app(s, 0))
APP(app(gcd, app(s, 0)), app(s, app(s, x''))) -> APP(app(app(ifgcd, false), app(s, 0)), app(s, app(s, x'')))
APP(app(gcd, app(s, app(s, y''))), app(s, app(s, x''))) -> APP(app(app(ifgcd, app(app(le, x''), y'')), app(s, app(s, y''))), app(s, app(s, x'')))
R
↳DPs
→DP Problem 1
↳Polo
→DP Problem 2
↳Nar
→DP Problem 4
↳Nar
...
→DP Problem 6
↳Narrowing Transformation
APP(app(gcd, app(s, app(s, y''))), app(s, app(s, x''))) -> APP(app(app(ifgcd, app(app(le, x''), y'')), app(s, app(s, y''))), app(s, app(s, x'')))
APP(app(gcd, app(s, 0)), app(s, app(s, x''))) -> APP(app(app(ifgcd, false), app(s, 0)), app(s, app(s, x'')))
APP(app(gcd, app(s, x')), app(s, 0)) -> APP(app(app(ifgcd, true), app(s, x')), app(s, 0))
APP(app(app(ifgcd, false), app(s, x)), app(s, y)) -> APP(app(gcd, app(app(minus, y), x)), app(s, x))
APP(app(gcd, app(s, x)), app(s, y)) -> APP(app(le, y), x)
APP(app(gcd, app(s, x)), app(s, y)) -> APP(app(ifgcd, app(app(le, y), x)), app(s, x))
APP(app(le, app(s, x)), app(s, y)) -> APP(app(le, x), y)
APP(app(app(ifgcd, true), app(s, x)), app(s, y)) -> APP(app(gcd, app(app(minus, x), y)), app(s, y))
app(app(le, 0), y) -> true
app(app(le, app(s, x)), 0) -> false
app(app(le, app(s, x)), app(s, y)) -> app(app(le, x), y)
app(pred, app(s, x)) -> x
app(app(minus, x), 0) -> x
app(app(minus, x), app(s, y)) -> app(pred, app(app(minus, x), y))
app(app(gcd, 0), y) -> y
app(app(gcd, app(s, x)), 0) -> app(s, x)
app(app(gcd, app(s, x)), app(s, y)) -> app(app(app(ifgcd, app(app(le, y), x)), app(s, x)), app(s, y))
app(app(app(ifgcd, true), app(s, x)), app(s, y)) -> app(app(gcd, app(app(minus, x), y)), app(s, y))
app(app(app(ifgcd, false), app(s, x)), app(s, y)) -> app(app(gcd, app(app(minus, y), x)), app(s, x))
innermost
three new Dependency Pairs are created:
APP(app(gcd, app(s, x)), app(s, y)) -> APP(app(ifgcd, app(app(le, y), x)), app(s, x))
APP(app(gcd, app(s, x')), app(s, 0)) -> APP(app(ifgcd, true), app(s, x'))
APP(app(gcd, app(s, 0)), app(s, app(s, x''))) -> APP(app(ifgcd, false), app(s, 0))
APP(app(gcd, app(s, app(s, y''))), app(s, app(s, x''))) -> APP(app(ifgcd, app(app(le, x''), y'')), app(s, app(s, y'')))
R
↳DPs
→DP Problem 1
↳Polo
→DP Problem 2
↳Nar
→DP Problem 4
↳Nar
...
→DP Problem 7
↳Narrowing Transformation
APP(app(gcd, app(s, app(s, y''))), app(s, app(s, x''))) -> APP(app(ifgcd, app(app(le, x''), y'')), app(s, app(s, y'')))
APP(app(gcd, app(s, 0)), app(s, app(s, x''))) -> APP(app(ifgcd, false), app(s, 0))
APP(app(gcd, app(s, 0)), app(s, app(s, x''))) -> APP(app(app(ifgcd, false), app(s, 0)), app(s, app(s, x'')))
APP(app(gcd, app(s, x')), app(s, 0)) -> APP(app(ifgcd, true), app(s, x'))
APP(app(gcd, app(s, x')), app(s, 0)) -> APP(app(app(ifgcd, true), app(s, x')), app(s, 0))
APP(app(app(ifgcd, false), app(s, x)), app(s, y)) -> APP(app(gcd, app(app(minus, y), x)), app(s, x))
APP(app(app(ifgcd, true), app(s, x)), app(s, y)) -> APP(app(gcd, app(app(minus, x), y)), app(s, y))
APP(app(gcd, app(s, x)), app(s, y)) -> APP(app(le, y), x)
APP(app(le, app(s, x)), app(s, y)) -> APP(app(le, x), y)
APP(app(gcd, app(s, app(s, y''))), app(s, app(s, x''))) -> APP(app(app(ifgcd, app(app(le, x''), y'')), app(s, app(s, y''))), app(s, app(s, x'')))
app(app(le, 0), y) -> true
app(app(le, app(s, x)), 0) -> false
app(app(le, app(s, x)), app(s, y)) -> app(app(le, x), y)
app(pred, app(s, x)) -> x
app(app(minus, x), 0) -> x
app(app(minus, x), app(s, y)) -> app(pred, app(app(minus, x), y))
app(app(gcd, 0), y) -> y
app(app(gcd, app(s, x)), 0) -> app(s, x)
app(app(gcd, app(s, x)), app(s, y)) -> app(app(app(ifgcd, app(app(le, y), x)), app(s, x)), app(s, y))
app(app(app(ifgcd, true), app(s, x)), app(s, y)) -> app(app(gcd, app(app(minus, x), y)), app(s, y))
app(app(app(ifgcd, false), app(s, x)), app(s, y)) -> app(app(gcd, app(app(minus, y), x)), app(s, x))
innermost
two new Dependency Pairs are created:
APP(app(app(ifgcd, true), app(s, x)), app(s, y)) -> APP(app(gcd, app(app(minus, x), y)), app(s, y))
APP(app(app(ifgcd, true), app(s, x'')), app(s, 0)) -> APP(app(gcd, x''), app(s, 0))
APP(app(app(ifgcd, true), app(s, x'')), app(s, app(s, y''))) -> APP(app(gcd, app(pred, app(app(minus, x''), y''))), app(s, app(s, y'')))
R
↳DPs
→DP Problem 1
↳Polo
→DP Problem 2
↳Nar
→DP Problem 4
↳Nar
...
→DP Problem 8
↳Narrowing Transformation
APP(app(app(ifgcd, true), app(s, x'')), app(s, app(s, y''))) -> APP(app(gcd, app(pred, app(app(minus, x''), y''))), app(s, app(s, y'')))
APP(app(app(ifgcd, true), app(s, x'')), app(s, 0)) -> APP(app(gcd, x''), app(s, 0))
APP(app(gcd, app(s, 0)), app(s, app(s, x''))) -> APP(app(ifgcd, false), app(s, 0))
APP(app(gcd, app(s, app(s, y''))), app(s, app(s, x''))) -> APP(app(app(ifgcd, app(app(le, x''), y'')), app(s, app(s, y''))), app(s, app(s, x'')))
APP(app(gcd, app(s, 0)), app(s, app(s, x''))) -> APP(app(app(ifgcd, false), app(s, 0)), app(s, app(s, x'')))
APP(app(gcd, app(s, x')), app(s, 0)) -> APP(app(ifgcd, true), app(s, x'))
APP(app(gcd, app(s, x')), app(s, 0)) -> APP(app(app(ifgcd, true), app(s, x')), app(s, 0))
APP(app(app(ifgcd, false), app(s, x)), app(s, y)) -> APP(app(gcd, app(app(minus, y), x)), app(s, x))
APP(app(gcd, app(s, x)), app(s, y)) -> APP(app(le, y), x)
APP(app(le, app(s, x)), app(s, y)) -> APP(app(le, x), y)
APP(app(gcd, app(s, app(s, y''))), app(s, app(s, x''))) -> APP(app(ifgcd, app(app(le, x''), y'')), app(s, app(s, y'')))
app(app(le, 0), y) -> true
app(app(le, app(s, x)), 0) -> false
app(app(le, app(s, x)), app(s, y)) -> app(app(le, x), y)
app(pred, app(s, x)) -> x
app(app(minus, x), 0) -> x
app(app(minus, x), app(s, y)) -> app(pred, app(app(minus, x), y))
app(app(gcd, 0), y) -> y
app(app(gcd, app(s, x)), 0) -> app(s, x)
app(app(gcd, app(s, x)), app(s, y)) -> app(app(app(ifgcd, app(app(le, y), x)), app(s, x)), app(s, y))
app(app(app(ifgcd, true), app(s, x)), app(s, y)) -> app(app(gcd, app(app(minus, x), y)), app(s, y))
app(app(app(ifgcd, false), app(s, x)), app(s, y)) -> app(app(gcd, app(app(minus, y), x)), app(s, x))
innermost
two new Dependency Pairs are created:
APP(app(app(ifgcd, false), app(s, x)), app(s, y)) -> APP(app(gcd, app(app(minus, y), x)), app(s, x))
APP(app(app(ifgcd, false), app(s, 0)), app(s, y')) -> APP(app(gcd, y'), app(s, 0))
APP(app(app(ifgcd, false), app(s, app(s, y''))), app(s, y0)) -> APP(app(gcd, app(pred, app(app(minus, y0), y''))), app(s, app(s, y'')))
R
↳DPs
→DP Problem 1
↳Polo
→DP Problem 2
↳Nar
→DP Problem 4
↳Nar
...
→DP Problem 9
↳Narrowing Transformation
APP(app(gcd, app(s, app(s, y''))), app(s, app(s, x''))) -> APP(app(ifgcd, app(app(le, x''), y'')), app(s, app(s, y'')))
APP(app(app(ifgcd, false), app(s, app(s, y''))), app(s, y0)) -> APP(app(gcd, app(pred, app(app(minus, y0), y''))), app(s, app(s, y'')))
APP(app(app(ifgcd, false), app(s, 0)), app(s, y')) -> APP(app(gcd, y'), app(s, 0))
APP(app(app(ifgcd, true), app(s, x'')), app(s, 0)) -> APP(app(gcd, x''), app(s, 0))
APP(app(gcd, app(s, 0)), app(s, app(s, x''))) -> APP(app(ifgcd, false), app(s, 0))
APP(app(gcd, app(s, app(s, y''))), app(s, app(s, x''))) -> APP(app(app(ifgcd, app(app(le, x''), y'')), app(s, app(s, y''))), app(s, app(s, x'')))
APP(app(gcd, app(s, 0)), app(s, app(s, x''))) -> APP(app(app(ifgcd, false), app(s, 0)), app(s, app(s, x'')))
APP(app(gcd, app(s, x')), app(s, 0)) -> APP(app(ifgcd, true), app(s, x'))
APP(app(gcd, app(s, x')), app(s, 0)) -> APP(app(app(ifgcd, true), app(s, x')), app(s, 0))
APP(app(gcd, app(s, x)), app(s, y)) -> APP(app(le, y), x)
APP(app(le, app(s, x)), app(s, y)) -> APP(app(le, x), y)
APP(app(app(ifgcd, true), app(s, x'')), app(s, app(s, y''))) -> APP(app(gcd, app(pred, app(app(minus, x''), y''))), app(s, app(s, y'')))
app(app(le, 0), y) -> true
app(app(le, app(s, x)), 0) -> false
app(app(le, app(s, x)), app(s, y)) -> app(app(le, x), y)
app(pred, app(s, x)) -> x
app(app(minus, x), 0) -> x
app(app(minus, x), app(s, y)) -> app(pred, app(app(minus, x), y))
app(app(gcd, 0), y) -> y
app(app(gcd, app(s, x)), 0) -> app(s, x)
app(app(gcd, app(s, x)), app(s, y)) -> app(app(app(ifgcd, app(app(le, y), x)), app(s, x)), app(s, y))
app(app(app(ifgcd, true), app(s, x)), app(s, y)) -> app(app(gcd, app(app(minus, x), y)), app(s, y))
app(app(app(ifgcd, false), app(s, x)), app(s, y)) -> app(app(gcd, app(app(minus, y), x)), app(s, x))
innermost
no new Dependency Pairs are created.
APP(app(gcd, app(s, x')), app(s, 0)) -> APP(app(ifgcd, true), app(s, x'))
R
↳DPs
→DP Problem 1
↳Polo
→DP Problem 2
↳Nar
→DP Problem 4
↳Nar
...
→DP Problem 10
↳Narrowing Transformation
APP(app(app(ifgcd, true), app(s, x'')), app(s, app(s, y''))) -> APP(app(gcd, app(pred, app(app(minus, x''), y''))), app(s, app(s, y'')))
APP(app(gcd, app(s, 0)), app(s, app(s, x''))) -> APP(app(ifgcd, false), app(s, 0))
APP(app(gcd, app(s, app(s, y''))), app(s, app(s, x''))) -> APP(app(app(ifgcd, app(app(le, x''), y'')), app(s, app(s, y''))), app(s, app(s, x'')))
APP(app(gcd, app(s, 0)), app(s, app(s, x''))) -> APP(app(app(ifgcd, false), app(s, 0)), app(s, app(s, x'')))
APP(app(app(ifgcd, false), app(s, app(s, y''))), app(s, y0)) -> APP(app(gcd, app(pred, app(app(minus, y0), y''))), app(s, app(s, y'')))
APP(app(app(ifgcd, false), app(s, 0)), app(s, y')) -> APP(app(gcd, y'), app(s, 0))
APP(app(app(ifgcd, true), app(s, x'')), app(s, 0)) -> APP(app(gcd, x''), app(s, 0))
APP(app(gcd, app(s, x')), app(s, 0)) -> APP(app(app(ifgcd, true), app(s, x')), app(s, 0))
APP(app(gcd, app(s, x)), app(s, y)) -> APP(app(le, y), x)
APP(app(le, app(s, x)), app(s, y)) -> APP(app(le, x), y)
APP(app(gcd, app(s, app(s, y''))), app(s, app(s, x''))) -> APP(app(ifgcd, app(app(le, x''), y'')), app(s, app(s, y'')))
app(app(le, 0), y) -> true
app(app(le, app(s, x)), 0) -> false
app(app(le, app(s, x)), app(s, y)) -> app(app(le, x), y)
app(pred, app(s, x)) -> x
app(app(minus, x), 0) -> x
app(app(minus, x), app(s, y)) -> app(pred, app(app(minus, x), y))
app(app(gcd, 0), y) -> y
app(app(gcd, app(s, x)), 0) -> app(s, x)
app(app(gcd, app(s, x)), app(s, y)) -> app(app(app(ifgcd, app(app(le, y), x)), app(s, x)), app(s, y))
app(app(app(ifgcd, true), app(s, x)), app(s, y)) -> app(app(gcd, app(app(minus, x), y)), app(s, y))
app(app(app(ifgcd, false), app(s, x)), app(s, y)) -> app(app(gcd, app(app(minus, y), x)), app(s, x))
innermost
no new Dependency Pairs are created.
APP(app(gcd, app(s, 0)), app(s, app(s, x''))) -> APP(app(ifgcd, false), app(s, 0))
R
↳DPs
→DP Problem 1
↳Polo
→DP Problem 2
↳Nar
→DP Problem 4
↳Nar
...
→DP Problem 11
↳Remaining Obligation(s)
APP(app(gcd, app(s, app(s, y''))), app(s, app(s, x''))) -> APP(app(ifgcd, app(app(le, x''), y'')), app(s, app(s, y'')))
APP(app(gcd, app(s, app(s, y''))), app(s, app(s, x''))) -> APP(app(app(ifgcd, app(app(le, x''), y'')), app(s, app(s, y''))), app(s, app(s, x'')))
APP(app(gcd, app(s, 0)), app(s, app(s, x''))) -> APP(app(app(ifgcd, false), app(s, 0)), app(s, app(s, x'')))
APP(app(app(ifgcd, false), app(s, app(s, y''))), app(s, y0)) -> APP(app(gcd, app(pred, app(app(minus, y0), y''))), app(s, app(s, y'')))
APP(app(app(ifgcd, false), app(s, 0)), app(s, y')) -> APP(app(gcd, y'), app(s, 0))
APP(app(app(ifgcd, true), app(s, x'')), app(s, 0)) -> APP(app(gcd, x''), app(s, 0))
APP(app(gcd, app(s, x')), app(s, 0)) -> APP(app(app(ifgcd, true), app(s, x')), app(s, 0))
APP(app(gcd, app(s, x)), app(s, y)) -> APP(app(le, y), x)
APP(app(le, app(s, x)), app(s, y)) -> APP(app(le, x), y)
APP(app(app(ifgcd, true), app(s, x'')), app(s, app(s, y''))) -> APP(app(gcd, app(pred, app(app(minus, x''), y''))), app(s, app(s, y'')))
app(app(le, 0), y) -> true
app(app(le, app(s, x)), 0) -> false
app(app(le, app(s, x)), app(s, y)) -> app(app(le, x), y)
app(pred, app(s, x)) -> x
app(app(minus, x), 0) -> x
app(app(minus, x), app(s, y)) -> app(pred, app(app(minus, x), y))
app(app(gcd, 0), y) -> y
app(app(gcd, app(s, x)), 0) -> app(s, x)
app(app(gcd, app(s, x)), app(s, y)) -> app(app(app(ifgcd, app(app(le, y), x)), app(s, x)), app(s, y))
app(app(app(ifgcd, true), app(s, x)), app(s, y)) -> app(app(gcd, app(app(minus, x), y)), app(s, y))
app(app(app(ifgcd, false), app(s, x)), app(s, y)) -> app(app(gcd, app(app(minus, y), x)), app(s, x))
innermost