Table des Matières

58: 15'A XXI FONCTION SIMPLE DE CONCATÉNATION


Article de cette rubrique en cours de rédaction!

© "Tous droits réservés" - 2012 par Cédric Christian Bernard Gagneux né le 19/07/64.



"La concaténation de deux nombres ou plus est le nombre formé par la concaténation de leurs chiffres. Par exemple, la concaténation de 1, 234 et 5678 est 12345678. La valeur du résultat dépend de la base numérique, qui est généralement comprise à partir du contexte. La formule de concaténation des nombres p et q en base b est:

 p∥ q=pb^(l(q)) + q où  l(q)= logq⌋ +1 est la longueur numérique de q en base b et ⌊ x est la fonction plancher." Extrait de l'article "Concaténation -- from Wolfram MathWorld" 

"Le terme concaténation, désigne l'action de mettre bout à bout au moins deux chaînes de caractères ou de péricopes. Dans le contexte théorique des langages formels : on se donne un ensemble fini A, et on appelle A* l'ensemble des séquences d'éléments de A* ; la concaténation est alors la loi de composition interne sur A* qui aux séquences (a₁, a₂, aₘ,…) et (b₁, b₂,bₙ,…) où m et n sont des entiers naturels, associe la séquence (a₁, a₂, aₘ, b₁, b₂, bₙ,…). Dans le contexte pratique,  pour deux ensembles de chaînes S1 et S2, la concaténation S1S2 consiste en toutes les chaînes de la forme vw où v est une chaîne de S1 et w est une chaîne de S2, ou formellement S1S2 = { vw : v ∈ S1, w ∈ S2 }. La concaténation d'un ensemble de chaînes et d'une seule chaîne, et vice versa, sont définies de manière similaire par S1w = { vw : v ∈ S1 } et vS2 = { vw : w ∈ S2 }. Dans ces définitions, la chaîne vw est la concaténation ordinaire des chaînes v et w. Par exemple, si U = { a, b, c, d, e, f, g, h }, et V = { 1, 2, 3, 4, 5, 6, 7, 8 }, alors UV désigne l'ensemble des éléments W= { a1, b2, c3, d4, e5, f6, g7, h8 } " extrait des articles "Concaténation" en Français et en anglais de Wikipédia l'encyclopédie libre.

"Formellement, dans le contexte théorique des langages formels : on se donne un ensemble fini Σ, et on appelle Σ⋆ l'ensemble des séquences d'éléments de Σ ; la concaténation est alors la loi de composition interne sur Σ⋆ qui aux séquences ( 1, 2,…,  ) (a{1}, a{2},... ,a{m}) et ( 1, 2,…,  ) (b{1}, b{2},....,b{n}), où m et n sont des entiers naturels, associe la séquence ( 1, 2,…,  , 1, 2,…,  ) ( a{1},a{2},.....,a_{m}, b{1}, b{2},.... , b{n}). Cette opération est associative et a un élément neutre qui est la séquence vide, donc elle dote Σ⋆ d'une structure algébrique de monoïde. De plus, ce monoïde, ainsi que tous les monoïdes isomorphes à celui-ci est qualifié de libre, puisqu'un élément de Σ⋆ ne possède qu'une unique décomposition sous forme de produits d'éléments de Σ. En généralisant, on introduira la terminologie suivante : Si on se donne un monoïde libre, on appellera concaténation (notée souvent par un point ⋅ ou par rien) sa loi de composition interne, mot vide (noté ε) son élément neutre, mots ou chaînes de caractères ses éléments, alphabet (noté A ou Σ) son ensemble de générateurs libres, symboles, lettres ou caractères les éléments de l'alphabet. Dans cette terminologie, on appellera ce monoïde le langage des mots sur l'alphabet Σ (ou A …), que l'on notera  Σ⋆ (ou  ⋆ A})."


