proposition: Lemma override_old_val: forall (V: Type) m k k' (v: V), (not (k = k')) -> (override m k v) k' = m k'.
proof: Proof. intros. unfold override. rewrite eq_nat_dec_neq. reflexivity. unfold not. intro. symmetry in H0. apply H in H0. assumption. Qed.
imports: Coq(FunctionalExtensionality Arith Lia) Coq(Arith.Peano_dec Arith.Compare_dec) Coq(Relations.Relation_Operators) Coq(List) Chapar(Predefs)