a sublinear additive sieve for finding prime numbers .
Guarded commands, nondeterminacy and formal derivation of programs