Extending the C–K design theory: A theoretical background for personal design assistants

The C–K theory is a recent theory of reasoning in design. Despite many practical applications, the theory has not yet been operationalized in the form of a computational design tool. In this paper, we argue that, in order to build such tools, a third space—an environment space E—must be introduced to the theory. Therefore, we extend the C–K design theory, using ideas and principles from situated cognition. As we discuss, the new version provides a theoretical background for building personal design assistants—creative and adaptive design tools. Best Young Design Researcher paper at the Design 2004 Society Conference in Dubrovnik, as judged by a panel in which Professors Marjanović, Birkhofer and Andreasen were included.


Introduction
In this paper, we extend the initial framework of the C-K design theory. The original theory is based on the distinction between two expandable spaces: the space C of concepts and the space K of knowledge. The process of design is defined as the co-evolution of C and K through four types of interdependent operators: C → K, K → C, K → K and C → C (Hatchuel andWeil 1999, 2002). It is claimed that the theory is a generalization of all usual design theories, especially of those whose underlying paradigm is Simon's problem-solving (Hatchuel and Weil 2002). It gives a consistent and formal account of creativity and learning during design. This allows the operationalization of the concept of 'expandable rationality', which is claimed to be better adapted to design then Simon's bounded rationality (Hatchuel 2002). Yet, despite many practical applications in organizing innovative design processes and recording design rationale, no computational tools that has been built based on the C-K design theory has been reported. In fact, an investigation on how such tools can be built showed that the theory must be extended to take into account the environment of designers and their situated nature. The aim of the present study is to introduce this extended version and to point out some theoretical implications for design tools.
To achieve the aforementioned objective, we use the idea of situatedness. Situatedness is a specific standpoint in cognitive sciences (Suchman 1987, Clancey 1997, Anderson 2003. It holds that the action and the adaptation of an agent cannot be thought independently of the environments within which the agent has been placed. The relevance of the situatedness in the context of designing has also been recognized (Schön and Wiggins 1992, Gero 1998, Suwa et al. 1999. Designers use external representations of designs as a means to conceptualize during the design process: it is by the reinterpretations of these external representations that the process is oriented (Schön and Wiggins 1992, Gero 1998, Suwa et al. 1999. Based on the essential notions of the situatedness approach, we formulate a new version of the C-K design theory by including an environment space E; the C/K/E theory. Extending the C-K theory by introducing an environment space allows its operationalization with personal design assistants -creative and adaptive design tools compatible with C\K\E and situated cognition theories.
The plan of the paper is as follows. In section 2, we present the main notions of the C-K design theory. In section 3, we argue that a third space, the environment space E, must be introduced into the theory in order to build computational tools based on its principles. In section 4, we present the idea of situatedness, its main notions and its relevance to design. In section 5, we modify the original C-K theory by including the space E and we present the extended version. In section 6, we discuss some theoretical implications for creative and adaptive design aiding tools. In the final section, we summarize.

The C-K design theory
The C-K design theory is a theory of reasoning in design (Hatchuel and Weil 1999, 2002, 2003, Hatchuel 2002, Hatchuel et al. 2004). Its underlying concepts and formalism give a consistent account of how concepts are formed, analysed and further developed or discarded within a design process. The theory is based on the fundamental distinction between the concept space C and the knowledge space K (figure 1). Concepts are elaborated by using knowledge through four types of operators, C → K, K → C, K → K and C → C. Figure 1. The concept space C and the knowledge space K (after Hatchuel and Weil 1999).
Extending the C-K design theory 401

The concept space C and the knowledge space K
A knowledge item is a set of propositions whose logical value (true, false, etc.) is known by a designer with respect to the space K. The knowledge space K consists of knowledge items (Hatchuel and Weil 2002). The concept space consists of concepts. These are innovative propositions from which design processes may be initiated (Hatchuel and Weil 2002). A concept has no logical value associated with it; in other words, a concept is an 'unknown'entity whose logical value cannot be readily determined with respect to the knowledge available to the designer (Hatchuel and Weil 2002). Let us consider the concept 'mobile dwelling'. Indeed, this is a concept: despite our knowledge about what is a dwelling or how something can be mobile, it is hard to describe what is a 'mobile dwelling' without first reflecting upon how the conjunction of 'mobile' and 'dwelling' might be possible. Note that the concept space cannot be defined independently of a knowledge space since its definition depends from the K space that is used. This property is referred to as the K-relativity of C.
With each concept can be associated a set of properties defining that concept (Hatchuel et al. 2004). Such a set violates the choice axiom of the standard set theory. Accepting this axiom would be acknowledging the existence of concepts among which it is possible to choose a concept that is yet to be constructed (Hatchuel and Weil 2002)! Consequently, concepts cannot be explored or searched; they can be partitioned or included (Hatchuel andWeil 2003, Hatchuel et al. 2004). In other words, we can add or delete properties to or from the associated sets.
In fact, concepts, with their absence of logical status, are partially defined entities. When considering concepts such as 'mobile dwelling', 'flying ship' or 'phone for teenagers', the imprecision that weighs on those concepts creates a semantic richness. Even if we are able to specify some of the properties of a 'flying ship', we would not be able to state all of its properties; thus, it is possible to define it in many ways.

The beginning and the end of a design process: semantic disjunction and conjunction
How is it that a concept is first formulated? The theory posits that the operation that allows the formulation of a concept is a semantic disjunction. An operation from the space K towards the space C is a semantic disjunction if all the terms of the proposition thus created belongs to K (i.e. are known in K) but their conjunction do not have a logical status in K (otherwise, the proposition would be a knowledge item and not a concept) (Hatchuel and Weil 2002). Hence, the operation leading to the formulation of 'mobile dwelling' is a semantic disjunction. Although the terms 'mobile'and 'dwelling'are known, their conjunction has no meaning before the end of a design process. The symmetric operation of a semantic disjunction is a semantic conjunction. This is an operation from the concept space C towards the knowledge space K and it marks the end of a design process (Hatchuel and Weil 2002). The moment where the designer considers that he knows enough about the concept: 'a mobile dwelling has the properties p 1 , p 2 , . . .'. At that point, the concept is no longer a concept; it has become a knowledge item. A single semantic disjunction can lead to several semantic conjunctions (figure 2). Hence, starting with the 'mobile dwelling'concept, we can finish up with a caravan, a tent or even a ship (Kazakçı 2004)!

Expansive partitions versus restrictive partitions
In traditional theories of reasoning such as problem-solving or search, methods like branch and bound are used to search within a state space a best or, failing that, a satisfying solution.  It is assumed that the boundaries of the state space are known and fixed; it is not possible to change the definition of the set of solutions during the process. This is a severely restrictive hypothesis for modelling the act of designing where the principal aim is to construct new sets of solutions (Hatchuel andWeil 1999, 2002). The implication of such a hypothesis is that in those types of reasoning there is no place for creativity and unexpected discoveries: the design has to be chosen from a set of known solutions (Hatchuel and Weil 2002)! This kind of reasoning is better adapted to the problems such as the selection of a 'movie' from the set of 'movies presently projected in town' (Hatchuel and Weil 2002). The set of solutions can be progressively partitioned by placing restrictions upon it, according to a predefined set of criteria. (e.g. the movies in theatres close to Place Opéra, the comedies within those movies, etc.). By contrast, in design we must take into account the possibility of constructing new sets of solutions to conduct the process towards new directions. In the C-K design theory, this is taken into account by the notion of expansive partitions (in contrast to restrictive partitions). Given a property that is added into the definition of a concept, if the added property is not known in K as a property of one of the elements in the definition, the partition is said to be expansive (otherwise, the partition is a restrictive partition). It is the expansion of the concept space (by expansive partitions) that makes creativity possible by allowing the introduction of new ideas into a concept under consideration (Hatchuel and Weil 2002). For instance, when organizing a 'nice surprise party' we can partition this concept by various properties such as 'disguised' or 'that takes place in space'; assuming that we have never organized a party in space and we have already participated to a disguised party, the former would be an expansive partition and the latter a restrictive one. Note that it is impossible to construct an exhaustive list of 'nice surprise party'; the associated set is uncountable, by contrast to the list 'movies presently projected in town' (Hatchuel 2002).

K-validation
Once new concepts emerge this way, they will have to be analysed and evaluated through a sequence of operations. In methods like branch and bound, the criteria used to evaluate the quality of a solution is fixed and predetermined. Reconsidering the example of movie selection, those could be 'personal taste', 'proximity to a given place', 'the kind of the movie', and so on. In C-K theory, this stability disappears (Hatchuel and Weil 2002). The notion of evaluation with a fixed set of criteria is replaced by a notion of the construction and application of an appropriate evaluation process for each type of concept under consideration. The evaluation process for a tent design is most likely to be different from the evaluation process for a yacht design! In all the cases, such a process requires the use of knowledge and is called K-validation within the framework of the C-K theory.

Reasoning in design: interactions between and within the two spaces
We have seen through which operations a design process begins and ends. Yet, how is a design process conducted? How are concepts elaborated? The C-K theory suggests four types of operators for modelling the elaboration of concepts. Those operators can be used to model different kind of reasoning processes such as the expansion of concepts, their K-validation, learning (expansion of K!).
C → K is an operation from the concept space C to the knowledge space K. Through this type of operator, the concepts attempts to activate relevant knowledge items of K. A concept will generally activate two types of knowledge; about how to further elaborate it (by partitions) or about how to analyse and evaluate it (by K-validation). For instance, 'mobile dwelling' can activate K to obtain answers to questions like 'can a mobile dwelling exist?' or 'how could a mobile dwelling exist?' Once relevant knowledge is thus activated, the concept can be reconsidered by an operation K → C. This is an operation from K to C that either partitions or departitions a concept. A concept is partitioned either by an expansion or by a restriction. The departitioning occurs when the concept cannot activate any knowledge in K or it is judged unsatisfactory (not feasible or not preferable; Kazakçı 2004). In that case, a more abstract concept than the actual one is considered. It may happen that no useful knowledge can be activated in K. What happen then? If no concepts worth elaborating can be found (by departitioning), then the knowledge space should be expanded by an operation K → K. This operation acts within K; it may correspond to a deductive or associative process between knowledge elements to produce new knowledge. For example, the use of a known evaluation method for processing preferences about a set of concepts is an operation K → K (Kazakçı 2004). Alternatively, this requires the consultation of an external source (experts, databases, etc.). Finally, concepts that are being explored can be related between themselves with operations of the type C → C (a tent is a mobile dwelling). This kind of operations marks the 'trace' of a sequence of operations.
The C-K design theory is a formal theory of reasoning in design. Despite its theoretical nature, it had many practical applications (Hatchuel and Weil 2002). However, the theory has not yet been operationalized in the form of a design aiding software. In the next section, we argue that a third space, the environment E, must be introduced to the theory for this and other reasons.

Creative and adaptive design tools based on the C-K theory: the need for a third space
How can creative and adaptive design aiding tools be built? We believe that any such tool must verify the principles of the C-K theory. A tool must be able to perform expansive partitions in order to be creative. It must be able to expand its knowledge space for being adaptive. However, we claim that to build such a tool based on the C-K theory, we must first integrate a third space with the theory: the environment space E. There are at least three reasons for introducing a third space.

404
A. Kazakçı and A. Tsoukias First, the external representations and their reinterpretations are the main engines through which the design process progresses (Schön and Wiggins 1992, Gero 1998, Suwa et al. 1999. Designers make changes to the external design representations in order to elaborate them. By observing the results of these changes they discover aspects that were not intentionally introduced. The reinterpretation of those aspects allows designers to reorient the design process towards new directions (Gero 1998, Suwa et al. 1999). The C-K design theory must take into account the situated nature of the designer.
Second, the design representation and the designers are external entities to the tool; they are situated in its environment. It should be apparent from this statement that we are not in a design automation perspective. Rather, we adhere to a design aiding perspective within a constructivist spirit (Kazakçı 2004). In this framework, a design tool is a medium the designer uses to enrich his/her dialogue with the design situation and the design representation he/she is constructing. Ideally, a tool used in such a perspective must interact with the designer during the process. It cannot be isolated from the environment; it has to be situated.
Third, it is impossible to neglect the environment without making impossible the acquisition of any knowledge: where do come from the first knowledge items? If we assume they had been obtained as a result of a first design process (with a semantic conjunction), we also have to admit that a semantic disjunction had been operated to initiate the process. But, the terms of the first concept thus formulated must be 'known' in the knowledge space (see section 2.2). However, nothing is known at that time, since the knowledge space K does not exist yet! How to progress then? We see that there is no way to advance but to introduce a third space that will allow the acquisition of the first knowledge items.
In fact, the C-K theory does not deny explicitly the existence of the environment; on the contrary, it holds that an operation K → K can necessitate the interaction with the environment (the consultation of a database, an expert, etc.) (Hatchuel and Weil 2002). Yet, it does not represent it explicitly. However, to account for the evolution of concepts, creativity, and learning, we must admit and represent the environment. In the contrary case, that would come down to saying that the theory is valid only for designers designing in their minds without ever externalizing their designs! Such a conception of design is possible, but has little value for creating design-aiding tools helpful to a designer, an entity external to the tool, and therefore in its environment.

Situatedness, constructive memory and grounding
Situatedness refers to the fact that cognition emerges from the interaction of a cognitive agent with its environment (Clancey 1997). It emphasizes the strong coupling existing between the perception, conception and action processes. A situated agent acts upon the environment and then observes the results of its actions. Its conception of the situation is influenced by the way it perceives those results and its environment. This conception in turn influences its subsequent actions on that environment. As a result of these mutual dependencies, what a situated agent perceives, how it conceives of its activity and its environment and what it physically does develop together (Clancey 1997).
A situated agent's knowledge consists of sensory experiences, percepts and concepts (note that in situated cognition, concepts are considered as knowledge, by contrast to C-K theory; we shall return to this point later on). Sensory experiences are formed by the sensation process that senses the agent's external world and the agent's internal state. Percepts are knowledge elements that allow an agent to represent and recognize the world. Percepts are produced by the perception process that constructs them based on the sensory experiences and with respect to concepts. Concepts are higher-order knowledge elements that are formed based on the percepts and other concepts. Concepts can be about objects, situations, states, actions, and so on. They are constructed by the conception process that interacts with the perception process.
In situated cognition, concepts are not static structures stored in memory ready for retrieval and use. Instead, a concept is a dynamic structure that is (re)constructed each time it is used (Clancey 1997). This constructive view on the memory emphasizes the fact that knowledge cannot be used independently from the specific demands of the environment and from what the agent already knows; concepts that are used to understand the world or to act upon it are (re)constructed in response to a specific situation as a result of the interaction of the agent with its environment. A related idea with that of the constructive memory is the grounding of concepts. Grounding is about the meaning of the concepts. It is the process of relating a concept to other knowledge elements and thus establishing a meaning for that concept. Grounding implies that the concepts of an agent are built based on its own knowledge and its interactions with the environment. Therefore, different agents that have been placed in different environments can associate different meanings to the same object of the world. Similarly, it is possible for the same agent to construct different meanings for the same object in different times.

Situatedness and design
As we have already mentioned, the notion of situatedness is also relevant in the context of design (Schön and Wiggins 1992, Gero 1998, Suwa et al. 1999). Schön and Wiggins (1992), by observing students designing, conclude that designing can be seen as an interaction of making and seeing. According to their results, designers conduct design processes by acting upon design representations, observe and interpret the result, and then decide what to do next. Schön and Wiggins (1992) use the term reflection-in-action to refer to this aspect of the design. The design situation is understood through the attempt to change it, and is changed through the attempt to understand it (Schön 1987). Suwa et al. (1999) investigated empirically the situated nature of designers through protocol analysis. They investigated the relation between the introduction of a new goal or requirement into the design process and the unexpected discoveries designers make. Their results indicate a strong bi-directional causality between them; it is the unexpected and unintentionally generated aspects that lead to the introduction of new goals or requirements, which, in turn, causes new unexpected consequences to be perceived (Suwa et al. 1999). Gero and Kannengiesser (2002) describe situatedness as the interaction of three different worlds (figure 3). The external world corresponds to objects and representations external to the agent. The interpreted world consists of the knowledge of the agent in terms of sensory experiences, percepts and concepts. Percepts and concepts are grounded on the interaction of the agent with the external world. In the expected world, expectations as to which results the imagined actions will produce are formed (Gero and Kannengiesser 2002).
These three worlds are dynamically coupled with each other through three types of process. The interpretation process transforms the incoming information from the external world into the interpretations of sensory experiences, percepts and concepts by grounding them on previous knowledge (Gero and Kannengiesser 2002). This is accomplished by the interaction of sensation, perception and conception processes (Gero and Fujii 2000). The focusing process distinguishes some aspects of the interpreted world. These aspects are used to formulate plans of actions that will bring about in the external world the desired state (Gero and Kannengiesser 406 A. Kazakçı and A. Tsoukias  2002). Any change in one of these three worlds has the potential to change all three of them (Gero and Kannengiesser 2002).

Modifying the C-K theory to introduce the environment space
How, then, to integrate a third space corresponding to the environment to the framework of the C-K design theory without violating its integrity and internal coherence? Are there notions to be extended? Which novel operators should be introduced? We will use notions from situated cognition to deal with these questions and to extend the C-K design theory.

Concept, knowledge and environment spaces
What does the situated framework in the previous paragraph imply for the C-K theory? Some associations are rather straightforward. The environment space E we want to introduce theory corresponds to the external world of the situated agent. The knowledge space K corresponds to the internal world of the agent that consists of the expected and the interpreted worlds. Where is the concept space C? In fact, it appears momentarily within the interpreted world when a semantic disjunction is operated and a design process begins! Under such a perspective, the concept space is temporary: it is created when a design process begins and a new concept is being formulated, and it disappears when the concept is elaborated to the point where it is considered as knowledge (figure 4).

Concepts versus knowledge
Should concepts be considered as knowledge (as in the situated cognition) or not (as in the C-K theory)? Our answer to that question is: yes and no! Indeed, we consider concepts as grounded knowledge elements that have some meaning (which is not reducible to a truth-value) for an agent. The concepts an agent has are in its K space. When a design process begins (a semantic disjunction is operated), a meaning must be constructed for a (newly formulated or existing) concept. At that point, that concept is no longer considered as knowledge in the sense that it has no precise and stable meaning. During the design process, percepts and concepts learned in the past (which are presently knowledge items of the K space!) interact to analyse, evaluate and expand the concepts of the concept space C (that are yet to be 'known'!)

Conception at the core of designing
Which process is responsible for the creation and the elaboration of the concepts in the concept space? The conception process that creates and manages all the concepts of the agent! The concept space is created within this process when a semantic disjunction is operated to initiate a design process.
Conception interacts with the sensation, perception and action processes. The action process externalizes the concept that is being elaborated in the concept space to produce a design description. The sensation process senses this description and other aspects of the world. The perception process builds representations about the situation based on the concepts the agent has of the world and what is sensed. Those representations as well as other knowledge elements are used by the conception process to decide how to continue the elaboration of the concepts of the C space. As can be seen, a design process results from the interactions of the C, K and E spaces. In this perspective, design is the co-evolution of C, K and E spaces! Since these three spaces are mutually dependent, any change in one of them may cause changes on all of them. This property will be referred to as the C\K\E coupling.

E-relativity of K and E-validation
Two consequences of the C\K\E coupling are E-relativity of K and E-validation. E-relativity is a similar principle to the K-relativity of the C-K theory. Just as the formation and the evolution of the concept space depends on a given knowledge space, a knowledge space cannot be thought independently from the environments within which it has been placed and with which it interacted. Hence, the development of the K space is E-relative. E-validation points out the fact that, once the environment is taken into account, the validation of a concept is no longer necessarily based on the knowledge of the agent. Assuming it had been externalized, a concept can be validated by the environment (e.g. another design agent). Such a validation is referred to as E-validation.

Axiom of choice within the C\K\E framework
Another point that needs to be clarified is about the reject of the axiom of choice. The axiom of choice states the following. Given any set of mutually exclusive non-empty sets, there exists at least one set that contains exactly one element in common with each of the non-empty sets. If we consider concepts to be sets of definitional properties and accept this hypothesis, this would mean that we can exhibit every property of a given concept. By rejecting this axiom for the concept space, Hatchuel andWeil (2002, 2003) put forward that concepts, such as 'surprise party', cannot have an objective definition given by an exhaustive list of properties; their meanings are flexible. How is it possible to capture this idea in our situated cognition framework? By accepting the idea of constructive memory and grounding of concepts! In fact, the reject of the choice axiom implies that concepts can have different interpretations by different agents in different situations. An agent can construct different meanings for a concept in different situations as a result of the interactions of the C, K and E spaces.
This is the very idea underlying the notions of constructive memory and grounding of concepts. When the memory is constructive, different meanings of a concept is not there to be selected; they are to be constructed by grounding them on the knowledge of the agent and its interaction with the environment. It is not possible to have a fixed and objective definition for a concept; it has flexible meaning! Therefore, the cognitive counterpart of the reject of the axiom of choice is to adopt the notions of constructive memory and grounding of concepts.

Operators of the C\K\E framework
How do the C, K and E spaces interact during a design process? Some new operators must be introduced in addition to the original operators of the C-K theory. Let us discuss the four possibilities in turn.
From a cognitive standpoint, both the E → K and K → E operators seem necessary. The former for modelling the reception of the information from the environment; that is, for modelling the sensation process. The latter is needed for modelling the cases where some knowledge is used in order to act upon the environment: any action, depending on the concept space or not, requires specific knowledge about how to take that action.
In a design context, an important class of actions are those that aim at externalizing a concept. This type of action depends mainly on the concept space. To emphasize this kind of actions, it is possible to use an operator C → E. Note that such an operator is composite and it corresponds to the sequence C → K → E (figure 5). Another composite operator can be used to represent the case where some representation that has been sensed from the environment (by an operation E → K) and contributes to the developing of a concept (by an operation K → C). We think that in most cases this operator would not be necessary since the information coming from the environment is always processed first by some knowledge-based processes (such as the perception) before interacting with the concept space. Nevertheless, it can be used for modelling situations in which something sensed from the environment does not make any sense to the agent (it does not activate any knowledge) and a design process begins out of a lack of comprehension: a meaning must be constructed for the representation sensed from the environment! This is a comprehension-type activity rather than a creation-type activity. Note that such situations may arise in cooperative design.
We have thus described our C\K\E framework. We shall next discuss its relevance for building design assistants.

C\K\E design theory: a background for personal design assistants
The literature about intelligent, adaptive and creative design tools is fast growing. However, a widely disseminated tool issued from that literature helping real designers to deal with real design situations does not yet exist. Possibly, one reason for that is the lack of a design theory for the approaches underlying these tools. On which principles should we build creative and adaptive design assistants? This question is yet to be answered. The C\K\E theory we presented is a first step we took in this direction. We believe that it has the potential for providing a theoretical founding and guidelines for such tools. Let us briefly discuss some of the theoretical requirements the C\K\E framework implies for design assistants.
• C-K-E distinction. The assistant must respect the distinction between the C, K and E spaces.
A situated agent necessarily distinguishes the E space from its internal world. What is more challenging is the distinction between the C and the K spaces: this distinction rises from the reject of the axiom of choice. As we have seen, from a cognitive point of view, this is equivalent to the notions of constructive memory and grounding of concepts. Consequently, in order to be compatible with C\K\E, a design assistant must respect these principles. • C-expansiveness. The assistant must be able to realize expansive partitions. Said in other terms, it must be able to expand its concept space with new and unusual properties by using its knowledge space. Then, the agent can suggest the concepts thus created to the designer for an E-validation, or ideally continue the elaboration until the concepts can be K-validated (by the assistant). • K-expansiveness. The assistant must be able to revise and expand its K space. In the most limited case, this corresponds to the learning of new concepts. In the general case, this may be extended to the learning and updating of other types of knowledge such as methods and processes for analysis, synthesis and evaluation of concepts. • E-responsiveness. The assistant must be sensitive to the changes in the environment. When the user changes his/her design description, it must be able to dynamically reinterpret the situation and act accordingly. In some cases, this action may be the suggestion of an expansive partition. However, these may also be restrictive partitions; for example, for reminding the designer of usual details in order to allow the designer to work quickly. • C\E\K coupling. For the agent, the spaces C, K and E should be mutually dependent such that any changes on one of them can result in changes on all of them. Consequently, the behaviour of the agent should emerge from the interactions of these spaces rather than being predictable and deterministic.
Computational models for design agents compatible with these requirements and the C\K\E framework can be exploited to build personal design assistants. A personal design assistant can be seen as a creative and adaptive design agent using a constructive memory and grounding of concepts. Such an assistant aims at actively supporting designing (Kazakçı 2004). A personal design assistant can be used as a design aiding tool within a constructivist paradigm: the assistant will cooperate with the designer by observing the external design representation on which he/she is working, making suggestions to him/her on how to elaborate this representation and adapting its (suggestion) behaviour according to the designer's reactions to those suggestions (Kazakçı 2004). Such an assistant would be personal in the sense that, since its adaptation depends on the reactions of its user; its behaviour is expected to converge towards the design style of the user. We believe that a personal design assistant based on the aforementioned principles would amplify the situational awareness of a designer enriching its interaction with the design situation, thus facilitating designing. However, it should be noted that building such tools is not an easy challenge: constructive memory and grounding are problematic issues even in computer sciences (Harnad 1990, Clancey 1997. Nevertheless, there is a need for a starting point for generating discussion and new ideas about creative and adaptive design tools, both on a theoretical level and on an implementation level, and we believe that our C\K\E framework provides one!

Conclusion
The C-K design theory has some important features to provide theoretical founding for creative and adaptive design assistants. With its distinction between the concept and knowledge spaces and its associated formalism, it gives a formal and tangible account of diverse reasoning processes occurring during design. Building on those, it explains two important notions; creativity (expansion of concepts) and learning (expansion of the knowledge space) occurring in a design process. These notions together with the formalism associated with the theory can enable formal analysis and design of creative and adaptive design tools.
However, as we have shown during the paper, in order to build such tools the original theory must be extended to include a third space; the environment space E. We used notions from situated cognition to propose an extension to the theory that we call the C\K\E design theory. As we have argued, the C\K\E framework provides a theoretical background personal design assistants -creative and adaptive design tools using constructive memory and grounding.