Ticket #14477: trac14477.2.patch
File trac14477.2.patch, 20.2 KB (added by , 10 years ago) |
---|
-
sage/databases/sql_db.py
# HG changeset patch # User R. Andrew Ohana <andrew.ohana@gmail.com> # Date 1366714685 25200 # Node ID 03ca7c9d3f1cc032674824af5b9467e55aa31176 # Parent c8ae9724d3cfad1837a130d50ac5c83a811ec221 sort graph database queries by graph6 column diff --git a/sage/databases/sql_db.py b/sage/databases/sql_db.py
a b 649 649 C? [0, 0, 0, 0] 650 650 C@ [0, 0, 1, 1] 651 651 CB [0, 1, 1, 2] 652 CK [1, 1, 1, 1]653 652 CF [1, 1, 1, 3] 654 653 CJ [0, 2, 2, 2] 654 CK [1, 1, 1, 1] 655 655 CL [1, 1, 2, 2] 656 656 CN [1, 2, 2, 3] 657 657 C] [2, 2, 2, 2] -
sage/graphs/generic_graph.py
diff --git a/sage/graphs/generic_graph.py b/sage/graphs/generic_graph.py
a b 16358 16358 (24, [(2,3), (1,2), (1,4)]) 16359 16359 (4, [(2,3), (1,4)]) 16360 16360 (2, [(1,2)]) 16361 (8, [(1,2), (1,4)(2,3)])16362 16361 (6, [(1,2), (1,4)]) 16363 16362 (6, [(2,3), (1,2)]) 16363 (8, [(1,2), (1,4)(2,3)]) 16364 16364 (2, [(1,4)(2,3)]) 16365 16365 (2, [(1,2)]) 16366 16366 (8, [(2,3), (1,3)(2,4), (1,4)]) -
sage/graphs/graph.py
diff --git a/sage/graphs/graph.py b/sage/graphs/graph.py
a b 442 442 sage: Q.show() 443 443 Graph6 444 444 -------------------- 445 F?`po 446 F?gqg 445 447 F@?]O 446 448 F@OKg 447 F?`po448 F?gqg449 FIAHo450 449 F@R@o 451 450 FA_pW 451 FEOhW 452 452 FGC{o 453 F EOhW453 FIAHo 454 454 455 455 Show each graph as you iterate through the results: 456 456 -
sage/graphs/graph_database.py
diff --git a/sage/graphs/graph_database.py b/sage/graphs/graph_database.py
a b 342 342 ------------------------------------------------------------ 343 343 A_ 2 [1, 1] 344 344 BW 3 [1, 1, 2] 345 CF 4 [1, 1, 1, 3] 345 346 CK 4 [1, 1, 1, 1] 346 CF 4 [1, 1, 1, 3]347 347 CL 4 [1, 1, 2, 2] 348 348 CN 4 [1, 2, 2, 3] 349 D_K 5 [1, 1, 1, 1, 2]350 349 D?{ 5 [1, 1, 1, 1, 4] 351 350 D@s 5 [1, 1, 1, 2, 3] 351 D@{ 5 [1, 1, 2, 2, 4] 352 352 DBg 5 [1, 1, 2, 2, 2] 353 DBk 5 [1, 1, 2, 3, 3] 354 DIk 5 [1, 2, 2, 2, 3] 355 DK[ 5 [1, 2, 2, 2, 3] 356 D_K 5 [1, 1, 1, 1, 2] 353 357 D`K 5 [1, 1, 2, 2, 2] 354 D@{ 5 [1, 1, 2, 2, 4]355 DIk 5 [1, 2, 2, 2, 3]356 DBk 5 [1, 1, 2, 3, 3]357 DK[ 5 [1, 2, 2, 2, 3]358 E@Q? 6 [1, 1, 1, 1, 1, 1]359 E_?w 6 [1, 1, 1, 1, 1, 3]360 E?N? 6 [1, 1, 1, 1, 2, 2]361 E_Cg 6 [1, 1, 1, 1, 2, 2]362 358 E?Bw 6 [1, 1, 1, 1, 1, 5] 363 359 E?Fg 6 [1, 1, 1, 1, 2, 4] 360 E?N? 6 [1, 1, 1, 1, 2, 2] 361 E?NG 6 [1, 1, 1, 1, 3, 3] 364 362 E@FG 6 [1, 1, 1, 2, 2, 3] 365 E?NG 6 [1, 1, 1, 1, 3, 3]366 363 E@N? 6 [1, 1, 2, 2, 2, 2] 364 E@Q? 6 [1, 1, 1, 1, 1, 1] 365 E@QW 6 [1, 1, 1, 2, 2, 3] 367 366 E@YO 6 [1, 1, 2, 2, 2, 2] 368 E@QW 6 [1, 1, 1, 2, 2, 3] 367 E_?w 6 [1, 1, 1, 1, 1, 3] 368 E_Cg 6 [1, 1, 1, 1, 2, 2] 369 369 E_Cw 6 [1, 1, 1, 2, 2, 3] 370 370 E_Ko 6 [1, 1, 2, 2, 2, 2] 371 F??^? 7 [1, 1, 1, 1, 1, 2, 3] 372 F?LCG 7 [1, 1, 1, 1, 2, 2, 2] 371 373 FK??W 7 [1, 1, 1, 1, 1, 1, 2] 374 FK?GW 7 [1, 1, 1, 1, 2, 2, 2] 372 375 F_?@w 7 [1, 1, 1, 1, 1, 1, 4] 373 F??^? 7 [1, 1, 1, 1, 1, 2, 3]374 376 F_?Hg 7 [1, 1, 1, 1, 1, 2, 3] 375 F?LCG 7 [1, 1, 1, 1, 2, 2, 2]376 377 F_?XO 7 [1, 1, 1, 1, 2, 2, 2] 377 FK?GW 7 [1, 1, 1, 1, 2, 2, 2]378 378 """ 379 379 if graph_db == None: graph_db = GraphDatabase() 380 380 if query_dict is not None: … … 475 475 # substitue disp_str and join_str back into self's query string 476 476 self.__query_string__ = re.sub('SELECT.*WHERE ', disp_str + join_str + \ 477 477 'WHERE ', self.__query_string__) 478 self.__query_string__ += ' ORDER BY graph_data.graph6' 478 479 479 480 def query_iterator(self): 480 481 """ … … 485 486 sage: Q = GraphQuery(display_cols=['graph6'],num_vertices=7, diameter=5) 486 487 sage: for g in Q: 487 488 ... print g.graph6_string() 489 F?`po 490 F?gqg 488 491 F@?]O 489 492 F@OKg 490 F?`po491 F?gqg492 FIAHo493 493 F@R@o 494 494 FA_pW 495 FEOhW 495 496 FGC{o 496 FEOhW 497 497 FIAHo 498 498 sage: Q = GraphQuery(display_cols=['graph6'],num_vertices=7, diameter=5) 499 499 sage: it = iter(Q) 500 500 sage: while True: 501 501 ... try: print it.next().graph6_string() 502 502 ... except StopIteration: break 503 F?`po 504 F?gqg 503 505 F@?]O 504 506 F@OKg 505 F?`po506 F?gqg507 FIAHo508 507 F@R@o 509 508 FA_pW 509 FEOhW 510 510 FGC{o 511 FEOhW 512 511 FIAHo 513 512 """ 514 513 return iter(self.get_graphs_list()) 515 514 … … 549 548 C? 4 [0, 0, 0, 0] 550 549 C@ 4 [0, 0, 1, 1] 551 550 CB 4 [0, 1, 1, 2] 552 CK 4 [1, 1, 1, 1]553 551 CF 4 [1, 1, 1, 3] 554 552 CJ 4 [0, 2, 2, 2] 553 CK 4 [1, 1, 1, 1] 555 554 CL 4 [1, 1, 2, 2] 556 555 CN 4 [1, 2, 2, 3] 557 556 C] 4 [2, 2, 2, 2] … … 574 573 C? 24 575 574 C@ 4 576 575 CB 2 577 CK 8578 576 CF 6 579 577 CJ 6 578 CK 8 580 579 CL 2 581 580 CN 2 582 581 C] 8 … … 942 941 C? 4 [0, 0, 0, 0] 943 942 C@ 4 [0, 0, 1, 1] 944 943 CB 4 [0, 1, 1, 2] 945 CK 4 [1, 1, 1, 1]946 944 CF 4 [1, 1, 1, 3] 947 945 CJ 4 [0, 2, 2, 2] 946 CK 4 [1, 1, 1, 1] 948 947 CL 4 [1, 1, 2, 2] 949 948 CN 4 [1, 2, 2, 3] 950 949 C] 4 [2, 2, 2, 2] … … 952 951 D?? 5 [0, 0, 0, 0, 0] 953 952 D?C 5 [0, 0, 0, 1, 1] 954 953 D?K 5 [0, 0, 1, 1, 2] 954 D?[ 5 [0, 1, 1, 1, 3] 955 D?{ 5 [1, 1, 1, 1, 4] 956 D@K 5 [0, 0, 2, 2, 2] 955 957 D@O 5 [0, 1, 1, 1, 1] 956 D?[ 5 [0, 1, 1, 1, 3]957 D@K 5 [0, 0, 2, 2, 2]958 D_K 5 [1, 1, 1, 1, 2]959 958 D@S 5 [0, 1, 1, 2, 2] 960 D?{ 5 [1, 1, 1, 1, 4]961 959 D@[ 5 [0, 1, 2, 2, 3] 962 960 D@s 5 [1, 1, 1, 2, 3] 961 D@{ 5 [1, 1, 2, 2, 4] 962 DBW 5 [0, 2, 2, 2, 2] 963 DB[ 5 [0, 2, 2, 3, 3] 963 964 DBg 5 [1, 1, 2, 2, 2] 964 DBW 5 [0, 2, 2, 2, 2] 965 D`K 5 [1, 1, 2, 2, 2] 966 D@{ 5 [1, 1, 2, 2, 4] 967 DB[ 5 [0, 2, 2, 3, 3] 965 DBk 5 [1, 1, 2, 3, 3] 968 966 DIk 5 [1, 2, 2, 2, 3] 969 DBk 5 [1, 1, 2, 3, 3]970 967 DK[ 5 [1, 2, 2, 2, 3] 971 968 DLo 5 [2, 2, 2, 2, 2] 969 D_K 5 [1, 1, 1, 1, 2] 970 D`K 5 [1, 1, 2, 2, 2] 972 971 E??? 6 [0, 0, 0, 0, 0, 0] 973 972 E??G 6 [0, 0, 0, 0, 1, 1] 974 973 E??W 6 [0, 0, 0, 1, 1, 2] 974 E??w 6 [0, 0, 1, 1, 1, 3] 975 E?@w 6 [0, 1, 1, 1, 1, 4] 976 E?Bw 6 [1, 1, 1, 1, 1, 5] 977 E?CW 6 [0, 0, 0, 2, 2, 2] 975 978 E?C_ 6 [0, 0, 1, 1, 1, 1] 976 E??w 6 [0, 0, 1, 1, 1, 3]977 E?CW 6 [0, 0, 0, 2, 2, 2]978 EG?W 6 [0, 1, 1, 1, 1, 2]979 979 E?Cg 6 [0, 0, 1, 1, 2, 2] 980 E@Q? 6 [1, 1, 1, 1, 1, 1]981 E?@w 6 [0, 1, 1, 1, 1, 4]982 980 E?Cw 6 [0, 0, 1, 2, 2, 3] 983 981 E?Dg 6 [0, 1, 1, 1, 2, 3] 984 E_?w 6 [1, 1, 1, 1, 1, 3]985 E?LO 6 [0, 1, 1, 2, 2, 2]986 E?N? 6 [1, 1, 1, 1, 2, 2]987 E?Ko 6 [0, 0, 2, 2, 2, 2]988 EGCW 6 [0, 1, 1, 2, 2, 2]989 E_Cg 6 [1, 1, 1, 1, 2, 2]990 E?Bw 6 [1, 1, 1, 1, 1, 5]991 982 E?Dw 6 [0, 1, 1, 2, 2, 4] 992 983 E?Fg 6 [1, 1, 1, 1, 2, 4] 984 E?Ko 6 [0, 0, 2, 2, 2, 2] 993 985 E?Kw 6 [0, 0, 2, 2, 3, 3] 986 E?LO 6 [0, 1, 1, 2, 2, 2] 987 E?LW 6 [0, 1, 1, 2, 3, 3] 988 E?N? 6 [1, 1, 1, 1, 2, 2] 989 E?NG 6 [1, 1, 1, 1, 3, 3] 990 E@FG 6 [1, 1, 1, 2, 2, 3] 994 991 E@HW 6 [0, 1, 2, 2, 2, 3] 995 E@FG 6 [1, 1, 1, 2, 2, 3]996 E?LW 6 [0, 1, 1, 2, 3, 3]997 E?NG 6 [1, 1, 1, 1, 3, 3]998 992 E@N? 6 [1, 1, 2, 2, 2, 2] 993 E@Ow 6 [0, 1, 2, 2, 2, 3] 994 E@Q? 6 [1, 1, 1, 1, 1, 1] 995 E@QW 6 [1, 1, 1, 2, 2, 3] 996 E@T_ 6 [0, 2, 2, 2, 2, 2] 999 997 E@YO 6 [1, 1, 2, 2, 2, 2] 1000 E@QW 6 [1, 1, 1, 2, 2, 3] 1001 E@Ow 6 [0, 1, 2, 2, 2, 3] 998 EG?W 6 [0, 1, 1, 1, 1, 2] 999 EGCW 6 [0, 1, 1, 2, 2, 2] 1000 E_?w 6 [1, 1, 1, 1, 1, 3] 1001 E_Cg 6 [1, 1, 1, 1, 2, 2] 1002 1002 E_Cw 6 [1, 1, 1, 2, 2, 3] 1003 E@T_ 6 [0, 2, 2, 2, 2, 2]1004 1003 E_Ko 6 [1, 1, 2, 2, 2, 2] 1005 1004 F???? 7 [0, 0, 0, 0, 0, 0, 0] 1006 1005 F???G 7 [0, 0, 0, 0, 0, 1, 1] 1007 1006 F???W 7 [0, 0, 0, 0, 1, 1, 2] 1007 F???w 7 [0, 0, 0, 1, 1, 1, 3] 1008 F??@w 7 [0, 0, 1, 1, 1, 1, 4] 1009 F??Bw 7 [0, 1, 1, 1, 1, 1, 5] 1010 F??GW 7 [0, 0, 0, 0, 2, 2, 2] 1008 1011 F??G_ 7 [0, 0, 0, 1, 1, 1, 1] 1009 F???w 7 [0, 0, 0, 1, 1, 1, 3]1010 F??GW 7 [0, 0, 0, 0, 2, 2, 2]1011 F@??W 7 [0, 0, 1, 1, 1, 1, 2]1012 1012 F??Gg 7 [0, 0, 0, 1, 1, 2, 2] 1013 F?Ca? 7 [0, 1, 1, 1, 1, 1, 1]1014 F??@w 7 [0, 0, 1, 1, 1, 1, 4]1015 1013 F??Gw 7 [0, 0, 0, 1, 2, 2, 3] 1016 1014 F??Hg 7 [0, 0, 1, 1, 1, 2, 3] 1017 FG??w 7 [0, 1, 1, 1, 1, 1, 3]1018 F??XO 7 [0, 0, 1, 1, 2, 2, 2]1019 F??Z? 7 [0, 1, 1, 1, 1, 2, 2]1020 F??Wo 7 [0, 0, 0, 2, 2, 2, 2]1021 F@?GW 7 [0, 0, 1, 1, 2, 2, 2]1022 FK??W 7 [1, 1, 1, 1, 1, 1, 2]1023 FG?Gg 7 [0, 1, 1, 1, 1, 2, 2]1024 F??Bw 7 [0, 1, 1, 1, 1, 1, 5]1025 1015 F??Hw 7 [0, 0, 1, 1, 2, 2, 4] 1026 1016 F??Jg 7 [0, 1, 1, 1, 1, 2, 4] 1017 F??Wo 7 [0, 0, 0, 2, 2, 2, 2] 1018 F??Ww 7 [0, 0, 0, 2, 2, 3, 3] 1019 F??XO 7 [0, 0, 1, 1, 2, 2, 2] 1020 F??XW 7 [0, 0, 1, 1, 2, 3, 3] 1021 F??Z? 7 [0, 1, 1, 1, 1, 2, 2] 1022 F??ZG 7 [0, 1, 1, 1, 1, 3, 3] 1023 F??^? 7 [1, 1, 1, 1, 1, 2, 3] 1024 F?CJG 7 [0, 1, 1, 1, 2, 2, 3] 1025 F?CPW 7 [0, 0, 1, 2, 2, 2, 3] 1026 F?CZ? 7 [0, 1, 1, 2, 2, 2, 2] 1027 F?C_w 7 [0, 0, 1, 2, 2, 2, 3] 1028 F?Ca? 7 [0, 1, 1, 1, 1, 1, 1] 1029 F?CaW 7 [0, 1, 1, 1, 2, 2, 3] 1030 F?Ch_ 7 [0, 0, 2, 2, 2, 2, 2] 1031 F?CqO 7 [0, 1, 1, 2, 2, 2, 2] 1032 F?LCG 7 [1, 1, 1, 1, 2, 2, 2] 1033 F@??W 7 [0, 0, 1, 1, 1, 1, 2] 1034 F@?GW 7 [0, 0, 1, 1, 2, 2, 2] 1035 FG??w 7 [0, 1, 1, 1, 1, 1, 3] 1036 FG?Gg 7 [0, 1, 1, 1, 1, 2, 2] 1037 FG?Gw 7 [0, 1, 1, 1, 2, 2, 3] 1038 FG?Wo 7 [0, 1, 1, 2, 2, 2, 2] 1039 FK??W 7 [1, 1, 1, 1, 1, 1, 2] 1040 FK?GW 7 [1, 1, 1, 1, 2, 2, 2] 1027 1041 F_?@w 7 [1, 1, 1, 1, 1, 1, 4] 1028 F??Ww 7 [0, 0, 0, 2, 2, 3, 3]1029 F?CPW 7 [0, 0, 1, 2, 2, 2, 3]1030 F?CJG 7 [0, 1, 1, 1, 2, 2, 3]1031 F??^? 7 [1, 1, 1, 1, 1, 2, 3]1032 F??XW 7 [0, 0, 1, 1, 2, 3, 3]1033 F??ZG 7 [0, 1, 1, 1, 1, 3, 3]1034 F?CZ? 7 [0, 1, 1, 2, 2, 2, 2]1035 1042 F_?Hg 7 [1, 1, 1, 1, 1, 2, 3] 1036 F?CqO 7 [0, 1, 1, 2, 2, 2, 2]1037 F?CaW 7 [0, 1, 1, 1, 2, 2, 3]1038 F?LCG 7 [1, 1, 1, 1, 2, 2, 2]1039 F?C_w 7 [0, 0, 1, 2, 2, 2, 3]1040 FG?Gw 7 [0, 1, 1, 1, 2, 2, 3]1041 F?Ch_ 7 [0, 0, 2, 2, 2, 2, 2]1042 FG?Wo 7 [0, 1, 1, 2, 2, 2, 2]1043 1043 F_?XO 7 [1, 1, 1, 1, 2, 2, 2] 1044 FK?GW 7 [1, 1, 1, 1, 2, 2, 2]1045 1044 """ 1046 1045 return GraphQuery(self, query_dict, display_cols, **kwds) 1047 1046