  The problem of computing all maximal induced subgraphs of a graph G that have
a graph property P, also called the maximal P-subgraphs problem, is considered.
This problem is studied for hereditary, connected-hereditary and
rooted-hereditary graph properties. The maximal P-subgraphs problem is reduced
to restricted versions of this problem by providing algorithms that solve the
general problem, assuming that an algorithm for a restricted version is given.
The complexity of the algorithms are analyzed in terms of total polynomial
time, incremental polynomial time and the complexity class P-enumerable. The
general results presented allow simple proofs that the maximal P-subgraphs
problem can be solved efficiently (in terms of the input and output) for many
different properties.
