let rec string_of_instances = function
    Seq(lt) ->
      "("^(list_to_string string_of_instances ";" lt)^")"
  | Par(lt) ->
      "("^(list_to_string string_of_instances "|" lt)^")"
  | Inst(no) ->
      string_of_int no
  | _ -> ""