R
↳Dependency Pair Analysis
APP(app(filter, f), app(app(cons, y), ys)) -> APP(app(app(filtersub, app(f, y)), f), app(app(cons, y), ys))
APP(app(filter, f), app(app(cons, y), ys)) -> APP(app(filtersub, app(f, y)), f)
APP(app(filter, f), app(app(cons, y), ys)) -> APP(filtersub, app(f, y))
APP(app(filter, f), app(app(cons, y), ys)) -> APP(f, y)
APP(app(app(filtersub, true), f), app(app(cons, y), ys)) -> APP(app(cons, y), app(app(filter, f), ys))
APP(app(app(filtersub, true), f), app(app(cons, y), ys)) -> APP(app(filter, f), ys)
APP(app(app(filtersub, true), f), app(app(cons, y), ys)) -> APP(filter, f)
APP(app(app(filtersub, false), f), app(app(cons, y), ys)) -> APP(app(filter, f), ys)
APP(app(app(filtersub, false), f), app(app(cons, y), ys)) -> APP(filter, f)
R
↳DPs
→DP Problem 1
↳Narrowing Transformation
APP(app(app(filtersub, false), f), app(app(cons, y), ys)) -> APP(app(filter, f), ys)
APP(app(app(filtersub, true), f), app(app(cons, y), ys)) -> APP(app(filter, f), ys)
APP(app(filter, f), app(app(cons, y), ys)) -> APP(f, y)
APP(app(filter, f), app(app(cons, y), ys)) -> APP(app(filtersub, app(f, y)), f)
APP(app(filter, f), app(app(cons, y), ys)) -> APP(app(app(filtersub, app(f, y)), f), app(app(cons, y), ys))
app(app(filter, f), nil) -> nil
app(app(filter, f), app(app(cons, y), ys)) -> app(app(app(filtersub, app(f, y)), f), app(app(cons, y), ys))
app(app(app(filtersub, true), f), app(app(cons, y), ys)) -> app(app(cons, y), app(app(filter, f), ys))
app(app(app(filtersub, false), f), app(app(cons, y), ys)) -> app(app(filter, f), ys)
innermost
four new Dependency Pairs are created:
APP(app(filter, f), app(app(cons, y), ys)) -> APP(app(app(filtersub, app(f, y)), f), app(app(cons, y), ys))
APP(app(filter, app(filter, f'')), app(app(cons, nil), ys)) -> APP(app(app(filtersub, nil), app(filter, f'')), app(app(cons, nil), ys))
APP(app(filter, app(filter, f'')), app(app(cons, app(app(cons, y''), ys'')), ys)) -> APP(app(app(filtersub, app(app(app(filtersub, app(f'', y'')), f''), app(app(cons, y''), ys''))), app(filter, f'')), app(app(cons, app(app(cons, y''), ys'')), ys))
APP(app(filter, app(app(filtersub, true), f'')), app(app(cons, app(app(cons, y''), ys'')), ys)) -> APP(app(app(filtersub, app(app(cons, y''), app(app(filter, f''), ys''))), app(app(filtersub, true), f'')), app(app(cons, app(app(cons, y''), ys'')), ys))
APP(app(filter, app(app(filtersub, false), f'')), app(app(cons, app(app(cons, y''), ys'')), ys)) -> APP(app(app(filtersub, app(app(filter, f''), ys'')), app(app(filtersub, false), f'')), app(app(cons, app(app(cons, y''), ys'')), ys))
R
↳DPs
→DP Problem 1
↳Nar
→DP Problem 2
↳Narrowing Transformation
APP(app(filter, app(app(filtersub, false), f'')), app(app(cons, app(app(cons, y''), ys'')), ys)) -> APP(app(app(filtersub, app(app(filter, f''), ys'')), app(app(filtersub, false), f'')), app(app(cons, app(app(cons, y''), ys'')), ys))
APP(app(filter, app(app(filtersub, true), f'')), app(app(cons, app(app(cons, y''), ys'')), ys)) -> APP(app(app(filtersub, app(app(cons, y''), app(app(filter, f''), ys''))), app(app(filtersub, true), f'')), app(app(cons, app(app(cons, y''), ys'')), ys))
APP(app(filter, app(filter, f'')), app(app(cons, app(app(cons, y''), ys'')), ys)) -> APP(app(app(filtersub, app(app(app(filtersub, app(f'', y'')), f''), app(app(cons, y''), ys''))), app(filter, f'')), app(app(cons, app(app(cons, y''), ys'')), ys))
APP(app(filter, app(filter, f'')), app(app(cons, nil), ys)) -> APP(app(app(filtersub, nil), app(filter, f'')), app(app(cons, nil), ys))
APP(app(app(filtersub, true), f), app(app(cons, y), ys)) -> APP(app(filter, f), ys)
APP(app(filter, f), app(app(cons, y), ys)) -> APP(f, y)
APP(app(filter, f), app(app(cons, y), ys)) -> APP(app(filtersub, app(f, y)), f)
APP(app(app(filtersub, false), f), app(app(cons, y), ys)) -> APP(app(filter, f), ys)
app(app(filter, f), nil) -> nil
app(app(filter, f), app(app(cons, y), ys)) -> app(app(app(filtersub, app(f, y)), f), app(app(cons, y), ys))
app(app(app(filtersub, true), f), app(app(cons, y), ys)) -> app(app(cons, y), app(app(filter, f), ys))
app(app(app(filtersub, false), f), app(app(cons, y), ys)) -> app(app(filter, f), ys)
innermost
four new Dependency Pairs are created:
APP(app(filter, f), app(app(cons, y), ys)) -> APP(app(filtersub, app(f, y)), f)
APP(app(filter, app(filter, f'')), app(app(cons, nil), ys)) -> APP(app(filtersub, nil), app(filter, f''))
APP(app(filter, app(filter, f'')), app(app(cons, app(app(cons, y''), ys'')), ys)) -> APP(app(filtersub, app(app(app(filtersub, app(f'', y'')), f''), app(app(cons, y''), ys''))), app(filter, f''))
APP(app(filter, app(app(filtersub, true), f'')), app(app(cons, app(app(cons, y''), ys'')), ys)) -> APP(app(filtersub, app(app(cons, y''), app(app(filter, f''), ys''))), app(app(filtersub, true), f''))
APP(app(filter, app(app(filtersub, false), f'')), app(app(cons, app(app(cons, y''), ys'')), ys)) -> APP(app(filtersub, app(app(filter, f''), ys'')), app(app(filtersub, false), f''))
R
↳DPs
→DP Problem 1
↳Nar
→DP Problem 2
↳Nar
...
→DP Problem 3
↳Narrowing Transformation
APP(app(filter, app(app(filtersub, true), f'')), app(app(cons, app(app(cons, y''), ys'')), ys)) -> APP(app(app(filtersub, app(app(cons, y''), app(app(filter, f''), ys''))), app(app(filtersub, true), f'')), app(app(cons, app(app(cons, y''), ys'')), ys))
APP(app(filter, app(filter, f'')), app(app(cons, app(app(cons, y''), ys'')), ys)) -> APP(app(app(filtersub, app(app(app(filtersub, app(f'', y'')), f''), app(app(cons, y''), ys''))), app(filter, f'')), app(app(cons, app(app(cons, y''), ys'')), ys))
APP(app(filter, app(filter, f'')), app(app(cons, nil), ys)) -> APP(app(app(filtersub, nil), app(filter, f'')), app(app(cons, nil), ys))
APP(app(app(filtersub, false), f), app(app(cons, y), ys)) -> APP(app(filter, f), ys)
APP(app(app(filtersub, true), f), app(app(cons, y), ys)) -> APP(app(filter, f), ys)
APP(app(filter, f), app(app(cons, y), ys)) -> APP(f, y)
APP(app(filter, app(app(filtersub, false), f'')), app(app(cons, app(app(cons, y''), ys'')), ys)) -> APP(app(app(filtersub, app(app(filter, f''), ys'')), app(app(filtersub, false), f'')), app(app(cons, app(app(cons, y''), ys'')), ys))
app(app(filter, f), nil) -> nil
app(app(filter, f), app(app(cons, y), ys)) -> app(app(app(filtersub, app(f, y)), f), app(app(cons, y), ys))
app(app(app(filtersub, true), f), app(app(cons, y), ys)) -> app(app(cons, y), app(app(filter, f), ys))
app(app(app(filtersub, false), f), app(app(cons, y), ys)) -> app(app(filter, f), ys)
innermost
no new Dependency Pairs are created.
APP(app(filter, app(filter, f'')), app(app(cons, nil), ys)) -> APP(app(app(filtersub, nil), app(filter, f'')), app(app(cons, nil), ys))
R
↳DPs
→DP Problem 1
↳Nar
→DP Problem 2
↳Nar
...
→DP Problem 4
↳Forward Instantiation Transformation
APP(app(filter, app(app(filtersub, false), f'')), app(app(cons, app(app(cons, y''), ys'')), ys)) -> APP(app(app(filtersub, app(app(filter, f''), ys'')), app(app(filtersub, false), f'')), app(app(cons, app(app(cons, y''), ys'')), ys))
APP(app(filter, app(filter, f'')), app(app(cons, app(app(cons, y''), ys'')), ys)) -> APP(app(app(filtersub, app(app(app(filtersub, app(f'', y'')), f''), app(app(cons, y''), ys''))), app(filter, f'')), app(app(cons, app(app(cons, y''), ys'')), ys))
APP(app(app(filtersub, false), f), app(app(cons, y), ys)) -> APP(app(filter, f), ys)
APP(app(app(filtersub, true), f), app(app(cons, y), ys)) -> APP(app(filter, f), ys)
APP(app(filter, f), app(app(cons, y), ys)) -> APP(f, y)
APP(app(filter, app(app(filtersub, true), f'')), app(app(cons, app(app(cons, y''), ys'')), ys)) -> APP(app(app(filtersub, app(app(cons, y''), app(app(filter, f''), ys''))), app(app(filtersub, true), f'')), app(app(cons, app(app(cons, y''), ys'')), ys))
app(app(filter, f), nil) -> nil
app(app(filter, f), app(app(cons, y), ys)) -> app(app(app(filtersub, app(f, y)), f), app(app(cons, y), ys))
app(app(app(filtersub, true), f), app(app(cons, y), ys)) -> app(app(cons, y), app(app(filter, f), ys))
app(app(app(filtersub, false), f), app(app(cons, y), ys)) -> app(app(filter, f), ys)
innermost
six new Dependency Pairs are created:
APP(app(filter, f), app(app(cons, y), ys)) -> APP(f, y)
APP(app(filter, app(filter, f'')), app(app(cons, app(app(cons, y''), ys'')), ys)) -> APP(app(filter, f''), app(app(cons, y''), ys''))
APP(app(filter, app(app(filtersub, true), f'')), app(app(cons, app(app(cons, y''), ys'')), ys)) -> APP(app(app(filtersub, true), f''), app(app(cons, y''), ys''))
APP(app(filter, app(app(filtersub, false), f'')), app(app(cons, app(app(cons, y''), ys'')), ys)) -> APP(app(app(filtersub, false), f''), app(app(cons, y''), ys''))
APP(app(filter, app(filter, app(filter, f''''))), app(app(cons, app(app(cons, app(app(cons, y''''), ys'''')), ys'')), ys)) -> APP(app(filter, app(filter, f'''')), app(app(cons, app(app(cons, y''''), ys'''')), ys''))
APP(app(filter, app(filter, app(app(filtersub, true), f''''))), app(app(cons, app(app(cons, app(app(cons, y''''), ys'''')), ys'')), ys)) -> APP(app(filter, app(app(filtersub, true), f'''')), app(app(cons, app(app(cons, y''''), ys'''')), ys''))
APP(app(filter, app(filter, app(app(filtersub, false), f''''))), app(app(cons, app(app(cons, app(app(cons, y''''), ys'''')), ys'')), ys)) -> APP(app(filter, app(app(filtersub, false), f'''')), app(app(cons, app(app(cons, y''''), ys'''')), ys''))
R
↳DPs
→DP Problem 1
↳Nar
→DP Problem 2
↳Nar
...
→DP Problem 5
↳Polynomial Ordering
APP(app(filter, app(filter, app(app(filtersub, false), f''''))), app(app(cons, app(app(cons, app(app(cons, y''''), ys'''')), ys'')), ys)) -> APP(app(filter, app(app(filtersub, false), f'''')), app(app(cons, app(app(cons, y''''), ys'''')), ys''))
APP(app(filter, app(filter, app(app(filtersub, true), f''''))), app(app(cons, app(app(cons, app(app(cons, y''''), ys'''')), ys'')), ys)) -> APP(app(filter, app(app(filtersub, true), f'''')), app(app(cons, app(app(cons, y''''), ys'''')), ys''))
APP(app(filter, app(filter, app(filter, f''''))), app(app(cons, app(app(cons, app(app(cons, y''''), ys'''')), ys'')), ys)) -> APP(app(filter, app(filter, f'''')), app(app(cons, app(app(cons, y''''), ys'''')), ys''))
APP(app(filter, app(app(filtersub, false), f'')), app(app(cons, app(app(cons, y''), ys'')), ys)) -> APP(app(app(filtersub, false), f''), app(app(cons, y''), ys''))
APP(app(filter, app(app(filtersub, true), f'')), app(app(cons, app(app(cons, y''), ys'')), ys)) -> APP(app(app(filtersub, true), f''), app(app(cons, y''), ys''))
APP(app(filter, app(filter, f'')), app(app(cons, app(app(cons, y''), ys'')), ys)) -> APP(app(filter, f''), app(app(cons, y''), ys''))
APP(app(filter, app(app(filtersub, true), f'')), app(app(cons, app(app(cons, y''), ys'')), ys)) -> APP(app(app(filtersub, app(app(cons, y''), app(app(filter, f''), ys''))), app(app(filtersub, true), f'')), app(app(cons, app(app(cons, y''), ys'')), ys))
APP(app(filter, app(filter, f'')), app(app(cons, app(app(cons, y''), ys'')), ys)) -> APP(app(app(filtersub, app(app(app(filtersub, app(f'', y'')), f''), app(app(cons, y''), ys''))), app(filter, f'')), app(app(cons, app(app(cons, y''), ys'')), ys))
APP(app(app(filtersub, false), f), app(app(cons, y), ys)) -> APP(app(filter, f), ys)
APP(app(app(filtersub, true), f), app(app(cons, y), ys)) -> APP(app(filter, f), ys)
APP(app(filter, app(app(filtersub, false), f'')), app(app(cons, app(app(cons, y''), ys'')), ys)) -> APP(app(app(filtersub, app(app(filter, f''), ys'')), app(app(filtersub, false), f'')), app(app(cons, app(app(cons, y''), ys'')), ys))
app(app(filter, f), nil) -> nil
app(app(filter, f), app(app(cons, y), ys)) -> app(app(app(filtersub, app(f, y)), f), app(app(cons, y), ys))
app(app(app(filtersub, true), f), app(app(cons, y), ys)) -> app(app(cons, y), app(app(filter, f), ys))
app(app(app(filtersub, false), f), app(app(cons, y), ys)) -> app(app(filter, f), ys)
innermost
APP(app(filter, app(filter, app(app(filtersub, false), f''''))), app(app(cons, app(app(cons, app(app(cons, y''''), ys'''')), ys'')), ys)) -> APP(app(filter, app(app(filtersub, false), f'''')), app(app(cons, app(app(cons, y''''), ys'''')), ys''))
APP(app(filter, app(filter, app(app(filtersub, true), f''''))), app(app(cons, app(app(cons, app(app(cons, y''''), ys'''')), ys'')), ys)) -> APP(app(filter, app(app(filtersub, true), f'''')), app(app(cons, app(app(cons, y''''), ys'''')), ys''))
APP(app(filter, app(filter, app(filter, f''''))), app(app(cons, app(app(cons, app(app(cons, y''''), ys'''')), ys'')), ys)) -> APP(app(filter, app(filter, f'''')), app(app(cons, app(app(cons, y''''), ys'''')), ys''))
APP(app(filter, app(app(filtersub, false), f'')), app(app(cons, app(app(cons, y''), ys'')), ys)) -> APP(app(app(filtersub, false), f''), app(app(cons, y''), ys''))
APP(app(filter, app(app(filtersub, true), f'')), app(app(cons, app(app(cons, y''), ys'')), ys)) -> APP(app(app(filtersub, true), f''), app(app(cons, y''), ys''))
APP(app(filter, app(filter, f'')), app(app(cons, app(app(cons, y''), ys'')), ys)) -> APP(app(filter, f''), app(app(cons, y''), ys''))
app(app(filter, f), nil) -> nil
app(app(filter, f), app(app(cons, y), ys)) -> app(app(app(filtersub, app(f, y)), f), app(app(cons, y), ys))
app(app(app(filtersub, true), f), app(app(cons, y), ys)) -> app(app(cons, y), app(app(filter, f), ys))
app(app(app(filtersub, false), f), app(app(cons, y), ys)) -> app(app(filter, f), ys)
POL(filter) = 0 POL(cons) = 0 POL(false) = 0 POL(filtersub) = 0 POL(nil) = 0 POL(true) = 0 POL(app(x1, x2)) = 1 + x2 POL(APP(x1, x2)) = 1 + x1
R
↳DPs
→DP Problem 1
↳Nar
→DP Problem 2
↳Nar
...
→DP Problem 6
↳Polynomial Ordering
APP(app(filter, app(app(filtersub, true), f'')), app(app(cons, app(app(cons, y''), ys'')), ys)) -> APP(app(app(filtersub, app(app(cons, y''), app(app(filter, f''), ys''))), app(app(filtersub, true), f'')), app(app(cons, app(app(cons, y''), ys'')), ys))
APP(app(filter, app(filter, f'')), app(app(cons, app(app(cons, y''), ys'')), ys)) -> APP(app(app(filtersub, app(app(app(filtersub, app(f'', y'')), f''), app(app(cons, y''), ys''))), app(filter, f'')), app(app(cons, app(app(cons, y''), ys'')), ys))
APP(app(app(filtersub, false), f), app(app(cons, y), ys)) -> APP(app(filter, f), ys)
APP(app(app(filtersub, true), f), app(app(cons, y), ys)) -> APP(app(filter, f), ys)
APP(app(filter, app(app(filtersub, false), f'')), app(app(cons, app(app(cons, y''), ys'')), ys)) -> APP(app(app(filtersub, app(app(filter, f''), ys'')), app(app(filtersub, false), f'')), app(app(cons, app(app(cons, y''), ys'')), ys))
app(app(filter, f), nil) -> nil
app(app(filter, f), app(app(cons, y), ys)) -> app(app(app(filtersub, app(f, y)), f), app(app(cons, y), ys))
app(app(app(filtersub, true), f), app(app(cons, y), ys)) -> app(app(cons, y), app(app(filter, f), ys))
app(app(app(filtersub, false), f), app(app(cons, y), ys)) -> app(app(filter, f), ys)
innermost
APP(app(app(filtersub, false), f), app(app(cons, y), ys)) -> APP(app(filter, f), ys)
APP(app(app(filtersub, true), f), app(app(cons, y), ys)) -> APP(app(filter, f), ys)
app(app(filter, f), nil) -> nil
app(app(filter, f), app(app(cons, y), ys)) -> app(app(app(filtersub, app(f, y)), f), app(app(cons, y), ys))
app(app(app(filtersub, true), f), app(app(cons, y), ys)) -> app(app(cons, y), app(app(filter, f), ys))
app(app(app(filtersub, false), f), app(app(cons, y), ys)) -> app(app(filter, f), ys)
POL(filter) = 0 POL(cons) = 0 POL(false) = 0 POL(filtersub) = 0 POL(nil) = 0 POL(true) = 0 POL(app(x1, x2)) = 1 + x2 POL(APP(x1, x2)) = x2
R
↳DPs
→DP Problem 1
↳Nar
→DP Problem 2
↳Nar
...
→DP Problem 7
↳Remaining Obligation(s)
APP(app(filter, app(app(filtersub, true), f'')), app(app(cons, app(app(cons, y''), ys'')), ys)) -> APP(app(app(filtersub, app(app(cons, y''), app(app(filter, f''), ys''))), app(app(filtersub, true), f'')), app(app(cons, app(app(cons, y''), ys'')), ys))
APP(app(filter, app(filter, f'')), app(app(cons, app(app(cons, y''), ys'')), ys)) -> APP(app(app(filtersub, app(app(app(filtersub, app(f'', y'')), f''), app(app(cons, y''), ys''))), app(filter, f'')), app(app(cons, app(app(cons, y''), ys'')), ys))
APP(app(filter, app(app(filtersub, false), f'')), app(app(cons, app(app(cons, y''), ys'')), ys)) -> APP(app(app(filtersub, app(app(filter, f''), ys'')), app(app(filtersub, false), f'')), app(app(cons, app(app(cons, y''), ys'')), ys))
app(app(filter, f), nil) -> nil
app(app(filter, f), app(app(cons, y), ys)) -> app(app(app(filtersub, app(f, y)), f), app(app(cons, y), ys))
app(app(app(filtersub, true), f), app(app(cons, y), ys)) -> app(app(cons, y), app(app(filter, f), ys))
app(app(app(filtersub, false), f), app(app(cons, y), ys)) -> app(app(filter, f), ys)
innermost