We use the Metropolis Monte Carlo (MC) algorithm to sample over chemical perception trees by making changes to a set atom or fragment types. We call this set of atom or fragment types being changed the "working types" and to be more specific we would say "working atom types" or "working fragment types". A single iteration of the algorithm comprises 1. choosing an atom or fragment type at random from the working set 2. proposing a move in which the type is either deleted (if it is not in the base set) or used as the starting point to create a new, more specific type 3. computing the change in a scoring function due to the proposed move 4. using the Metropolis criterion to either accept or reject the proposed move, where the scoring function plays the role of the energy.