Using a method for zipping much like in the

Assume *f* *A*Text(*A*)*A*

See *t*,*s*)

Let *Z'**x*(*Z'*)*y**f*(*x*)*f*(*y*)*f*(*x*),*g*(*y*))*Z'*

A procedure for generating *Z'**Z**?*,*?*)

To fold f along Z, determine *Z'**r* *A**A**r*(*x*) = *r*(*y*)*x*(*Z'*)*y**r*(*x*) = *x**x**Z'*

The folding of *f* *A*Text(*A*)*r** o *f* *X*Text(*X*)*X* *A**r**A*

Observe that folding a closed map need not result in a submap (modulo equivalence).

Cloning a collection of objects is replicating them and replacing the references to originals within the clones by references to their clones. This is probably done for the purpose of subsequently modifying some of them. If A and B are originals with clones A' and B', and if B references A, then B' references A'.

Assume *f* *A*Text(*A*)*X* *A**X**A**r* *X*B*r* B*X**r'* *A*B*r**X**X**f**A**r'**(*f*(*r*(*b*)))*b* *B*

Splitting a closed map is cloning some objects along with all objects that refer to them, causing the closed map to branch into two equivalent closed maps, probably for the purpose of subsequently modifying a branch into a variant.

Not only is the original closed map a submap of the split, but deleting the cloned objects (and leaving the clones) would leave a closed map equivalent to the original.
**
IF YOU CAN SEE THIS go to http://www.cs.cornell.edu/Info/People/sfa/Nuprl/Shared/Xindentation_hack_doc.html
**