1Testing loop edge elimination in undirected graph 2 3Loops eliminated: { 4 0: ( 1 3 3 ) 5 1: ( 0 2 ) 6 2: ( 1 3 ) 7 3: ( 0 0 2 4 ) 8 4: ( 3 ) 9} 10 11Loops listed once: { 12 0: ( 1 3 3 ) 13 1: ( 0 2 ) 14 2: ( 1 2 3 ) 15 3: ( 0 0 2 4 ) 16 4: ( 3 4 4 ) 17} 18 19Loops listed twice: { 20 0: ( 1 3 3 ) 21 1: ( 0 2 ) 22 2: ( 1 2 2 3 ) 23 3: ( 0 0 2 4 ) 24 4: ( 3 4 4 4 4 ) 25} 26 27============================================================ 28 29Testing lazy loop edge elimination in undirected graph 30 31Loops eliminated: { 32 0: ( 1 3 3 ) 33 1: ( 0 2 ) 34 2: ( 1 3 ) 35 3: ( 0 0 2 4 ) 36 4: ( 3 ) 37} 38 39Loops listed once: { 40 0: ( 1 3 3 ) 41 1: ( 0 2 ) 42 2: ( 1 2 3 ) 43 3: ( 0 0 2 4 ) 44 4: ( 3 4 4 ) 45} 46 47Loops listed twice: { 48 0: ( 1 3 3 ) 49 1: ( 0 2 ) 50 2: ( 1 2 2 3 ) 51 3: ( 0 0 2 4 ) 52 4: ( 3 4 4 4 4 ) 53} 54 55============================================================ 56 57Testing loop edge elimination in directed graph 58 59In-edges, loops eliminated: { 60 0: ( 3 ) 61 1: ( 0 ) 62 2: ( 1 ) 63 3: ( 0 2 ) 64 4: ( 3 ) 65} 66 67In-edges, loops listed once: { 68 0: ( 3 ) 69 1: ( 0 ) 70 2: ( 1 2 ) 71 3: ( 0 2 ) 72 4: ( 3 4 4 ) 73} 74 75In-edges, loops listed once even if IGRAPH_LOOPS_TWICE is given: { 76 0: ( 3 ) 77 1: ( 0 ) 78 2: ( 1 2 ) 79 3: ( 0 2 ) 80 4: ( 3 4 4 ) 81} 82 83Out-edges, loops eliminated: { 84 0: ( 1 3 ) 85 1: ( 2 ) 86 2: ( 3 ) 87 3: ( 0 4 ) 88 4: ( ) 89} 90 91Out-edges, loops listed once: { 92 0: ( 1 3 ) 93 1: ( 2 ) 94 2: ( 2 3 ) 95 3: ( 0 4 ) 96 4: ( 4 4 ) 97} 98 99Out-edges, loops listed once even if IGRAPH_LOOPS_TWICE is given: { 100 0: ( 1 3 ) 101 1: ( 2 ) 102 2: ( 2 3 ) 103 3: ( 0 4 ) 104 4: ( 4 4 ) 105} 106 107In- and out-edges, loops eliminated: { 108 0: ( 1 3 3 ) 109 1: ( 0 2 ) 110 2: ( 1 3 ) 111 3: ( 0 0 2 4 ) 112 4: ( 3 ) 113} 114 115In- and out-edges, loops listed once: { 116 0: ( 1 3 3 ) 117 1: ( 0 2 ) 118 2: ( 1 2 3 ) 119 3: ( 0 0 2 4 ) 120 4: ( 3 4 4 ) 121} 122 123In- and out-edges, loops listed twice: { 124 0: ( 1 3 3 ) 125 1: ( 0 2 ) 126 2: ( 1 2 2 3 ) 127 3: ( 0 0 2 4 ) 128 4: ( 3 4 4 4 4 ) 129} 130 131============================================================ 132 133Testing lazy loop edge elimination in directed graph 134 135In-edges, loops eliminated: { 136 0: ( 3 ) 137 1: ( 0 ) 138 2: ( 1 ) 139 3: ( 0 2 ) 140 4: ( 3 ) 141} 142 143In-edges, loops listed once: { 144 0: ( 3 ) 145 1: ( 0 ) 146 2: ( 1 2 ) 147 3: ( 0 2 ) 148 4: ( 3 4 4 ) 149} 150 151In-edges, loops listed once even if IGRAPH_LOOPS_TWICE is given: { 152 0: ( 3 ) 153 1: ( 0 ) 154 2: ( 1 2 ) 155 3: ( 0 2 ) 156 4: ( 3 4 4 ) 157} 158 159Out-edges, loops eliminated: { 160 0: ( 1 3 ) 161 1: ( 2 ) 162 2: ( 3 ) 163 3: ( 0 4 ) 164 4: ( ) 165} 166 167Out-edges, loops listed once: { 168 0: ( 1 3 ) 169 1: ( 2 ) 170 2: ( 2 3 ) 171 3: ( 0 4 ) 172 4: ( 4 4 ) 173} 174 175Out-edges, loops listed once even if IGRAPH_LOOPS_TWICE is given: { 176 0: ( 1 3 ) 177 1: ( 2 ) 178 2: ( 2 3 ) 179 3: ( 0 4 ) 180 4: ( 4 4 ) 181} 182 183In- and out-edges, loops eliminated: { 184 0: ( 1 3 3 ) 185 1: ( 0 2 ) 186 2: ( 1 3 ) 187 3: ( 0 0 2 4 ) 188 4: ( 3 ) 189} 190 191In- and out-edges, loops listed once: { 192 0: ( 1 3 3 ) 193 1: ( 0 2 ) 194 2: ( 1 2 3 ) 195 3: ( 0 0 2 4 ) 196 4: ( 3 4 4 ) 197} 198 199In- and out-edges, loops listed twice: { 200 0: ( 1 3 3 ) 201 1: ( 0 2 ) 202 2: ( 1 2 2 3 ) 203 3: ( 0 0 2 4 ) 204 4: ( 3 4 4 4 4 ) 205} 206 207============================================================ 208 209Testing multiple edge elimination in undirected graph 210 211Loops also eliminated: { 212 0: ( 1 3 8 ) 213 1: ( 0 2 ) 214 2: ( 1 3 ) 215 3: ( 0 2 4 ) 216 4: ( 3 5 ) 217 5: ( 4 6 ) 218 6: ( 5 7 8 ) 219 7: ( 6 ) 220 8: ( 0 6 ) 221} 222 223Loops listed once: { 224 0: ( 1 3 8 ) 225 1: ( 0 2 ) 226 2: ( 1 2 3 ) 227 3: ( 0 2 4 ) 228 4: ( 3 4 5 ) 229 5: ( 4 6 ) 230 6: ( 5 7 8 ) 231 7: ( 6 ) 232 8: ( 0 6 ) 233} 234 235Loops listed twice: { 236 0: ( 1 3 8 ) 237 1: ( 0 2 ) 238 2: ( 1 2 2 3 ) 239 3: ( 0 2 4 ) 240 4: ( 3 4 4 5 ) 241 5: ( 4 6 ) 242 6: ( 5 7 8 ) 243 7: ( 6 ) 244 8: ( 0 6 ) 245} 246 247============================================================ 248 249Testing lazy multiple edge elimination in undirected graph 250 251Loops also eliminated: { 252 0: ( 1 3 8 ) 253 1: ( 0 2 ) 254 2: ( 1 3 ) 255 3: ( 0 2 4 ) 256 4: ( 3 5 ) 257 5: ( 4 6 ) 258 6: ( 5 7 8 ) 259 7: ( 6 ) 260 8: ( 0 6 ) 261} 262 263Loops listed once: { 264 0: ( 1 3 8 ) 265 1: ( 0 2 ) 266 2: ( 1 2 3 ) 267 3: ( 0 2 4 ) 268 4: ( 3 4 5 ) 269 5: ( 4 6 ) 270 6: ( 5 7 8 ) 271 7: ( 6 ) 272 8: ( 0 6 ) 273} 274 275Loops listed twice: { 276 0: ( 1 3 8 ) 277 1: ( 0 2 ) 278 2: ( 1 2 2 3 ) 279 3: ( 0 2 4 ) 280 4: ( 3 4 4 5 ) 281 5: ( 4 6 ) 282 6: ( 5 7 8 ) 283 7: ( 6 ) 284 8: ( 0 6 ) 285} 286 287============================================================ 288 289Testing multiple edge elimination in directed graph 290 291In-edges, loops also eliminated: { 292 0: ( 3 8 ) 293 1: ( 0 ) 294 2: ( 1 ) 295 3: ( 0 2 ) 296 4: ( 3 ) 297 5: ( 4 ) 298 6: ( 5 ) 299 7: ( 6 ) 300 8: ( 0 6 ) 301} 302 303In-edges, loops listed once: { 304 0: ( 3 8 ) 305 1: ( 0 ) 306 2: ( 1 2 ) 307 3: ( 0 2 ) 308 4: ( 3 4 ) 309 5: ( 4 ) 310 6: ( 5 ) 311 7: ( 6 ) 312 8: ( 0 6 ) 313} 314 315In-edges, loops listed once even if IGRAPH_LOOPS_TWICE is given: { 316 0: ( 3 8 ) 317 1: ( 0 ) 318 2: ( 1 2 ) 319 3: ( 0 2 ) 320 4: ( 3 4 ) 321 5: ( 4 ) 322 6: ( 5 ) 323 7: ( 6 ) 324 8: ( 0 6 ) 325} 326 327Out-edges, loops also eliminated: { 328 0: ( 1 3 8 ) 329 1: ( 2 ) 330 2: ( 3 ) 331 3: ( 0 4 ) 332 4: ( 5 ) 333 5: ( 6 ) 334 6: ( 7 8 ) 335 7: ( ) 336 8: ( 0 ) 337} 338 339Out-edges, loops listed once: { 340 0: ( 1 3 8 ) 341 1: ( 2 ) 342 2: ( 2 3 ) 343 3: ( 0 4 ) 344 4: ( 4 5 ) 345 5: ( 6 ) 346 6: ( 7 8 ) 347 7: ( ) 348 8: ( 0 ) 349} 350 351Out-edges, loops listed once even if IGRAPH_LOOPS_TWICE is given: { 352 0: ( 1 3 8 ) 353 1: ( 2 ) 354 2: ( 2 3 ) 355 3: ( 0 4 ) 356 4: ( 4 5 ) 357 5: ( 6 ) 358 6: ( 7 8 ) 359 7: ( ) 360 8: ( 0 ) 361} 362 363In- and out-edges, loops also eliminated: { 364 0: ( 1 3 8 ) 365 1: ( 0 2 ) 366 2: ( 1 3 ) 367 3: ( 0 2 4 ) 368 4: ( 3 5 ) 369 5: ( 4 6 ) 370 6: ( 5 7 8 ) 371 7: ( 6 ) 372 8: ( 0 6 ) 373} 374 375In- and out-edges, loops listed once: { 376 0: ( 1 3 8 ) 377 1: ( 0 2 ) 378 2: ( 1 2 3 ) 379 3: ( 0 2 4 ) 380 4: ( 3 4 5 ) 381 5: ( 4 6 ) 382 6: ( 5 7 8 ) 383 7: ( 6 ) 384 8: ( 0 6 ) 385} 386 387In- and out-edges, loops listed twice: { 388 0: ( 1 3 8 ) 389 1: ( 0 2 ) 390 2: ( 1 2 2 3 ) 391 3: ( 0 2 4 ) 392 4: ( 3 4 4 5 ) 393 5: ( 4 6 ) 394 6: ( 5 7 8 ) 395 7: ( 6 ) 396 8: ( 0 6 ) 397} 398 399============================================================ 400 401Testing lazy multiple edge elimination in directed graph 402 403In-edges, loops also eliminated: { 404 0: ( 3 8 ) 405 1: ( 0 ) 406 2: ( 1 ) 407 3: ( 0 2 ) 408 4: ( 3 ) 409 5: ( 4 ) 410 6: ( 5 ) 411 7: ( 6 ) 412 8: ( 0 6 ) 413} 414 415In-edges, loops listed once: { 416 0: ( 3 8 ) 417 1: ( 0 ) 418 2: ( 1 2 ) 419 3: ( 0 2 ) 420 4: ( 3 4 ) 421 5: ( 4 ) 422 6: ( 5 ) 423 7: ( 6 ) 424 8: ( 0 6 ) 425} 426 427In-edges, loops listed once even if IGRAPH_LOOPS_TWICE is given: { 428 0: ( 3 8 ) 429 1: ( 0 ) 430 2: ( 1 2 ) 431 3: ( 0 2 ) 432 4: ( 3 4 ) 433 5: ( 4 ) 434 6: ( 5 ) 435 7: ( 6 ) 436 8: ( 0 6 ) 437} 438 439Out-edges, loops also eliminated: { 440 0: ( 1 3 8 ) 441 1: ( 2 ) 442 2: ( 3 ) 443 3: ( 0 4 ) 444 4: ( 5 ) 445 5: ( 6 ) 446 6: ( 7 8 ) 447 7: ( ) 448 8: ( 0 ) 449} 450 451Out-edges, loops listed once: { 452 0: ( 1 3 8 ) 453 1: ( 2 ) 454 2: ( 2 3 ) 455 3: ( 0 4 ) 456 4: ( 4 5 ) 457 5: ( 6 ) 458 6: ( 7 8 ) 459 7: ( ) 460 8: ( 0 ) 461} 462 463Out-edges, loops listed once even if IGRAPH_LOOPS_TWICE is given: { 464 0: ( 1 3 8 ) 465 1: ( 2 ) 466 2: ( 2 3 ) 467 3: ( 0 4 ) 468 4: ( 4 5 ) 469 5: ( 6 ) 470 6: ( 7 8 ) 471 7: ( ) 472 8: ( 0 ) 473} 474 475In- and out-edges, loops also eliminated: { 476 0: ( 1 3 8 ) 477 1: ( 0 2 ) 478 2: ( 1 3 ) 479 3: ( 0 2 4 ) 480 4: ( 3 5 ) 481 5: ( 4 6 ) 482 6: ( 5 7 8 ) 483 7: ( 6 ) 484 8: ( 0 6 ) 485} 486 487In- and out-edges, loops listed once: { 488 0: ( 1 3 8 ) 489 1: ( 0 2 ) 490 2: ( 1 2 3 ) 491 3: ( 0 2 4 ) 492 4: ( 3 4 5 ) 493 5: ( 4 6 ) 494 6: ( 5 7 8 ) 495 7: ( 6 ) 496 8: ( 0 6 ) 497} 498 499In- and out-edges, loops listed twice: { 500 0: ( 1 3 8 ) 501 1: ( 0 2 ) 502 2: ( 1 2 2 3 ) 503 3: ( 0 2 4 ) 504 4: ( 3 4 4 5 ) 505 5: ( 4 6 ) 506 6: ( 5 7 8 ) 507 7: ( 6 ) 508 8: ( 0 6 ) 509} 510 511============================================================ 512 513