Major Section: HISTORY
Examples: :pl2 (+ x y) nil ; prints all rules that rewrite (+ x y) :pl2 (+ x y) foo ; prints all rules named foo that rewrite (+ x y) :pl2 (+ x y) (:rewrite foo) ; if the rule with rune (:rewrite foo) can ; rewrite (+ x y), then print it
Pl2 takes two arguments. The first is a term. The second is either
nil or one of the following ``rule-ids'': a symbol, a rune, or a
natural number. The result is to print exactly what is printed by applying
pl to the first argument -- see pl -- except that if the
second argument is not
nil then it is used to filter the rewrite rules
printed, as follows.
If the rule-id is a symbol, then only rewrite rules whose name is that symbol will be printed.
If the rule-id is a rune, then at most rewrite rule will be printed: the rule named by that rune (if the rule would be printed by
If the rule-id is a natural number, k, then the kth rewrite rule that would be printed by
plis the one printed.
Note that as of this writing, meta lemmas are not filtered using the second