Skip to main content

Table 3 Ullmann faster than VF2 without optimization examples

From: Systematic benchmark of substructure search in molecular graphs - From Ullmann to VF2

SMARTS

Ullmann time

VF2 time

 

[ms]

[ms]

[#6]C(=[O,SX2])[CX4]C(=[O,SX2])[#6]

0.868

0.948

[O,SX2]=C([#6])[CX4]C(=[O,SX2])[#6]

0.654

0.271

[#6]C(=[O,SX2])C(=[O,SX2])[#6]

0.938

1.046

[O,SX2]=C([#6])C(=[O,SX2])[#6]

0.668

0.203

[a]˜*˜*-[CH3]

0.479

0.601

[CH3]-*˜*˜[a]

0.209

0.074

[C](=O)([C,c,O,S])[C,c,O,S]

0.400

0.558

O=[C]([C,c,O,S])[C,c,O,S]

0.403

0.144

[CD3H0,R](=[SD1H0])([ND2H1,R])([ND2H1,R])

0.251

0.510

[SD1H0]=[CD3H0,R]([ND2H1,R])([ND2H1,R])

0.242

0.076

[nD3H0,R](˜[OD1H0])(a)a

0.290

0.435

[OD1H0]˜[nD3H0,R](a)a

0.290

0.091

[R](-*(-*))˜*˜*˜*˜[a]

2.082

2.774

[a]˜*˜*˜*˜[R](-*(-*))

1.764

0.906

c([OH])c([OH])c([OH])

0.581

0.708

[OH]cc([OH])c([OH])

0.581

0.274

c1([OH])c(O[CH3])cccc1

0.805

0.947

[OH]c1c(O[CH3])cccc1

0.797

0.169

c1([OH])ccc(O[CH3])cc1

0.74

0.922

[OH]c1ccc(O[CH3])cc1.

0.734

0.193

  1. Examples for SMARTS without explicit hydrogens and recursive environments for which the Ullmann algorithm shows a superior run time compared to the VF2. Time measurements are averages over 100.000 search repetitions in milliseconds. Times are shown for the original SMARTS formulation (top) and an optimized version (bottom) according to our guidelines.