/*************************************************************************************************************************************/
/*                                                                                                                                   */
/*        E T U D E   D E   L A   C O M P L E X I T E   S T R U C T U R E L L E                                                      */
/*        D E   " V R A I S "   P O I N T S   A L E A T O I R E S                                                                    */
/*        A D A P T E S   A   L A   C O M P L E X I T E   D E   K O L M O G O R O V  :                                               */
/*                                                                                                                                   */
/*                                                                                                                                   */
/*        Author of '$xrC/ObjetComplexe.G2$vv$c' :                                                                                   */
/*                                                                                                                                   */
/*                    Jean-Francois Colonna (LACTAMME, 20130607100849).                                                              */
/*                                                                                                                                   */
/*************************************************************************************************************************************/

#ifdef    COMMENTS
#         undef     COMMENTS
#else
#endif

#define   COMMENTS  "'Vrai' champ aleatoire type BBS (format bit) -noir ou blanc-"

#include  "images_1bit.01.vv.I"

long      int       ChaineBitsAleatoires[]={
#include  "ChaineBitsAleatoires_1024x1024.01.vv.I"
                                           };
                                        /* Le programme 'v $xrC/ObjetComplexe.G2$vv$c' est adapte a la mesure de la Complexite       */
                                        /* Algorithmique de Kolmogorov puisque chaque bit de la chaine de bits aleatoires n'occupe   */
                                        /* qu'un seul bit de memoire. Sa longueur mesurees en bits a partir du binaire non           */
                                        /* executable ('v $xrC/Mesures.01$vv$Z .CoMpIlE..-c') est alors egale (en bits) au nombre    */
                                        /* de bits de la chaine aleatoire plus une petite constante (voir a ce propos                */
                                        /* 'v $xrC/ObjetComplexe.F2$vv$c 20130519121302' pour avoir des informations concernant      */
                                        /* la longueur du binaire non executable).                                                   */
                                        /*                                                                                           */
                                        /* Les programmes 'v $xrC/ObjetComplexe.L1$vv$c' et 'v $xrC/ObjetComplexe.L2$vv$c' sont      */
                                        /* eux adaptes a la mesure de la Complexite Structuelle de Bennet puisque l'on mesure        */
                                        /* alors le nombre d'instructions necessaires au transfert de la chaine de bits aleatoires   */
                                        /* dans une matrice de bits (la conversion bit -- > octet etant penalisante...).              */
                                        /*                                                                                           */
                                        /* Les programmes 'v $xrC/ObjetComplexe.M1$vv$c' et 'v $xrC/ObjetComplexe.M2$vv$c' sont      */
                                        /* eux aussi adaptes a la mesure de la Complexite Structuelle de Bennet puisque l'on mesure  */
                                        /* alors le nombre d'instructions necessaires au transfert de la chaine de bits aleatoires   */
                                        /* (representees par une chaine d'octets : un bit est contenu dans un octet) dans une        */
                                        /* matrice d'octets (ce qui est donc plus rapide que ci-dessus...).                          */

MAIN(
          {

#ifndef   NE_PAS_SORTIR_LE_FICHIER_IMAGE

#         ifdef     CONVERTIR_LE_FICHIER_IMAGE
                    {
                    TypeImage image_convertie[dimY][dimX];

                    CONVOLUTION_IMAGE;
                    TRANSFORMATION_IMAGE;
                                        /* Les transformations ont ete introduites le 20140125093812...                              */ \

                    for       (y=Ymin ; y <= Ymax ; y=ADD2(y,1))
                              {
                              for       (x=Xmin ; x <= Xmax ; x=ADD2(x,1))
                                        {
                                        int       xQ=DIVI(x,NOMBRE_DE_BITS_PAR_MOT);
                                        int       xR=REST(x,NOMBRE_DE_BITS_PAR_MOT);

                                        image_convertie[y][x]=COND(((ChaineBitsAleatoires[xQ+(y*(dimX/NOMBRE_DE_BITS_PAR_MOT))] & DECG((long int)BIT,xR))==0),NOIR,BLANC);
                                        /* ATTENTION, il est evidemment impossible d'utiliser :                                      */
                                        /*                                                                                           */
                                        /*                  gSTORE_IMAGE_PLAN(image_convertie,x,COND(...));                          */
                                        /*                                                                                           */
                                        }
                              }

                    write(STDOUT,image_convertie,GDimImages);
                    }
#         else
                    write(STDOUT,ChaineBitsAleatoires,DimImages);
#         endif

#else
#endif

          EDITER_LES_COMPTEURS_DES_FONCTIONS;
          }
     )



Copyright © Jean-François Colonna, 2013-2021.
Copyright © CMAP (Centre de Mathématiques APpliquées) UMR CNRS 7641 / Ecole Polytechnique, 2013-2021.