\input style
\chapter{7 peresmotrennyj algoritm evklida}
rISKUYA NASKUCHITX MOIM CHITATELYAM, YA POSVYASHCHU eSHCHE ODNU GLAVU ALGORITMU 
eVKLIDA. pOLAGAYU, CHTO K |TOMU VREMENI NEKOTORYE IZ CHITATELEJ UZHE 
ZAKODIRUYUT EGO V VIDE
\prg
x, y:=X, Y;
\.{do} x\not=y \to \.{if} x>y \to x:=x-y
 \wbox y>x \to y:=y-x
\.{od};
\var{PECHATATX}(x)
\grp
GDE PREDOHRANITELX KONSTRUKCII POVTORENIYA GARANTIRUET, CHTO 
KONSTRUKCIYA VYBORA NE PRIVEDET K OTKAZU. dRUGIE CHITATELI OBNARUZHAT, 
CHTO |TOT ALGORITM MOZHNO ZAKODIROVATX BOLEE PROSTO SLEDUYUSHCHIM 
OBRAZOM:
\prg
x,y:=X, Y;
\.{do} x>y \to x:=x-y
 \wbox y>x \to y:=y-x
\.{od};
\var{PECHATATX}(x)
\grp

pOPROBUEM TEPERX ZABYTX IGRU NA LISTE KARTONA I  POPYTAEMSYA 
IZOBRESTI ZANOVO ALGORITM eVKLIDA DLYA OTYSKANIYA NAIBOLXSHEGO OBSHCHEGO 
DELITELYA DVUH POLOZHITELXNYH CHISEL $X$ I $Y$. kOGDA MY STALKIVAEMSYA 
S TAKOGO RODA PROBLEMOJ, V  PRINCIPE VSEGDA VOZMOZHNY DVA PODHODA.

