Skip to content

Possible missing stereo clean? #9656

Open

Description

@d-b-w

I think that we should be cleaning stereochemistry from this center:

Image

(The SMILES is C=C1C[C@H]2CC(=C)C[C@@H](C1)[C@H]2C). Inverting the central "stereocenter" here wouldn't be a new molecule, it would just be a rotation of the same molecule.

I think this is analogous to C[C@@H]([C@@H](C)O)[C@@H](C)O - we do clean stereo on that molecule, it becomes CC([C@@H](C)O)[C@@H](C)O on SMILES round-trip through RDKit:

Image

Raising as an "issue" rather than a PR because I want a sanity check first.

This is relevant to some performance work that @ricrogz is doing in the CIPLabeler. It was having some trouble with molecules like the first example here... But I think it shouldn't even have been doing anything!

Activity

  1. ricrogz commented on Oct 1, 2026

    @ricrogz
    Contributor

    I think that if the atom truly wasn't stereo at all, it shouldn't matter if that parity is present or not, the same way that it doesn't matter if we specify an "extra" parity in C[C@H](C)C: the central atom is not chiral (or pseudochiral), so adding the parity (or not cleaning it up) has no effect at all.

    But for the case you presented, it seems to have some influence:

    Image

    (the representation is from CDK Depict, which uses the original implementation from https://github.com/SiMolecule/centres, to avoid any doubts about RDKit's particular implementation of the parities or CIP labeling)

    The stereocenter itself is not stereo on the global level, but it seems to be when considering the local environment to use it as an auxiliary reference when resolving the stereo labels of the bridgehead atoms (since the stereo labels change when the parity is removed).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions