fact: Fixpoint erase k (f : recalg k) : reccode := match f with | ra_cst n => rc_cst n | ra_zero => rc_zero | ra_succ => rc_succ | ra_proj _ p => rc_proj (pos2nat p) | ra_comp _ _ f g => rc_comp (erase f) (rec_erase erase g) | ra_rec _ f g => rc_rec (erase f) (erase g) | ra_min _ f => rc_min (erase f) end.
imports: Undecidability.H10(H10 dio_single dio_logic) Undecidability.L.Datatypes(LNat LOptions LSum) Undecidability.L(Tactics.LTactics Computability.MuRec Computability.Synthetic Tactics.GenEncode) Undecidability.Shared(DLW.Utils.finite DLW.Vec.vec DLW.Vec.pos) Undecidability.MuRec(MuRec recalg ra_sem_eq) Undecidability.L.Reductions.MuRec.MuRec_extract