Definition list_max v l := fold_right Z.max v l.

(* Specifications: *)
Lemma list_max_app : forall v l1 l2, list_max v (l1 ++ l2) = list_max (list_max v l2) l1.
Lemma list_max_max : forall l v1 v2, Z.max v1 (list_max v2 l) = list_max (Z.max v1 v2) l.
Lemma list_max_spec : forall l v, v <= list_max v l /\ Forall (fun v' => v' <= list_max v l) l.
Lemma node_state_snap : forall sh L v version locs g, view_shift (node_state sh L v version locs g) (node_state sh L v version locs g * node_state Share.bot L v version locs g).
Lemma body_read : semax_body Vprog Gprog f_read read_spec.
Lemma body_write : semax_body Vprog Gprog f_write write_spec.
Lemma body_make_node : semax_body Vprog Gprog f_make_node make_node_spec.
Lemma body_writer : semax_body Vprog Gprog f_writer writer_spec.