YES

Problem:
 half(0()) -> 0()
 half(s(0())) -> 0()
 half(s(s(x))) -> s(half(x))
 lastbit(0()) -> 0()
 lastbit(s(0())) -> s(0())
 lastbit(s(s(x))) -> lastbit(x)
 conv(0()) -> cons(nil(),0())
 conv(s(x)) -> cons(conv(half(s(x))),lastbit(s(x)))

Proof:
 DP Processor:
  DPs:
   half#(s(s(x))) -> half#(x)
   lastbit#(s(s(x))) -> lastbit#(x)
   conv#(s(x)) -> lastbit#(s(x))
   conv#(s(x)) -> half#(s(x))
   conv#(s(x)) -> conv#(half(s(x)))
  TRS:
   half(0()) -> 0()
   half(s(0())) -> 0()
   half(s(s(x))) -> s(half(x))
   lastbit(0()) -> 0()
   lastbit(s(0())) -> s(0())
   lastbit(s(s(x))) -> lastbit(x)
   conv(0()) -> cons(nil(),0())
   conv(s(x)) -> cons(conv(half(s(x))),lastbit(s(x)))
  TDG Processor:
   DPs:
    half#(s(s(x))) -> half#(x)
    lastbit#(s(s(x))) -> lastbit#(x)
    conv#(s(x)) -> lastbit#(s(x))
    conv#(s(x)) -> half#(s(x))
    conv#(s(x)) -> conv#(half(s(x)))
   TRS:
    half(0()) -> 0()
    half(s(0())) -> 0()
    half(s(s(x))) -> s(half(x))
    lastbit(0()) -> 0()
    lastbit(s(0())) -> s(0())
    lastbit(s(s(x))) -> lastbit(x)
    conv(0()) -> cons(nil(),0())
    conv(s(x)) -> cons(conv(half(s(x))),lastbit(s(x)))
   graph:
    conv#(s(x)) -> conv#(half(s(x))) ->
    conv#(s(x)) -> conv#(half(s(x)))
    conv#(s(x)) -> conv#(half(s(x))) -> conv#(s(x)) -> half#(s(x))
    conv#(s(x)) -> conv#(half(s(x))) -> conv#(s(x)) -> lastbit#(s(x))
    conv#(s(x)) -> lastbit#(s(x)) -> lastbit#(s(s(x))) -> lastbit#(x)
    conv#(s(x)) -> half#(s(x)) -> half#(s(s(x))) -> half#(x)
    lastbit#(s(s(x))) -> lastbit#(x) -> lastbit#(s(s(x))) -> lastbit#(x)
    half#(s(s(x))) -> half#(x) -> half#(s(s(x))) -> half#(x)
   SCC Processor:
    #sccs: 3
    #rules: 3
    #arcs: 7/25
    DPs:
     conv#(s(x)) -> conv#(half(s(x)))
    TRS:
     half(0()) -> 0()
     half(s(0())) -> 0()
     half(s(s(x))) -> s(half(x))
     lastbit(0()) -> 0()
     lastbit(s(0())) -> s(0())
     lastbit(s(s(x))) -> lastbit(x)
     conv(0()) -> cons(nil(),0())
     conv(s(x)) -> cons(conv(half(s(x))),lastbit(s(x)))
    Arctic Interpretation Processor:
     dimension: 1
     interpretation:
      [conv#](x0) = x0 + 0,
      
      [cons](x0, x1) = -4x0 + -5x1 + 0,
      
      [nil] = 3,
      
      [conv](x0) = -3x0 + 4,
      
      [lastbit](x0) = 1x0 + -15,
      
      [s](x0) = 2x0 + 4,
      
      [half](x0) = -1x0 + 2,
      
      [0] = 0
     orientation:
      conv#(s(x)) = 2x + 4 >= 1x + 3 = conv#(half(s(x)))
      
      half(0()) = 2 >= 0 = 0()
      
      half(s(0())) = 3 >= 0 = 0()
      
      half(s(s(x))) = 3x + 5 >= 1x + 4 = s(half(x))
      
      lastbit(0()) = 1 >= 0 = 0()
      
      lastbit(s(0())) = 5 >= 4 = s(0())
      
      lastbit(s(s(x))) = 5x + 7 >= 1x + -15 = lastbit(x)
      
      conv(0()) = 4 >= 0 = cons(nil(),0())
      
      conv(s(x)) = -1x + 4 >= -2x + 0 = cons(conv(half(s(x))),lastbit(s(x)))
     problem:
      DPs:
       
      TRS:
       half(0()) -> 0()
       half(s(0())) -> 0()
       half(s(s(x))) -> s(half(x))
       lastbit(0()) -> 0()
       lastbit(s(0())) -> s(0())
       lastbit(s(s(x))) -> lastbit(x)
       conv(0()) -> cons(nil(),0())
       conv(s(x)) -> cons(conv(half(s(x))),lastbit(s(x)))
     Qed
    
    DPs:
     half#(s(s(x))) -> half#(x)
    TRS:
     half(0()) -> 0()
     half(s(0())) -> 0()
     half(s(s(x))) -> s(half(x))
     lastbit(0()) -> 0()
     lastbit(s(0())) -> s(0())
     lastbit(s(s(x))) -> lastbit(x)
     conv(0()) -> cons(nil(),0())
     conv(s(x)) -> cons(conv(half(s(x))),lastbit(s(x)))
    Arctic Interpretation Processor:
     dimension: 1
     interpretation:
      [half#](x0) = x0,
      
      [cons](x0, x1) = 0,
      
      [nil] = 3,
      
      [conv](x0) = 1,
      
      [lastbit](x0) = 2x0 + 0,
      
      [s](x0) = 1x0 + 0,
      
      [half](x0) = 3x0 + 0,
      
      [0] = 0
     orientation:
      half#(s(s(x))) = 2x + 1 >= x = half#(x)
      
      half(0()) = 3 >= 0 = 0()
      
      half(s(0())) = 4 >= 0 = 0()
      
      half(s(s(x))) = 5x + 4 >= 4x + 1 = s(half(x))
      
      lastbit(0()) = 2 >= 0 = 0()
      
      lastbit(s(0())) = 3 >= 1 = s(0())
      
      lastbit(s(s(x))) = 4x + 3 >= 2x + 0 = lastbit(x)
      
      conv(0()) = 1 >= 0 = cons(nil(),0())
      
      conv(s(x)) = 1 >= 0 = cons(conv(half(s(x))),lastbit(s(x)))
     problem:
      DPs:
       
      TRS:
       half(0()) -> 0()
       half(s(0())) -> 0()
       half(s(s(x))) -> s(half(x))
       lastbit(0()) -> 0()
       lastbit(s(0())) -> s(0())
       lastbit(s(s(x))) -> lastbit(x)
       conv(0()) -> cons(nil(),0())
       conv(s(x)) -> cons(conv(half(s(x))),lastbit(s(x)))
     Qed
    
    DPs:
     lastbit#(s(s(x))) -> lastbit#(x)
    TRS:
     half(0()) -> 0()
     half(s(0())) -> 0()
     half(s(s(x))) -> s(half(x))
     lastbit(0()) -> 0()
     lastbit(s(0())) -> s(0())
     lastbit(s(s(x))) -> lastbit(x)
     conv(0()) -> cons(nil(),0())
     conv(s(x)) -> cons(conv(half(s(x))),lastbit(s(x)))
    Arctic Interpretation Processor:
     dimension: 1
     interpretation:
      [lastbit#](x0) = x0,
      
      [cons](x0, x1) = 0,
      
      [nil] = 3,
      
      [conv](x0) = 1,
      
      [lastbit](x0) = 2x0 + 0,
      
      [s](x0) = 1x0 + 0,
      
      [half](x0) = 3x0 + 0,
      
      [0] = 0
     orientation:
      lastbit#(s(s(x))) = 2x + 1 >= x = lastbit#(x)
      
      half(0()) = 3 >= 0 = 0()
      
      half(s(0())) = 4 >= 0 = 0()
      
      half(s(s(x))) = 5x + 4 >= 4x + 1 = s(half(x))
      
      lastbit(0()) = 2 >= 0 = 0()
      
      lastbit(s(0())) = 3 >= 1 = s(0())
      
      lastbit(s(s(x))) = 4x + 3 >= 2x + 0 = lastbit(x)
      
      conv(0()) = 1 >= 0 = cons(nil(),0())
      
      conv(s(x)) = 1 >= 0 = cons(conv(half(s(x))),lastbit(s(x)))
     problem:
      DPs:
       
      TRS:
       half(0()) -> 0()
       half(s(0())) -> 0()
       half(s(s(x))) -> s(half(x))
       lastbit(0()) -> 0()
       lastbit(s(0())) -> s(0())
       lastbit(s(s(x))) -> lastbit(x)
       conv(0()) -> cons(nil(),0())
       conv(s(x)) -> cons(conv(half(s(x))),lastbit(s(x)))
     Qed