mv lus1log lus1log~
/usr/local/matte/bergman/Newbergman/bergman <<%EOF >lus1log &  
(load pbseries hseries)
(OFF RAISE)(OFF USERMODE)(LAPIN "../src/macros.sl")(LAPIN "../src/hmacro.sl")
(SETQ mynum '((1 . 0) (-2 . 2))) (SETQ myddeg 1)
%(commHlbProlongNum '((1 . 0) (-2 . 2)) 1)
%(DE commHlbProlongNum (mynum myddeg)
 (PROG	(rt Dd Np Mn1 Mn2)
	(SETQ Dd myddeg)
	(SETQ rt (commHlbCopyNum mynum))
  Ml	(COND ((ZEROP Dd)
	       (commHlbPreenZeroes rt)
	       (RETURN rt)))
	(SETQ Dd (SUB1 Dd))
	(SETQ Np rt)
  Sl	(COND ((commHlbNum0!? (commHlbNumTail Np))
	       (commHlbNumTermAppend %commHlbProlongNum
		   Np
		   (commHlbCoeff!&Deg2Term (MINUS (commHlbNum2FirstCoeff Np))
					   (ADD1 (commHlbNum2FirstDeg Np))))
	       (GO Ml))
	      ((EQN (commHlbNum2SecondDeg Np) (ADD1 (commHlbNum2FirstDeg Np)))
	       (SETQ Mn1 (commHlbNum2FirstCoeff Np))
	       (SETQ Np (commHlbNumTail Np))
	       (GO Tl)))
	(commHlbNumTermInsert
	    Np
	    (commHlbCoeff!&Deg2Term (MINUS (commHlbNum2FirstCoeff Np))
				    (ADD1 (commHlbNum2FirstDeg Np))))
	(SETQ Np (CDDR Np))
	(GO Sl)
  Tl	(SETQ Mn2 (CAAR Np))
	(RPLACA (CAR Np) (DIFFERENCE Mn2 Mn1))
	(COND ((NOT (CDR Np))
	       (RPLACD Np (NCONS (CONS (MINUS Mn2) (ADD1 (CDAR Np)))))
	       (GO Ml))
	      ((NOT (EQN (CDADR Np) (ADD1 (CDAR Np))))
	       (RPLACD Np (CONS (CONS (MINUS Mn2) (ADD1 (CDAR Np))) (CDR Np)))
	       (SETQ Np (CDDR Np))
	       (GO Sl)))
	(SETQ Mn1 Mn2)
	(SETQ Np (CDR Np))
	(GO Tl) ))
%(commHlbProlongNum '((1 . 0) (-2 . 2)) 1)
(INTERPBACKTRACE)
(QUIT)
%EOF
