Calculul indexului se bazează pe două idei simple:
- Fiecare număr întreg poate fi scris ca produs de numere prime.
- Un sistem de ecuații liniare într-un număr mic de variabile poate fi rezolvat cu suficiente ecuații independente.
Luați de exemplu grupul ciclic $\mathbb{Z}/p$ cu $p$ o rădăcină primă și primitivă c. Elementele $c^i$ (pentru $i=0,1,2,...,p-1$) sunt congruente modulo p cu numerele întregi $1,2,...,p-1$. Aceste numere întregi pot fi exprimate cu puteri ale unui număr mic de numere prime $P_1,..., P_k $ mai mic ca $p$. Dacă știm indicele fiecărui prim, atunci, deoarece indicii sunt modulo aditivi $p-1$, atunci cunoaștem indicele fiecărui element din grupul nostru.
Deci, în acest exemplu, variabilele sunt indicii primelor $P_j$ iar ecuaţiile sunt date de $$c^i=\prod_j P_j^{r_j} \leadsto i=\sum_j r_j \operatorname{ind}(P_j).$$ Rețineți că din moment ce $c^i$ va lovi și pe $P_j$, avem suficiente ecuații independente de rezolvat pentru toți indicii. Speranța este, desigur, că nu va trebui să parcurgem toate ecuațiile, dar că deja primele câteva conțin toți indicii și sunt suficient de independenți liniar. Alegerea lui c este importantă în cât de repede se va avea suficiente informații pentru a rezolva sistemul liniar.
Puteți generaliza acest lucru la grupuri mai generale, dar ideea rămâne aceeași.