proposition: Lemma G_left_reduce m p q: (T m) (⟨ enc p A, enc q B⟩ ::: Nil) A B ≡ lin (tab t m) (⟨ enc p A, enc q B⟩ ::: Nil).
proof: Proof. rewrite G_left_subst. asimpl. rewrite map_id_list; [auto|]. rewrite tab_map_nats. intros; mapinj. unfold t; cbn; now asimpl. Qed.
imports: List Lia Program.Program Undecidability.HOU(std.std axioms) RelationClasses Morphisms Init.Wf Init.Nat Setoid Undecidability.HOU(calculus.calculus second_order.goldfarb.encoding) FinFun Coq.Arith.Wf_nat