Theo has three learning mechanisms:
Though they give Theo a range of ways to learn from both its knowledge-base and experience, they also interfere with each other. For example, caching changes various computational data so that SE's estimates of the costs of applying various methods can become out of date. Macro-methods can cause Theo unnecessary amount of work by causing it to overlook available slot values.