AOCR Project

About AOCR

With a few seconds of your time you can help AOCR becoming better by filling out the survey form.

The author of the AOCR Project

Dr. Luca Ermanni


appreciates your interest for this project, which he believes could play a significant role in the discovery of new organic synthesis.

In 1993, after I had completed a post-doctorate in mathematical logic, I examined some organic reaction mechanisms under a mathematical, more precisely a graph theoretical, view point. I was determined to apply the way of thinking that I had developed in the 12 years before, during which I occupied myself exclusively with mathematics and particularly with mathematical logic, to chemistry, which is the science in which I obtained a university degree before turning to math.

While examining the reaction mechanisms, an operation on graphs immediately struck my attention. It appeared to me that every organic reaction step could be seen as the result of this operation. Also it appeared to me that not every result of the operation was an organic reaction step. For this reason I found a way to strengthen the operation with additional conditions in such a way that every application resulted in a chemically correct organic reaction step.

When the operation was examined more carefully it revealed interesting mathematical properties that led me to think that a procedure subsequently applying this operation to a graph could be the representation of a procedure computing organic reactions by generating one after the other all products that can be obtained from the starting compounds. The same procedure would of course be able to answer the question whether a target compound could be synthesized from others and, if yes, yield a synthesis.

Once the mathematical foundation were set I decided to implement the procedure first on UNIX machines using the C language. A few years later motivated by the success of the tests, the program was wrapped into a graphical interface written in the Java language that made it much easier to prepare and view the formulas for the input, display the output and run the computation. About at the same time a version for Microsoft Windows became available. Since 2004 it also runs on Linux platforms.

The program corresponds exactly to the initially conceived procedure and is able to

  • find a synthesis of a target product from the starting compounds given the reaction step rules, if one exists and
  • generate all reaction products of the starting compounds.

The following examples were prepared and computed with the aocr-2.0 Utility that is available for download from this site. (The Java Applet-Plug-in must be enabled in your browser to view the formulas of these examples.)

  1. Synthesis of lanosterol from squalene oxide
  2. Robinson annellation reaction
  3. A reaction of a carbonic acid epoxide
  4. A radical reaction: synthesis of nitrogen dioxide
  5. List of the reaction step rules used in the examples

Since 2008 the focus of my work has been almost exclusively the mathematical examination of the organic chemical synthesis, conceived initially as a graph theoretical problem and subsequently extended into the much more general domain of model theory, which is a branch of mathematical logic.

The results of this examination are presented in a manuscript entitled Synthesizability.