** V** is a ``wide-spectrum'' language: it includes sets, mappings,
relations, predicates, enumerations, state transformation sequences,
and both declarative and procedural statements.

A high-level program in ** V** is refined into executable code by
applying transformation rules.

** Optimization:** * e.g.*, move a predicate outside a quantifier.
For example, if * p * does not depend on * x *,
* &forall x [ p &and q &rArr r ] &rarr
p &rArr &forall x [ q &rArr r ] *

* Cf.* moving invariant computations out of loops.

** Refinement:** move code closer to executable form, * e.g.*,
convert a bounded quantifier into a loop, or implement a set by means
of a data structure.