fact: Definition put_method (n: NId)(this: State)(k: Key)(v: Val): (State * Update) := let s := store this in let r := rec this in let d := dep this in let d' := override d n ((r n) + 1) in let r' := override r n ((r n) + 1) in let s' := override s k (entry v n (d' n)) in ((state s' r' d'), (@update Val n d')).
imports: Coq(FunctionalExtensionality List Bool Program.Basics) Coq(Arith Arith.Peano_dec Arith.Compare_dec) Chapar(Predefs extralib KVStore)