Major Section: MISCELLANEOUS
Many low-level ACL2 functions take and return ``tag trees'' or ``ttrees'' (pronounced ``tee-trees'') which contain various useful bits of information such as the lemmas used, the linearize assumptions made, etc.
Abstractly a tag-tree represents a list of sets, each member set having a
name given by one of the ``tags'' (which are symbols) of the ttree. The
elements of the set named
tag are all of the objects tagged
the tree. You are invited to browse the source code. Definitions of
primitives are labeled with the comment ``; Note: Tag-tree primitive''.
The rewriter, for example, takes a term and a ttree (among other things), and
returns a new term, term', and new ttree, ttree'. Term' is equivalent to
term (under the current assumptions) and the ttree' is an extension of ttree.
If we focus just on the set associated with the tag
LEMMA in the ttrees,
then the set for ttree' is the extension of that for ttree obtained by
unioning into it all the runes used by the rewrite. The set associated
LEMMA can be obtained by
(tagged-objects 'LEMMA ttree).