deterministic reasoning