let rec fold_or acc labels = function | Pnamed(label,p) -> fold_or acc (label::labels) p | Por(p,q) -> fold_or (fold_or acc labels q) labels p | Pfalse -> acc | p -> apply_labels p labels :: acc