let get_parent n = match (Tree.get_parent_edge n) with Some(e) -> (Tree.get_source e) | None -> invalid_arg "get_parent: input node has no parent edge"