not yet exist? Often, we don't even have a clue on how the implementation will look like. The answer, of course, is that capturing the entire behavior is impossible. The only thing we can do is bundling all our knowledge, gained from similar design experiences in the past. This should help us to suggest models that approximate reality as closely as possible. It is impossible to account for behavior that nobody is expecting at the time when a model is constructed. However, it would be a waste if system design fails because all prior knowledge was not exploited in constructing proper models. This brings us to the concept of a good model. Definition (Good model): A good model is a model that incorporates all relevant information and experience that we have on the system/circuit being modeled. It is clear that constructing good models requires retrieving information from previous (design) experience. Therefore, knowledge and experience should not be gathered and stored in an ad hoc manner. In order to avoid looking for a needle in a haystack of experience, knowledge should be structured and compacted. As outlined in chapter 1, this promotes a hierarchical classification of systems according to their characteristics and properties. One way to ensure the "goodness" of -especially system-level- models is to show that, at least in theory, they can be derived from existing circuit-level implementa- tions by means of a number of approximations. This links the model to reality while reducing model complexity. Moreover, it is well controlled which behavior is taken into account and which behavior is neglected. Transfer functions, for example, derive their status as a powerful concept to model and specify circuit behavior from the fact that they adequately describe the behavior of a circuit's small-signal approximation. This small-signal approximation linearizes circuit behavior in the neighborhood of a constant (DC) operating point. However, it neglects all nonlinearities. Hence, as il- lustrated in Fig. 2.2, transfer-functi