Iteratively defined transfinite trace semantics and program slicing with respect to them