Lines Matching defs:permutation

805     uint32_t permutation = EXTRACT_BITS(
857 // This is done with Lehmer code permutation, e.g. see
858 // http://stackoverflow.com/questions/1506078/fast-permutation-number-
859 // permutation-mapping-algorithms
867 permunreg[0] = permutation / 120; // 120 == 5!
868 permutation -= (permunreg[0] * 120);
869 permunreg[1] = permutation / 24; // 24 == 4!
870 permutation -= (permunreg[1] * 24);
871 permunreg[2] = permutation / 6; // 6 == 3!
872 permutation -= (permunreg[2] * 6);
873 permunreg[3] = permutation / 2; // 2 == 2!
874 permutation -= (permunreg[3] * 2);
875 permunreg[4] = permutation; // 1 == 1!
879 permunreg[0] = permutation / 120;
880 permutation -= (permunreg[0] * 120);
881 permunreg[1] = permutation / 24;
882 permutation -= (permunreg[1] * 24);
883 permunreg[2] = permutation / 6;
884 permutation -= (permunreg[2] * 6);
885 permunreg[3] = permutation / 2;
886 permutation -= (permunreg[3] * 2);
887 permunreg[4] = permutation;
890 permunreg[0] = permutation / 60;
891 permutation -= (permunreg[0] * 60);
892 permunreg[1] = permutation / 12;
893 permutation -= (permunreg[1] * 12);
894 permunreg[2] = permutation / 3;
895 permutation -= (permunreg[2] * 3);
896 permunreg[3] = permutation;
899 permunreg[0] = permutation / 20;
900 permutation -= (permunreg[0] * 20);
901 permunreg[1] = permutation / 4;
902 permutation -= (permunreg[1] * 4);
903 permunreg[2] = permutation;
906 permunreg[0] = permutation / 5;
907 permutation -= (permunreg[0] * 5);
908 permunreg[1] = permutation;
911 permunreg[0] = permutation;
915 // Decode the Lehmer code for this permutation of the registers v.
1070 uint32_t permutation = EXTRACT_BITS(
1120 // This is done with Lehmer code permutation, e.g. see
1121 // http://stackoverflow.com/questions/1506078/fast-permutation-number-
1122 // permutation-mapping-algorithms
1130 permunreg[0] = permutation / 120; // 120 == 5!
1131 permutation -= (permunreg[0] * 120);
1132 permunreg[1] = permutation / 24; // 24 == 4!
1133 permutation -= (permunreg[1] * 24);
1134 permunreg[2] = permutation / 6; // 6 == 3!
1135 permutation -= (permunreg[2] * 6);
1136 permunreg[3] = permutation / 2; // 2 == 2!
1137 permutation -= (permunreg[3] * 2);
1138 permunreg[4] = permutation; // 1 == 1!
1142 permunreg[0] = permutation / 120;
1143 permutation -= (permunreg[0] * 120);
1144 permunreg[1] = permutation / 24;
1145 permutation -= (permunreg[1] * 24);
1146 permunreg[2] = permutation / 6;
1147 permutation -= (permunreg[2] * 6);
1148 permunreg[3] = permutation / 2;
1149 permutation -= (permunreg[3] * 2);
1150 permunreg[4] = permutation;
1153 permunreg[0] = permutation / 60;
1154 permutation -= (permunreg[0] * 60);
1155 permunreg[1] = permutation / 12;
1156 permutation -= (permunreg[1] * 12);
1157 permunreg[2] = permutation / 3;
1158 permutation -= (permunreg[2] * 3);
1159 permunreg[3] = permutation;
1162 permunreg[0] = permutation / 20;
1163 permutation -= (permunreg[0] * 20);
1164 permunreg[1] = permutation / 4;
1165 permutation -= (permunreg[1] * 4);
1166 permunreg[2] = permutation;
1169 permunreg[0] = permutation / 5;
1170 permutation -= (permunreg[0] * 5);
1171 permunreg[1] = permutation;
1174 permunreg[0] = permutation;
1178 // Decode the Lehmer code for this permutation of the registers v.