Files
rdkit/Code/GraphMol
John Mayfield 76ed536c87 Branch/vf2 optimisations (#2500)
* Remove out_1 and out_2, only need for directed graphs.

* Variable renaming, no other changes.

* Fix a couple things that were forgotten during the rename

* Only one of these counts is updated now.

* Add ifdef to enable/disable VF2Pruning

* Add degree bound check, could be pushed down to the generic VertexCheck predicate.

* The stack knows at each point what was added, by passing these into the Backtrack call the clone allocation can be removed.

* Indent and rename added_node1 to node1.

* Now the clone is removed we can add a member function to handle the recursion cleanly.

* Also make for MatchAll a member function.

* Set lim=0 to mean infinity.

* VF2Plus optimisation, when candidate is in the terminal set select from a mapped neighbours adjacency list.

* Optimisation hint.

* Use a struct for the Pair removing the need for double pointer and heap alloc/delete of the iterators.

* disable pruning by default (it's a bit quicker to not do this)

* update expected test results

The updated VF2 code can return symmetric results in a different order
than we were getting previously. The results are still correct, but they
change some of the downstream things that don't do symmetrization

* update expected java results
2019-06-30 04:49:24 +02:00
..
2019-06-28 09:57:00 -04:00
2019-06-28 09:57:00 -04:00
2019-06-28 09:57:00 -04:00
2019-06-28 09:57:00 -04:00
2019-06-07 12:44:51 -04:00
2019-06-28 09:57:00 -04:00
2019-06-28 09:57:00 -04:00
2019-06-28 09:57:00 -04:00
2019-06-28 09:57:00 -04:00
2019-06-28 09:57:00 -04:00
2006-05-06 22:20:08 +00:00
2019-06-28 09:57:00 -04:00
2019-06-30 04:49:24 +02:00
2019-06-28 09:57:00 -04:00
2019-06-28 09:57:00 -04:00
2019-06-28 09:57:00 -04:00
2019-06-28 09:57:00 -04:00
2019-06-28 09:57:00 -04:00
2019-06-28 09:57:00 -04:00
2019-06-28 09:57:00 -04:00
2019-06-28 09:57:00 -04:00
2019-06-28 09:57:00 -04:00
2019-06-28 09:57:00 -04:00
2019-05-22 09:23:44 -04:00
2019-06-28 09:57:00 -04:00
2019-04-16 12:05:47 -04:00
2019-06-28 09:57:00 -04:00
2019-01-21 11:31:02 -05:00
2006-05-06 22:20:08 +00:00
2019-04-16 12:05:47 -04:00
2019-06-07 12:44:51 -04:00
2019-03-10 21:43:20 -04:00
2018-07-16 10:27:08 -04:00
2018-07-14 12:32:38 -04:00
2019-06-24 23:07:19 -04:00
2019-06-24 23:07:19 -04:00
2019-04-16 12:05:47 -04:00
2019-04-16 12:05:47 -04:00
2019-05-22 09:23:44 -04:00
2019-04-16 12:05:47 -04:00
2019-04-16 12:05:47 -04:00
2019-05-10 08:25:31 +02:00
2019-04-26 16:43:35 +02:00
2019-04-16 12:05:47 -04:00
2019-06-28 09:57:00 -04:00
2019-05-22 09:23:44 -04:00
2018-11-18 10:41:33 -05:00
2015-11-14 14:58:11 +01:00
2018-07-25 09:14:17 +02:00
2018-01-08 20:06:42 -05:00
2019-04-16 12:05:47 -04:00
2019-05-30 18:45:57 +02:00
2019-05-09 11:25:40 -04:00
2019-04-16 12:05:47 -04:00
2019-05-10 08:25:31 +02:00
2019-04-16 12:05:47 -04:00
2019-04-16 12:05:47 -04:00
2019-03-01 13:22:01 -05:00
2019-04-16 12:05:47 -04:00
2019-04-16 12:05:47 -04:00
2019-06-04 15:41:20 +02:00
2019-04-16 12:05:47 -04:00
2019-06-04 15:41:20 +02:00
2018-07-25 09:14:17 +02:00
2006-05-06 22:20:08 +00:00
2018-02-15 05:39:02 +01:00
2019-04-16 12:05:47 -04:00
2019-04-16 12:05:47 -04:00
2018-07-25 09:14:17 +02:00
2018-11-18 10:41:33 -05:00
2019-04-16 12:05:47 -04:00
2019-05-22 09:23:44 -04:00
2019-03-08 16:42:54 +01:00
2016-09-23 04:58:46 +02:00
2019-04-26 16:43:35 +02:00
2019-05-30 18:45:57 +02:00