
NEWTON(EXP,VAR,X0,EPS):=
	BLOCK([XN,S,NUMER],
	NUMER:TRUE,
	S:DIFF(EXP,VAR),
	XN:X0,
  LOOP, IF ABS(SUBST(XN,VAR,EXP))<EPS THEN RETURN(XN),
	XN:XN-SUBST(XN,VAR,EXP)/SUBST(XN,VAR,S),
	GO(LOOP) )$
