From Undecidability.L.Datatypes Require Export LNat.
From Undecidability.L Require Export Util.L_facts.
From Undecidability.L.Tactics Require Import LTactics GenEncode.
(* ** Encoding for L-terms *)
MetaCoq Run (tmGenEncode "term_enc" term).
Hint Resolve term_enc_correct : Lrewrite.
(* register the non-constant constructors *)
Instance term_var : computableTime' var (fun n _ => (1, tt)).

Lemma size_term_enc_r (s:term) :
size s <= size (enc s).