fact: Definition big_flat_op {T} (op : T -> T -> T) (a : T) (sz : count) : T := Eval cbv [N_of_count pos_of_succ_count Pos.iter_op Pos.succ] in match N_of_count sz with | N0 => a | Npos p => Pos.iter_op op p a end.
imports: Coq.NArith.NArith Reify.Common Reify.PHOASUtil