let forward fwd_kind kf stmt =
    let nodes = initial_nodes kf stmt in
    Security_slicing_parameters.debug
      "computing forward component for stmt %d" stmt.sid;
    let res = related_nodes_of_nodes (Forward fwd_kind) M.empty nodes in
    let set =
      M.fold
        (fun (n,_) _ acc ->
           Extlib.may_map
             ~dft:acc
             (fun s -> StmtSet.add s acc)
             (get_node_stmt n))
        res
        StmtSet.empty
    in
    StmtSet.elements set