anchor.diff:    accept)
   
   
  +(defun pda-edge-extended (q-0 z g-0 q-1 g-1-list)
  +  "Make a PDA edge."
  +  (list (list q-0 z g-0)
  +        (cons q-1 g-1-list)))
  +
  +(defun pda-edge (q-0 z g-0 q-1 &rest g-1)
  +  "Make a PDA edge."
  +  (pda-edge-extended q-0 z g-0 q-1 g-1))
  +
   (defun pda-map-transtions (result-type function pda)
     "Apply FUNCTION to all transitions of PDA.
   FUNCTION: (lambda ( (list q-0 z g-0) (list q-1 g-1))"
  
positive.code:                   ;; transitions
                    (pda-map-transtions nil
                                        (lambda (x y)
                                          (destructuring-bind ((q-0 z g-0) (q-1 g-1)) (list x y)
                                            (format s "~&  ~A -> ~A [fontsize=~D,label=\"~A,~A&rarr;~A\"];~%"
                                                    (funcall state-numbers q-0)
                                                    (funcall state-numbers q-1)
                                                    font-size
                                                    (dot-gsymbol z) (dot-gsymbol g-0) (dot-gsymbol g-1))))
                                        pda)
                    (format s "~&}~%")))))
  
negative.code:                           (finite-set-map 'list (lambda (state)
                                                    (list (funcall state-numbers state) state font-size))
                                            (pda-states pda)))
                    ;; start state
                    (when (pda-start pda)
                      (format s "~&  start[shape=none,fontsize=~D];" font-size)
  