I) LA FONCTION DE CONCATENATION D'UNE VALEUR OU PLUSIEURS VALEURS SUCCESSIVES OU NON D'UNE SUITE DE NOMBRES







1.1 Introduction à la concaténation segmentale par les opérations du calcul formel de "copier, couper et coller" sur les séquences de nombres entiers différents de 0 et 1 :



Si l'on pourrait éventuellement considérer intuitivement et visuellement que toutes séquences de nombres résulteraient d'une série d'opération de concaténation il nous faut néanmoins essayer de dégager ce qui est une opération parfaitement sui generis de concaténation de toutes les autres opérations assimilables à la concaténation en générale, donc considérer la différence entre le général et le particulier qui est la caractéristique même de tout ce qui est  sui generis.
Il procède donc de la définition précédente du terme de "concaténation" qu'intuitivement et visuellement, l'action de concaténation de segments de séquences de nombres entiers naturels pourrait correspondre à une action de type "couper-coller" opérer par la multiplication et l'addition de séquences de nombres à concaténer avec des séquences de nombres tous égaux à 1 et à 0. Pour élaborer la procédure systématique de la concaténation de séquence nous commencerons l'expression a(n)=10^(floor(log₁₀(n))+1)-n, with n ∊ N*, à laquelle correspond la séquence de nombres entiers naturels comme suit: T={9; 8; 7; 6; 5; 4; 3; 2; 1; 90; 89; 88; 87, 86; 85; 84; 83; 82; 81; 80; 79; 78; 77; 76; 75; 74; 73; 72; 71; 70; 69; 68; 67; 66; 65; 64; 63; 62; 61; 60; 59; 58; 57; 56; 55; 54; 53; 52; 51; 50; 49; 48; 47; 46; 45; 44; 43; 42; 41; 40; 39; 38; 37; 36; 35; 34; 33; 32; 31; 30; 29; 28; 27; 26; 25; 24; 23; 22; 21; 20; 19; 18; 17; 16; 15; 14; 13; 12; 11; 10; 9; 8; 7; 6; 5; 4; 3; 2; 1; 900; 899; 898; 897; 896; 895; 894; 893; 892; 891; 890; 889; 888; 887; 886; 885; 884; 883; 882........}

Nous pouvons trivialement identifier 3 séquences concaténées pouvant ainsi former cette unique séquence A et qui sont :

B={9; 8; 7; 6; 5; 4; 3; 2; 1;0; 9; 8; 7; 6; 5; 4; 3; 2; 1;0;9; 8; 7; 6; 5; 4; 3; 2; 1;0.....} ;  C={90; 89; 88; 87, 86; 85; 84; 83; 82; 81; 80; 79; 78; 77; 76; 75; 74; 73; 72; 71; 70; 69; 68; 67; 66; 65; 64; 63; 62; 61; 60; 59; 58; 57; 56; 55; 54; 53; 52; 51; 50; 49; 48; 47; 46; 45; 44; 43; 42; 41; 40; 39; 38; 37; 36; 35; 34; 33; 32; 31; 30; 29; 28; 27; 26; 25; 24; 23; 22; 21; 20; 19; 18; 17; 16; 15; 14; 13; 12; 11; 10; 9; 8; 7; 6; 5; 4; 3; 2; 1; 0: 90; 89; 88; 87, 86; 85; 84; 83; 82; 81; 80; 79; 78; 77; 76; 75; 74; 73; 72; 71; 70; 69; 68; 67; 66; 65; 64; 63; 62; 61; 60; 59; 58; 57; 56; 55; 54; 53; 52; 51; 50; 49; 48; 47; 46; 45; 44; 43; 42; 41; 40; 39; 38; 37; 36; 35; 34; 33; 32; 31; 30; 29; 28; 27; 26; 25; 24; 23; 22; 21; 20; 19; 18; 17; 16; 15; 14; 13; 12; 11; 10; 9; 8; 7; 6; 5; 4; 3; 2; 1; 0........}; et D={900; 899; 898; 897; 896; 895; 894; 893; 892; 891; 890; 889; 888; 887; 886; 885; 884; 883; 882........0;900; 899; 898; 897; 896; 895; 894; 893; 892; 891; 890; 889; 888; 887; 886; 885; 884; 883; 882........0.....}.