pERVYJ SOSTOIT V TOM, CHTOBY PYTATXSYA SLEDOVATX OPREDELENIYU 
TREBUEMOGO OTVETA NASTOLXKO BLIZKO, NASKOLXKO |TO VOZMOZHNO. 
pO-VIDIMOMU, MY MOGLI BY SFORMIROVATX TABLICU DELITELEJ CHISLA $X$; 
|TA TABLICA SODERZHALA BY TOLXKO KONECHNOE CHISLO |LEMENTOV, SREDI 
KOTORYH IMELISX BY 1 V KACHESTVE NAIMENXSHEGO I $X$ V KACHESTVE 
NAIBOLXSHEGO |LEMENTA. (eSLI $X=1$, TO NAIMENXSHIJ I NAIBOLXSHIJ 
|LEMENTY SOVPADUT. zATEM MY MOGLI BY SFORMIROVATX TAKZHE ANALOGICHNUYU 
TABLICU DELITELEJ $Y$. iZ |TIH DVUH TABLIC MY MOGLI BY SFORMIROVATX 
TABLICU CHISEL, PRISUTSTVUYUSHCHIH V NIH OBEIH. oNA PREDSTAVLYAET SOBOJ 
TABLICU \emph{OBSHCHIH} DELITELEJ CHISEL $X$ I $Y$ I OBYAZATELXNO 
YAVLYAETSYA NEPUSTOJ, TAK KAK SODERZHIT |LEMENT 1. sLEDOVATELXNO, IZ 
|TOJ TRETXEJ TABLICY MY MOZHEM VYBRATX (POSKOLXKU ONA TOZHE 
KONECHNAYA!) MAKSIMALXNYJ |LEMENT, I ON BYL BY  \emph{NAIBOLXSHIM} 
OBSHCHIM DELITELEM.

iNOGDA BLIZKOE SLEDOVANIE OPREDELENIYU, PODOBNOE OBRISOVANNOMU VYSHE, 
YAVLYAETSYA LUCHSHIM IZ TOGO, CHTO MY MOZHEM SDELATX. sUSHCHESTVUET, ODNAKO, 
I DRUGOJ PODHOD, KOTORYJ STOIT ISPROBOVATX, ESLI MY ZNAEM (ILI 
MOZHEM UZNATX) SVOJSTVA FUNKCII, PODLEZHASHCHEJ VYCHISLENIYU. mOZHET 
OKAZATXSYA, CHTO MY ZNAEM TAK MNOGO SVOJSTV, CHTO ONI V SOVOKUPNOSTI 
OPREDELYAYUT |TU FUNKCIYU, TOGDA MY MOZHEM POPYTATXSYA POSTROITX OTVET, 
ISPOLXZUYA |TI SVOJSTVA.

v SLUCHAe NAIBOLXSHEGO OBSHCHEGO DELITELYA MY ZAMECHAEM, NAPRIMER, CHTO, 
POSKOLXKU DELITELI CHISLA $-x$ TE ZHE SAMYE, CHTO I DLYA  SAMOGO CHISLA 
$x$, $\nod(x, y)$ OPREDELEN TAKZHE DLYA OTRICATELXNYH ARGUMENTOV I NE 
MENYAETSYA, ESLI MY IZMENYAEM ZNAK ARGUMENTOV. oN OPREDELEN I TOGDA, 
KOGDA ODIN IZ ARGUMENTOV RAVEN NULYU; TAKOJ ARGUMENT OBLADAET 
BESKONECHNOJ TABLICEJ DELITELEJ (I PO|TOMU NAM NE SLEDUET PYTATXSYA 
STROITX |TU TABLICU!), NO POSKOLXKU VTOROJ ARGUMENT $(\not=0)$ 
OBLADAET KONECHNOJ TABLICEJ DELITELEJ, TABLICA OBSHCHIH DELITELEJ 
YAVLYAETSYA VSE ZHE NEPUSTOJ I KONECHNOJ. iTAK, MY PRIHODIM K 
ZAKLYUCHENIYU, CHTO $\nod(x,y)$ OPREDELEN DLYA VSYAKOJ PARY $(x,y)$, 
TAKOJ, CHTO $(x, y)\not=(0, 0)$. dALEE, V SILU SIMMETRII PONYATIYA 
"OBSHCHIJ" NAIBOLXSHIJ OBSHCHIJ DELITELX YAVLYAETSYA SIMMETRICHNOJ FUNKCIEJ 
SVOIH DVUH ARGUMENTOV. eSHCHE ODNO NEBOLXSHOE UMSTVENNOE USILIE 
POZVOLIT NAM UBEDITXSYA V TOM, CHTO NAIBOLXSHIJ OBSHCHIJ DELITELX DVUH 
ARGUMENTOV NE IZMENYAETSYA, ESLI MY ZAMENYAEM ODIN IZ |TIH ARGUMENTOV 
IH SUMMOJ ILI RAZNOSTXYU. oB�EDINIV VSE |TI REZULXTATY, MY MOZHEM 
ZAPISATX: DLYA $(x,y)\not=(0,0)$
$$ 
\leqalignno{ 
\nod(x, y) &=  nod(y, x). & (A) \cr 
\nod(x, y)&=  nod(-x, y). & (B) \cr 
\nod(x, y) &=nod(x+y, y) = nod(x-y, y)\hbox{  I T. D.} & (V) \cr 
\nod(x, y) &=abs(x),\hbox{ ESLI $x=y$}. & (G) \cr 
} 
$$

pREDPOLOZHIM DLYA PROSTOTY RASSUZHDENIJ, CHTO |TIMI CHETYRXMYA SVOJSTVAMI 
ISCHERPYVAYUTSYA NASHI POZNANIYA O FUNKCII $\nod$. dOSTATOCHNO LI IH? vY 
VIDITE, CHTO PERVYE TRI OTNOSHENIYA VYRAZHAYUT NAIBOLXSHIJ OBSHCHIJ DELITELX 
CHISEL $x$ I $y$ CHEREZ  $\nod$ DLYA DRUGOJ PARY, A POSLEDNEE SVOJSTVO 
VYRAZHAET EGO NEPOSREDSTVENNO CHEREZ $x$. i V |TOM UZHE 
PROSMATRIVAYUTSYA KONTURY ALGORITMA, KOTORYJ DLYA NACHALA OBESPECHIVAET 
ISTINNOSTX
$$ 
P= (\nod(X,Y)=\nod(x,y)) 
$$
(|TO LEGKO DOSTIGAETSYA PUTEM PRISVAIVANIYA "$x, y:= X, Y$"), POSLE 
CHEGO MY "UTRAMBOVYVAEM" PARU ZNACHENIJ $(x,y)$ TAKIM OBRAZOM, CHTOBY 
V SOOTVETSTVII S (A), (B) ILI (V) OTNOSHENIE $P$ OSTAVALOSX 
INVARIANTNYM. eSLI MY MOZHEM opGaNIZOVATX |TOT PROCESS UTRAMBOVKI 
TAK, CHTOBY DOSTIGNUTX SOSTOYANIYA, UDOVLETVORYAYUSHCHEGO $x=y$, TO, 
SOGLASNO (G), MY NAHODIM ISKOMYJ OTVET, VZYAV ABSOLYUTNOE ZNACHENIE 
$x$.

pOSKOLXKU NASHA KONECHNAYA CELX SOSTOIT V TOM, CHTOBY OBESPECHITX PRI 
INVARIANTNOSTI $P$ ISTINNOSTX $x=y$, MY MOGLI BY ISPYTATX V 
KACHESTVE MONOTONNO UBYVAYUSHCHEJ FUNKCII FUNKCIYU
$$ 
t=\abs(x-y). 
$$

chTOBY UPROSTITX NASH ANALIZ (VSEGDA POHVALXNAYA CELX!), MY OTMECHAEM, 
CHTO ESLI NACHALXNYE ZNACHENIYA $x$ I $y$  NEOTRICATELXNYE, TO NICHEGO 
NELXZYA VYIGRATX VVEDENIEM  OTRICATELXNOGO ZNACHENIYA: ESLI 
PRISVAIVANIE $x:=E$ OBESPECHILO BY $x<0$, TO PRISVAIVANIE $x:=-E$ 
NIKOGDA NE PRIVELO BY K POLUCHENIYU BOLXSHEGO KONECHNOGO ZNACHENIYA $t$ 
(POTOMU, CHTO $y\ge 0$). pO|TOMU MY USILIVAEM NASHE OTNOSHENIE $P$, 
KOTOROE DOLZHNO SOHRANYATXSYA INVARIANTNYM: 
$$ 
P=(P1 \and P2) 
$$ 
PRI 
$$  
P1=(\nod (X, Y)=\nod (x, y)) 
$$ 
I 
$$ 
P2=(x\ge 0 \and y\ge 0) 
$$
eTO OZNACHAET, CHTO MY OTKAZYVAEMSYA OT VSYAKOGO ISPOLXZOVANIYA OPERACIJ 
$x:=-x$ I $y:=-y$, T.E. PREOBRAZOVANIJ, DOPUSTIMYH PO SVOJSTVU (B). 
nAM OSTAYUTSYA OPERACII
$$ 
\eqalign{ 
\hbox{IZ (a):}\; x,y&:=y,x\cr 
\hbox{IZ (V):}\;\;\;\;    x&:=x+y \;  y:=y+x\cr                                               
x&:=x-y   \; y:=y-x\cr
x&:=y-x  \;  y:=x-y\cr 
} 
$$

bUDEM ZANIMATXSYA IMI PO OCHEREDI I NACHNEM S  RASSMOTRENIYA 
$x, y :=y, x$:
$$ 
\wp("x, y: = y, x", \abs(x-y) \le t_0) = (\abs(y-x)\le t_0) 
$$ 
PO|TOMU
$$ 
t_{min} (x, y) = \abs (y-x) 
$$
SLEDOVATELXNO 
$$ 
\wdec ("x, y:= y, x", \abs (x-y) ) 
= (\abs (y-x) \le \abs(x-y)-1)=F 
$$

i ZDESX --- DLYA TEH, KTO NE POVERIL BY BEZ FORMALXNOGO VYVODA,---MY 
DOKAZALI (ILI, ESLI UGODNO, OBNARUZHILI) S POMOSHCHXYU NASHero 
ISCHISLENIYA, CHTO PREOBRAZUYUSHCHAYA OPERACIYA $x,y:=y,x$ NE PREDSTAVLYAET 
INTERESA, TAK KAK ONA NE MOZHET PRIVESTI K ZHELAEMOMU |FFEKTIVNOMU 
UMENXSHENIYU VYBRANNOJ NAMI FUNKCII  $t$.

sLEDUYUSHCHEJ ISPYTYVAETSYA OPERACIYA $x:=x+y$, I MY NAHODIM, SNOVA 
PRIMENYAYA ISCHISLENIE IZ PREDYDUSHCHIH GLAV:
$$ 
\displaylines{ 
\wp("x:=x+y", \abs(x-y)\le t_0)=(\abs(x)\le t_0)\cr 
t_{min} (x, y)=\abs(x)=x\cr 
} 
$$
(MY OGRANICHIVAEMSYA SOSTOYANIYAMI, UDOVLETVORYAYUSHCHIMI $P$) 
$$
\eqalign{ 
\wdec("x:=x+y", \abs(x-y)) &= (t_{min}(x, y) \le t(x, y)-1)\cr 
&= (x\le \abs(x-y)-1)\cr 
&= (x+1\le \abs(x-y))\cr 
&= (x+1\le x-y \or x+1 \le y-x)\cr 
} 
$$

pOSKOLXKU IZ $P$ SLEDUET OTRICANIE PERVOGO CHLENA I K TOMU ZHE 
$P \Rightarrow \wp("x:=x+y", P)$, TO URAVNENIE NASHEGO PREDOHRANITELYA
$$ 
(P \and B_j) \Rightarrow (\wp (SL_j, P) \and \wdec (SL_j, t )) 
$$
UDOVLETVORYAETSYA POSLEDNIM CHLENOM, I MY NASHLI NASHU PERVUYU, A TAKZHE 
(IZ SOOBRAZHENIJ SIMMETRII) NASHU VTORUYU OHRANYAEMUYU KOMANDU: 
$$ 
x+1\le y-x \to x:=x+y 
$$
I 
$$
 y+1\le x-y \to y :=y+x 
$$
aNALOGICHNO MY NAHODIM (FORMALXNYE MANIPULYACII PREDOSTAVLYAYUTSYA V 
KACHESTVE UPRAZHNENIYA PRILEZHNOMU CHITATELYU)
$$ 
1\le y \and 3 * y \le 2* x-1\to x:=x-y 
$$ 
I 
$$ 
1\le x \and 3 * x \le2 * y-1\to y:=y-x
$$
I 
$$ 
 x+1\le y-x \to x:=y-x 
$$ 
I
$$
y+1\le x-y \to y:=x-y
$$

rAZOBRAVSHISX V TOM, CHEGO MY DOSTIGLI, MY VYNUZHDENY PRIJTI K 
DOSADNOMU ZAKLYUCHENIYU, CHTO SPOSOBOM, NAMECHENNYM V KONCE PREDYDUSHCHEJ 
GLAVY, NAM NE UDALOSX RESHITX SVOYU ZADACHU: IZ $P \and \non BB$ NE 
SLEDUET, CHTO $x=y$. (nAPRIMER, PRI $(x, y) = (5,7)$ ZNACHENIYA VSEH 
PREDOHRANITELEJ OKAZYVAYUTSYA LOZHNYMI.) mORALX SKAZANNOGO, 
RAZUMEETSYA, V TOM, CHTO NASHI SHESTX SHAGOV NE VSEGDA OBESPECHIVAYUT 
TAKOJ PUTX IZ NACHALXNOGO SOSTOYANIYA V KONECHNOE SOSTOYANIE, PRI 
KOTOROM $\abs(x-y)$ MONOTONNO UMENXSHAETSYA. pO|TOMU NAM NUZHNO 
ISPYTATX DRUGIE VOZMOZHNOSTI.

dLYA NACHALA ZAMETIM, CHTO NE POVREDIT NESKOLXKO USILITX USLOVIE $P2$: 
$$ 
P2=(x>0 \and y>0) 
$$
TAK KAK NACHALXNYE ZNACHENIYA $x$ I $y$ UDOVLETVORYAYUT TAKOMU USLOVIYU, 
I, KROME TOGO, NET NIKAKOGO SMYSLA V GENERACII RAVNOGO NULYU 
ZNACHENIYA, POSKOLXKU |TO ZNACHENIE MOZHET VOZNIKNUTX TOLXKO PRI 
VYCHITANII V SOSTOYANII, GDE $x=y$, T.E. KOGDA UZHE DOSTIGNUTO 
KONECHNOE SOSTOYANIE. nO |TO TOLXKO MALAYA MODIFIKACIYA; OSNOVNAYA 
MODIFIKACIYA DOLZHNA BYTX SVYAZANA S VVEDENIEM NOVOJ FUNKCII $t$, I YA 
PREDLAGAYU VZYATX TAKUYU FUNKCIYU $t$, KOTORAYA TOLXKO OGRANICHENA SNIZU 
V SILU INVARIANTNOSTI $P$. oCHEVIDNYM PRIMEROM YAVLYAETSYA
$$ 
t=x+y 
$$
mY VYYASNYAEM, CHTO DLYA ODNOVREMENNOGO PRISVAIVAIVANIYA
$$ 
\wdec ("x, y:=y, x", x+y) =F 
$$
I PO|TOMU ODNOVREMENNOE PRISVAIVANIE OTVERGAETSYA. 

mY NAHODIM DLYA PRISVAIVANIYA $x:= x+y$
$$ 
\wdec("x:=x+y", x+y) = (y< 0) 
$$
iSTINNOSTX |TOGO VYRAZHENIYA ISKLYUCHAETSYA ISTINNOSTXYU INVARIANTNOGO 
OTNOSHENIYA $P$, A SLEDOVATELXNO, TAKOE PRISVAIVANIE (NARYADU S 
PRISVAIVANIEM $y:=y+x$)  TAKZHE OTVERGAETSYA.

oDNAKO DLYA SLEDUYUSHCHEGO PRISVAIVANIYA $x:=x-y$ MY NAHODIM 
$$ 
\wdec("x:=x-y", x+y) = (y>0) 
$$
T. E. USLOVIE, KOTOROE, LOGICHESKI SLEDUET IZ USLOVIYA $P$ ( 
USILENNOGO MNOYU RADI |TOGO). 

oKRYLENNYE NADEZHDOJ, MY IZUCHAEM 
$$ 
\wp("x:=x-y", P) = (\nod(X, Y)=\nod(x-y, y) \and x-y > 0 \and y>0) 
$$
kRAJNIE CHLENY MOZHNO OTBROSITX, POTOMU CHTO ONI SLEDUYUT IZ $P$, I U 
NAS OSTAETSYA SREDNIJ CHLEN: ITAK, MY NAHODIM
\prg 
x>y\to x:=x-y 
\grp 
I
\prg
y>H\to y:=y-x 
\grp
i NA |TOM MY MOGLI BY PREKRATITX ISSLEDOVANIE, TAK KAK, KOGDA 
ZNACHENIYA OBOIH PREDOHRANITELEJ STANOVYATSYA LOZHNYMI, VYPOLNYAETSYA 
ZHELAEMOE NAMI OTNOSHENIE $x=y$. eSLI MY PRODOLZHIM, TO NAJDEM TRETIJ 
I CHETVERTYJ VARIANTY:
\prg
 x>y-x \and y>x\to x:=y-x 
\grp
 I
\prg
 y>x-y \and x>y\to y:= x-y 
\grp
NO NE YASNO, CHTO MOZHNO VYIGRATX IH VKLYUCHENIEM.

{\bf uPRAZHNENIYA.}

1. iSSLEDUJTE PRI TOM ZHE $P$ VYBOR $t=\max(x, y)$.

2. iSSLEDUJTE PRI TOM ZHE $P$ VYBOR $t=x+2*y$.

3. dOKAZHITE, CHTO PRI $X>0$ I $Y>0$ SLEDUYUSHCHAYA PROGRAMMA, OPERIRUYUSHCHAYA 
NAD CHETYRXMYA PEREMENNYMI,
\prg
x, y, u, v:=X, Y, Y, X;
\.{do} x>y\to x, v:=x-y, v+u
 \wbox y>x \to y, u:= y-x, u+v
\.{od};
\var{PECHATATX}((x+y)/2); \var{PECHATATX}((u+v)/2)
\grp
PECHATAET NAIBOLXSHIJ OBSHCHIJ DELITELX CHISEL h I u, A SLEDOM ZA NIM IH 
NAIMENXSHEE OBSHCHEE KRATNOE. (kONEC UPRAZHNENIJ.)

nAKONEC, ESLI NASH MALENXKIJ ALGORITM ZAPUSKAETSYA PRI PARE $(X,Y)$, 
KOTORAYA NE UDOVLETVORYAET PREDPOLOZHENIYU $X>0 \and Y>0$, TO 
PROIZOJDUT NEPRIYATNOSTI: ESLI $(X,Y)=(0, 0)$, TO POLUCHITSYA 
NEPRAVILXNYJ NULEVOJ REZULXTAT, A ESLI ODIN IZ ARGUMENTOV 
OTRICATELXNYJ, TO ZAPUSK PRIVEDET K BESKONECHNOJ RABOTE. eTOGO MOZHNO 
IZBEZHATX, NAPISAV
\prg
\.{if} X>0 \and Y>0 \to x,y:=X,Y;
   \.{do} x>y\to x:=x-y\wbox y>x\to y:=y-x \.{od}; \var{PECHATATX}(x) 
\.{fi}
\grp

vKLYUCHIV TOLXKO ODIN VARIANT V KONSTRUKCIYU VYBORA, MY YAVNO VYRAZILI 
USLOVIYA, PRI KOTORYH OZHIDAETSYA RABOTA |TOJ MALENXKOJ PROGRAMMY. v 
TAKOM VIDE |TO HOROSHO ZASHCHISHCHENNYJ I DOVOLXNO SAMOSTOYATELXNYJ 
FRAGMENT, OBLADAYUSHCHIJ TEM PRIYATNYM SVOJSTVOM, CHTO POPYTKA ZAPUSKA 
VNE EGO OBLASTI OPREDELENIYA PRIVEDET K NEMEDLENNOMU OTKAZU.
\bye
