From Undecidability.TM Require Hoare.
Local Arguments skipn { A } !n !l.
Local Arguments plus : simpl never.
Local Arguments mult : simpl never.
Local Arguments Encode_list : simpl never.
Local Arguments Encode_nat : simpl never.
Set Default Proof Using "Type".

(* TODO: -> base *)
Corollary removelast_app_singleton (xs : list X) (x : X) :
removelast (xs ++ [x]) = xs.