let valid_to_string v =
  let one_to_string (r,c) = match c with 
   | Inferior n    -> Printf.sprintf "%s-%d" (resp_to_string r) n 
   | Superior n    -> Printf.sprintf "%s%d-" (resp_to_string r) n 
   | Between (u,v) -> Printf.sprintf "%s%d-%d" (resp_to_string r) u v 
   in String.concat "," (List.map one_to_string v)