Du sosa à la génération et réciproquement
Un peu de mathématique en généalogie
Mots clés : généalogiste
lundi 6 février 2017 , par
Cela fait plusieurs qu’on me pose l’une de ces deux questions : "Comment trouver la génération à partir du numéro sosa ?" ou "Comment trouver les numéros sosa limite haute et limite basse à partir du rang d’une génération ?". Dorénavant, je répondrai en envoyant un lien vers mon article.
Pour simplifier un peu, posons d’abord que la variable numéro sosa s’appellera sosa et que la variable génération s’appellera gene.
Comment trouver la génération à partir du numéro sosa ?
La formule brute
gene = ent(log (sosa,2))+1
Note : La fonction "Ent" (pour ENTier) s’appelle quelquefois "Int" (pour INTer).
Quelques explications
- sosa contient donc le numéro sosa pour lequel on souhaite trouver la génération.
- log(sosa,2) calcule le logarithme du numéro sosa dans la base 2.
- Une génération étant un nombre entier, on ne conserve que la partie entière.
- Le de cujus correspond à la génération n° 1, il faut donc systématiquement rajouter 1.
Dans une feuille de calcul
| 1 | sosa | gene |
| 2 | ? | =ENT(LOG(A2 ;2))+1 |
Taper le numéro sosa à la place du " ?" dans la case A2, le résultat s’affichera dans la case B2.
Exemples de résultats obtenus
| sosa | gene |
|---|---|
| 1 | 1 |
| 2 | 2 |
| 3 | 2 |
| 4 | 3 |
| 5 | 3 |
| 6 | 3 |
| 7 | 3 |
| 8 | 4 |
| 16 | 5 |
| 32 | 6 |
| 128 | 8 |
| 256 | 9 |
Comment trouver les numéros sosa limites haute et basse pour une génération donnée ?
sosa(minimal)=2^(gene - 1)
sosa(maximal)=(2^gene)-1Note : dans la deuxième formule, les parenthèses ne sont pas indispensables.
Quelques explications
- Deux à la puissance du rang de la génération donne toujours le premier sosa de la génération suivante.
- Pour le numéro sosa de la limite supérieure, on ôte donc un au résultat obtenu.
- Pour le numéro sosa de la limite inférieure, on calcule la puissance de rang de génération immédiatement inférieur.
Dans une feuille de calcul
| 1 | gene | sosa minimal | sosa maximal |
| 2 | ? | =2^(A2-1) | =(2^A2)-1 |
Taper le rang de la génération à la place du " ?" dans la case A2, les résultats s’afficheront dans les cases B2 (sosa minimal) et C2 (sosa maximal).
Les limites des 20 premières générations
| gene | sosa min | sosa max |
|---|---|---|
| 0 | 1 | 1 |
| 1 | 2 | 3 |
| 2 | 4 | 7 |
| 3 | 8 | 15 |
| 4 | 16 | 31 |
| 5 | 32 | 63 |
| 6 | 64 | 127 |
| 7 | 128 | 255 |
| 8 | 256 | 511 |
| 9 | 512 | 1023 |
| 10 | 1024 | 2047 |
| 11 | 2048 | 4095 |
| 12 | 4096 | 8191 |
| 13 | 8192 | 16383 |
| 14 | 16384 | 32767 |
| 15 | 32768 | 65535 |
| 16 | 65536 | 131071 |
| 17 | 131072 | 262143 |
| 18 | 262144 | 524287 |
| 19 | 524288 | 1048575 |
| 20 | 1048576 | 2097151 |
Conclusion
Normalement, les messages de demandes de ces formules devraient se tarir rapidement... ;-)
Les sources