Mais ensuite, si "la concaténation est la loi de composition interne sur T*" qui aux séquences (a₁, a₂, aₘ,…), (b₁, b₂,bₙ,…) et (c₁, c₂, cₒ,…), où m, n et o sont des entiers naturels, associe la séquence (a₁, a₂, aₘ, b₁, b₂, bₙ, c₁, c₂,cₒ,…), alors par quelle opération du calcul formel ou calcul symbolique, ("le domaine des mathématiques et de l’informatique qui s’intéresse aux algorithmes opérant sur des objets de nature mathématique par le biais de représentations finies et exactes") sur les nombres de ces trois séquences peut on obtenir la séquence T=BCD ? La réponse est l'opération de "couper, copier et coller" c'est à dire mathématiquement appelé la nullification par l'opétation de calcul numérique de la multiplication par la séquence de nombres identique et égaux à 0; et l'identité par l'opération de la multiplication par la séquence de nombres identiques égaux à 1. Informatiquement l'opération est celle de la chaine de projection supprimant certaine occurrence des éléments de B, C et D. Nous pouvons ainsi écrire l'expression de la séquence de nombres I={1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;....} comme suit:
 
∀ n ∈ N*, a(n)=ceil(n/(n+1))= ⌈ n/(n+1) ⌉; ou "ceil" est l'abréviation de ceiling correspondant à la fonction en anglais ou en Français la fonction plafond notée ⌈ ⌉.

 Nous pouvons aussi écrire l'expression de la séquence de nombres du monoïde libre λ={0;0;0;0;0;0;..} comme suit:

∀ n ∈ N*, a(n)=1-ceil(n/(n+1))= 1-⌈ n/(n+1) ⌉, ou "ceil" est l'abréviation de ceiling correspondant à la fonction en anglais ou en Français la fonction plafond notée ⌈ ⌉.

Ce sont ces deux séquences de nombres exclusivement égaux à 1 ou à 0 que nous utilisons pour l'expression de notre fonction "ciseaux" qui est définit comme suit:

∀ n ∈ N*, ∀ b ∈ N*, a(n)=ceil((b-mod(b;n)) / ((b-mod(b;n))+1)) = ⌈ ( b- b mod n)/(b- b mod n+1) ⌉; ou "ceil" est l'abréviation de ceiling correspondant à la fonction en anglais ou en Français la fonction plafond notée ⌈ ⌉; mod est l'abréviation de l'opération modulo noté b mod n donnant le reste de la division de b par n. C'est cette fonction qui multiplié par l'expression de la séquence B définit comme suit soit, ∀ n ∈ N*, ∀ b ∈ N*, a(n)= mod(-n,b)= -n mod b, avec b=10 nous donne l'expression de notre fonction ciseaux sur la séquence T soit:

∀ n ∈ N*, ∀ b ∈ N*, a(n)=mod(-n,b)*ceil((b-mod(b;n)) / ((b-mod(b ; n))+1)) = ⌈ ( b- b mod n)/(b- (b) mod (n)+1) ⌉ * -n mod b, avec b=10. Cette nouvelle séquence dite Séquence B partiellement nullifiée par l'opération de "couper" la séquence B est B= {9; 8; 7; 6; 5; 4; 3; 2; 1; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0.....}. Cette opération de couper est en fait une opération de concaténation de segment de 0 après la première valeur nulle de la séquence de nombres entiers dont l'expression est mod(-n,b) soit la concaténation du segment { 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0......} et du segment { 9; 8; 7; 6; 5; 4; 3; 2; 1; 0 } et donc une expression de la fonction de concaténation, équivalente à la fonction de nullification partielle de la séquence I={1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;....} une opération d'expression  a(n)=ceil(n/(n+1))*ceil((b-mod(b;n)) / ((b-mod(b;n))+1))= ⌈ n/(n+1) ⌉*⌈ ( b- b mod n)/(b- b mod n+1) ⌉ correspondant à la représentation de la séquence {1; 1; 1; 1; 1; 1; 1; 1; 1; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0.....}. Cette dernière expression correspond aussi à l'expression de la fonction caractéristique de la séquence B= {9; 8; 7; 6; 5; 4; 3; 2; 1; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0.....} dont l'expression est comme suit:

