Opaque member_dec.

Lemma union_Prop_compact_sum_gen: forall m (F: ident * type -> Type) (P: forall it, F it -> Prop) (f: forall it, F it),
members_no_replicate m = true ->
(forall i, in_members i m -> P (i, field_type i m) (f (i, field_type i m))) ->
union_Prop m P (compact_sum_gen (fun _ => true) f m).