momente şi schiţe de informatică şi matematică
To attain knowledge, write. To attain wisdom, rewrite.

Șabloanele binare ale multiplilor (IV)

De Bruijn | R
2025 oct

Până a ne ocupa de ciclurile automatului modulo $M$, evidențiem două proprietăți ale tranzițiilor acestuia.

Amintim din [1], că "automatul mod $M$" Atm are ca stări clasele de resturi modulo $M$, cu formula de tranziție

$$t=2s+\varepsilon\,\, (\mathrm{mod}\,M), \,\,\text{cu}\, s\in\{0,1,2,\ldots,M-1\},\,\varepsilon\in\{0,1\}\qquad\qquad(1)$$

Dacă $M$ ar fi putere de $2$, atunci Atm ar reprezenta un graf de Bruijn (fiindcă $2s+\varepsilon$ revine la deplasarea spre stânga a cuvântului binar de lungime $M$, urmată de completarea la dreapta cu un bit). Noi considerăm $M$ impar și interpretăm stările ca fiind resturile împărțirii prin $M$ a numerelor naturale (nu ca regiștri binari de lungime $M$); în [1] foloseam Atm pentru a exprima printr-o expresie regulată, forma binară a oricărui multiplu de $M$ (ceea ce ne-a reușit pentru $M=3$ și pentru $M=5$; adăugând la sfârșit $k\ge 0$ biți zero, rezultă și expresiile binare regulate ale multiplilor de $3\times2^k$, respectiv $5\times2^k$ — încât este firesc să excludem cazul când $M$ ar fi par).

Complementări

$x$ și $(M-1)-x=\overline{x}$ sunt stări "complementare" (la fel, biții $\varepsilon$ și $\overline{\varepsilon}=1-\varepsilon$). Avem:

$$\large{s\overset{\varepsilon}{\longrightarrow}t\,\iff\,\overline{s}\overset{\overline{\varepsilon}}{\longrightarrow}\overline{t\,}}\qquad\qquad(2)$$

Într-adevăr, $\overline{t\,}-2\overline{s}=-(M-1)-(t-2s)\equiv 1-\varepsilon\,\,(\mathrm{mod}\,M)$, deci (1) are loc și pentru complemente (dar complementând bitul de tranziție).

Prin urmare, în Atm avem cicluri (și drumuri) complementare. De exemplu, să reluăm graful din [1] (pentru $M=15$; biții $\varepsilon$ sunt reprezentați prin arce de culori diferite):

Ciclurile $6-12-10-6$ și $8-2-4-8$ sunt complementare ($\overline{6}=8$, $\overline{12}=2$, etc.); la fel, ciclurile "de bază" de lungime 4 sunt complementare două câte două (de exemplu, $\overline{0-1-3-7-0}=14-13-11-7-14$).
Ciclul eulerian evidențiat în [1] (din vârful $0$):

   0 0 1 2 4 8 1 3 6 12 10 6 13 12 9 4 9 3 7 14 14 13 11 8 2 5 10 5 11 7 0

are drept complement acest nou ciclu eulerian (din nodul 14):

   14 14 13 12 10 6 13 11 8 2 4 8 1 2 5 10 5 11 7 0 0 1 3 6 12 9 4 9 3 7 14

Să mai observăm că și ciclurile de lungime 2 (mai numite și "arce duble") sunt conjugate unul celuilalt: $\overline{5-10-5}=9-4-9$.

Poate fi de văzut (nu vedem totuși, motivul) cum se comportă complementarea față de reuniune; este adevărat că un ciclu și complementul său, dacă nu sunt disjuncte, au în comun cel mult un vârf ? (pentru $M=15$, ciclurile $0-1-3-7$ și $14-13-11-7$ sunt complementare și au în comun vârful $7$).

Arcele duble

În ce condiții avem $s\rightarrow t$ și invers, $t\rightarrow s\,$? Aplicând (1), ar trebui să avem $2(2s+\varepsilon)+\varepsilon_1\equiv s\,(\mathrm{mod}\,M)$, deci $3s\in\{M, M-1, M-2, M-3\}$. Dacă $M$ este multiplu de 3, rezultă două soluții: $s_1=M/3$ și $s_2=(M-3)/3$; altfel, avem o singură soluție: fie $s=(M-1)/3$, fie $s=(M-2)/3$ (numai una dintre acestea este posibilă).

De exemplu, pentru $M=21$ avem două arce duble: $7-14$ și $6-13$ (cicluri de lungime 2, conjugate: $\overline{7-14-7}=13-6-13$); pentru $M=11$ (cu 2 mai mult ca un multiplu de 3) avem un singur arc dublu, $3-7$ (coincide cu conjugatul său); pentru $M=13$ (cu 1 mai mult ca un multiplu de 3) avem un singur arc dublu, $4-8$.

Desigur… putem extinde investigația: care sunt ciclurile de lungime 3 ? Ar trebui să avem $2(2(2s+\varepsilon)+\varepsilon_1)+\varepsilon_2\equiv s\,(\mathrm{mod}\,M)$, deci $7s\,\in\{M, M-1, \ldots, M-7\}\,(\mathrm{mod}\, M)$.
De exemplu, pentru $M=21$ rezultă 4 cicluri de lungime 3: $2-5-11-2$ (avem $2\times 7=M-7$), apoi conjugatul acestuia $18-15-9-18$ (avem $9\times 7 = 63\equiv M$), apoi $3-6-12-3$ (avem $3\times 7\equiv M$) și conjugatul acestuia $17-14-8-17$ (pentru care avem $8\times 7=56\equiv(M-7)$).

Este important să observăm că avem și "cicluri" în care nu toate arcele au o aceeași orientare; de exemplu, pentru $M=15$ (v. graful redat mai sus) arcele $8-1$, $1-2$ și $8-2$ formează un ciclu de lungime 3, dacă ignorăm orientarea arcelor… (structura ciclurilor orientate decurge cumva din structura tuturor ciclurilor, orientate sau nu).

vezi Cărţile mele (de programare)

docerpro | Prev |