1. Initial State: As shown in Figure 4, the virtual graph VG has three nodes n1, n2 and n3. Node n1 is for site S1 with adlets adlet1, adlet2 and adlet3. Node n2 is for site S2 with adlets adlet4, adlet5, adlet6, adlet7 and adlet8. Node n3 is for site S3 with adlets adlet9, adlet10, adlet11, adlet12 and adlet13. There are arcs a12 and a23, indicating S1 and S2 are conceptually related, and S2 and S3 are conceptually related.
2. Birth of an adlet: Suppose document3 has just been added to site S1, and the corresponding adlet3 is added to the virtual graph. (In implementation, this means an index cell ic3 is added to site S1.)
3. Is aggressive, will travel: If adlet3 is aggressive, it will travel to conceptually related nodes. Since there is an arc a12, adlet3 can travel to site S2. (In implementation, this means index cell ic3 will send a message to IC_Manager of site S2 to clone itself! But the original ic3 will stay at site S1. In other words, the original adlet3 will never leave its home site. It is its clone that will materialize in other sites!)
4. Mating of adlets: Adlet3, once at site S2, will try to mate with adlets there. This is done by finding whether its target matches another adlet's profile, and its non-target does not match another adlet's profile. Let us say adlets adlet5 and adlet7 are thus identified. (In implementation, the cloned ic3 will broadcast messages to all ic's at site S2 and ic5 and adlet7 will respond.)
5. Kiss of the Spider Woman: Adlet3 and adlet5 mate. The adlet composition operator is the BW operator, symbolized by the Spider. Adlet3 eats adlet5. This means document3 should absorb some of the information contained in document5. What happens is that updated adlet3 will travel back to site S1 to update original adlet3. (In implementation, the message sent by ic5 to ic3, will cause ic3 to send a message back to the original ic3 at site S1, causing it to be updated.)
6. Updating of Virtual Graph: One assumption is that every site has the identical copy of the virtual graph. This may or may not be true. It will be rather inefficient to maintain such identical virtual graphs. After all, VGs shoud reflect local knowledge. So we need to figure out how such VGs are to be updated. Notice the arcs set may also need to be updated. (In implementation, updating of virtual graphs may be an action performed by a special ic, or even the IC_Manager itself.)
7. Be my Valentine: Adlet3 and adlet7 mate. The adlet composition operator is the Equi-Join operator, symbolized by the Heart. Adlet3 and adlet7 are merged. Again, updated adlet3 will travel back to site S1 to update original adlet3, and the virtual graphs at various sites need to be updated. It is possible, that document3 and document7 now form a group with special links between them.
8. Retrieval of documents: Later, when a user wants to retrieve document3, the related documents such as document7 will be retrieved. (The retrieval_ic is activated, which activates ic3 and in turn ic7, to retrieve the actual documents document3 and document7.)