Afin d'obtenir la séquence T il nous reste ensuite à procéder à la même opération que sur la séquence B mais sur la séquence C, comme suit: 

∀ n ∈ N*, ∀ b ∈ N*, a(n)=ceil(n/(n+1))*ceil((b²-mod(b-1;n)) / ((b²-mod(b-1; n)+1))= ⌈ ( b²- (b-1) mod n)/(b²- (b-1) mod (n)+1) ⌉, avec b=10 ; 

 ∀ n ∈ N*, ∀ b ∈ N*, a(n)=ceil((b-1-mod(b-1;n)) / ((b-1-mod(b-1; n))+1))= ⌈ ( b-1- (b-1) mod n)/(b-1- (b-1) mod (n)+1) ⌉, avec b=10 ;

 ∀ n ∈ N*, ∀ b ∈ N*, a(n)= mod(-n,b²)= -n mod b², avec b=10 

∀ n ∈ N*, ∀ b ∈ N*, a(n)=mod(-n,b²)*(ceil((b²-mod(b-1;n)) / ((b²-mod(b-1; n)+1))-ceil((b-1-mod(b-1;n)) / ((b-1-mod(b-1; n))+1)))=-n mod b² *( ⌈ ( b²- (b-1) mod n)/(b²- (b-1) mod (n)+1) ⌉ -⌈ ( b-1- (b-1) mod n)/(b-1- (b-1) mod (n)+1) ⌉ ), avec b=10 ; 

((CEILING(ABS(AM16/(HY$2+1)-1);1)-CEILING(AM16/(HY$2+1);1)+1))+(1-((CEILING(ABS(AM16/(HY$2+1+HY$4)-1);1)-CEILING(AM16/(HY$2+1+HY$4);1)+1)))*AM16


1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 19 20 21 22 23

((CEILING(ABS(AM16/(HY$2+1)-1);1)-CEILING(AM16/(HY$2+1);1)+1))*AM16+(1-((CEILING(ABS(AM16/(HY$2+1+HY$4)-1);1)-CEILING(AM16/(HY$2+1+HY$4);1)+1)))

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

BX16=((CEILING(ABS(AM16/(BW$2+1)-1);1)-CEILING(AM16/(BW$2+1);1)+1))+(1-((CEILING(ABS(AM16/(BW$2+1+BW$4)-1);1)-CEILING(AM16/(BW$2+1+BW$4);1)+1)))

1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 1 1 1 1 1

(1-BX16)*((AM16+CC16-SUM(BX$16:BX16))*(1-BX16))-(1-BX16)^2+TQ$9

21.2.2 Introduction à la concaténation segmentale par l'introduction aux opérations du calcul formel de "copier, couper et coller" sur les séquences de nombres entiers égaux à 0 et 1:



 ∀∈⌊⌋⌈⌉ ₀₁₂₃₄₅₆₇₈₉ ₊ ₋ ₌₍₎ ₐ ₑ ₒ ₓ ₔ ₕ ₖ ₗ ₘ ₙ ₚ ₛ ₜ ⱼ
∀∈⌊⌋⌈⌉ ₀₁₂₃₄₅₆₇₈₉ ₊ ₋ ₌₍₎ ₐ ₑ ₒ ₓ ₔ ₕ ₖ ₗ ₘ ₙ ₚ ₛ ₜ ⱼ