R
↳Dependency Pair Analysis
APP(app(twice, f), x) -> APP(f, app(f, x))
APP(app(twice, f), x) -> APP(f, x)
APP(app(map, f), app(app(cons, h), t)) -> APP(app(cons, app(f, h)), app(app(map, f), t))
APP(app(map, f), app(app(cons, h), t)) -> APP(cons, app(f, h))
APP(app(map, f), app(app(cons, h), t)) -> APP(f, h)
APP(app(map, f), app(app(cons, h), t)) -> APP(app(map, f), t)
APP(app(fmap, app(app(cons, f), tf)), x) -> APP(app(cons, app(f, x)), app(app(fmap, tf), x))
APP(app(fmap, app(app(cons, f), tf)), x) -> APP(cons, app(f, x))
APP(app(fmap, app(app(cons, f), tf)), x) -> APP(f, x)
APP(app(fmap, app(app(cons, f), tf)), x) -> APP(app(fmap, tf), x)
APP(app(fmap, app(app(cons, f), tf)), x) -> APP(fmap, tf)
R
↳DPs
→DP Problem 1
↳Narrowing Transformation
APP(app(fmap, app(app(cons, f), tf)), x) -> APP(app(fmap, tf), x)
APP(app(fmap, app(app(cons, f), tf)), x) -> APP(f, x)
APP(app(fmap, app(app(cons, f), tf)), x) -> APP(app(cons, app(f, x)), app(app(fmap, tf), x))
APP(app(map, f), app(app(cons, h), t)) -> APP(app(map, f), t)
APP(app(map, f), app(app(cons, h), t)) -> APP(f, h)
APP(app(map, f), app(app(cons, h), t)) -> APP(app(cons, app(f, h)), app(app(map, f), t))
APP(app(twice, f), x) -> APP(f, x)
APP(app(twice, f), x) -> APP(f, app(f, x))
app(app(twice, f), x) -> app(f, app(f, x))
app(app(map, f), nil) -> nil
app(app(map, f), app(app(cons, h), t)) -> app(app(cons, app(f, h)), app(app(map, f), t))
app(app(fmap, nil), x) -> nil
app(app(fmap, app(app(cons, f), tf)), x) -> app(app(cons, app(f, x)), app(app(fmap, tf), x))
no new Dependency Pairs are created.
APP(app(fmap, app(app(cons, f), tf)), x) -> APP(app(fmap, tf), x)
R
↳DPs
→DP Problem 1
↳Nar
→DP Problem 2
↳Remaining Obligation(s)
APP(app(fmap, app(app(cons, f), tf)), x) -> APP(app(cons, app(f, x)), app(app(fmap, tf), x))
APP(app(map, f), app(app(cons, h), t)) -> APP(app(map, f), t)
APP(app(map, f), app(app(cons, h), t)) -> APP(f, h)
APP(app(map, f), app(app(cons, h), t)) -> APP(app(cons, app(f, h)), app(app(map, f), t))
APP(app(twice, f), x) -> APP(f, x)
APP(app(twice, f), x) -> APP(f, app(f, x))
APP(app(fmap, app(app(cons, f), tf)), x) -> APP(f, x)
app(app(twice, f), x) -> app(f, app(f, x))
app(app(map, f), nil) -> nil
app(app(map, f), app(app(cons, h), t)) -> app(app(cons, app(f, h)), app(app(map, f), t))
app(app(fmap, nil), x) -> nil
app(app(fmap, app(app(cons, f), tf)), x) -> app(app(cons, app(f, x)), app(app(fmap, tf), x))