  The notion of a subproduct system, a generalization of that of a product
system, is introduced. We show that there is an essentially 1 to 1
correspondence between cp-semigroups and pairs (X,T) where X is a subproduct
system and T is an injective subproduct system representation. A similar
statement holds for subproduct systems and units of subproduct systems. This
correspondence is used as a framework for developing a dilation theory for
cp-semigroups. Results we obtain: (i) a *-automorphic dilation to semigroups of
*-endomorphisms over quite general semigroups; (ii) necessary and sufficient
conditions for a semigroup of CP maps to have a *-endomorphic dilation; (iii)
an analogue of Parrot's example of three contractions with no isometric
dilation, that is, an example of three commuting, contractive normal CP maps on
B(H) that admit no *-endomorphic dilation (thereby solving an open problem
raised by Bhat in 1998). Special attention is given to subproduct systems over
the semigroup N, which are used as a framework for studying tuples of operators
satisfying homogeneous polynomial relations, and the operator algebras they
generate. As applications we obtain a noncommutative (projective)
Nullstellansatz, a model for tuples of operators subject to homogeneous
polynomial relations, a complete description of all representations of
Matsumoto's subshift C*-algebra when the subshift is of finite type, and a
classification of certain operator algebras -- including an interesting
non-selfadjoint generalization of the noncommutative tori.
