DynBindModelExamples: Difference between revisions
Jump to navigation
Jump to search
| Line 73: | Line 73: | ||
==The naming function== | ==The naming function== | ||
We proceed by calculating the naming function. According to its definition we have to do that incrementaly. Meaning that we first calculate <math>\beta_{S_1}</math> then <math>\beta_{S_2}</math> and finally <math>\beta_{S_3}</math>. | We proceed by calculating the naming function. According to its definition we have to do that incrementaly. Meaning that we first calculate <math>\beta_{S_1}</math> then <math>\beta_{S_2}</math> and finally <math>\beta_{S_3}</math>. | ||
===Calculating <math>\beta_{S_1}</math>=== | |||
Since <math>\beta_{S_1}</math> contains only one class it is sufficient to define <math>\beta_{S_1}\left( C_1 \mapsto C_1 \right)</math>. According to the definition: | Since <math>\beta_{S_1}</math> contains only one class it is sufficient to define <math>\beta_{S_1}\left( C_1 \mapsto C_1 \right)</math>. According to the definition: | ||
Revision as of 20:56, 6 October 2006
This page shows
Example 1
The system
In this example we are studying a symple system with three classes that contains both renaming and selects:
class C1 feature f1 do ... end g1 do ... end end |
class C2 inherit B rename f1 as f2, g1 as g2 redefine f2, g2 end feature f2 do ... end g2 do ... end end |
class C3 inherit C2 select f1 end C1 redefine f1, g1 select g1 end feature f1 do ... end g1 do ... end end |
This system is defined by:
The naming function
We proceed by calculating the naming function. According to its definition we have to do that incrementaly. Meaning that we first calculate then and finally .
Calculating
Since contains only one class it is sufficient to define . According to the definition:
We can forget about the right part of the union since has no base classes. So we need to calculate: . To do so we give a little reminder on the identity and domain operators:
This done we calculate:
So we get: