Abstract. In logic programming, dynamic scheduling refers to a situation where the selection of the atom in each resolution (computation) step is determined at runtime, as opposed to a xed selection rule such as the left-to-right one of Prolog. This has applications e.g. in parallel programming. A mechanism to control dynamic scheduling is provided in existing languages in the form of delay declarations. Input-consuming derivations were introduced to describe dynamic schedile abstracting from the technical details. In this paper, we rst formalise the relationship between delay declarations and inputconsuming derivations, showing in many cases a one-to-one correspondence. Then, we de ne a model-theoretic semantics for input-consuming derivations of simply-modedprograms. Finally, for this class of programs, we provide a necessary and su cient criterion for termination.