Definition C1 := tau1.Definition C2 := tau2.Ltac list_simpl := (repeat (progress (cbn in *; autorewrite with list in *))); cbn in *.Definition encoding A := flat_map enc (rev A).

Lemma mapo_app X Y (f : X -> option Y) A B : mapo f (A ++ B) = mapo f A ++ mapo f B.