IP Library Granted Patent US 11,615,867
Granted Patent B2
US 11,615,867 · App. 16/685,681 · Granted Mar 28, 2023

Molecular structure editor with version control and simultaneous editing operations

Inventor: Jharrod Lafon (Sante Fe, NM)
Assignee: OPENEYE SCIENTIFIC SOFTWARE, INC.
G16C20/90G16C20/20
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,615,867
App. No.
16/685,681
Granted
Mar 28, 2023
Kind
B2
Abstract

Computer-based methods that permit two or more users to perform simultaneous edits on a digitally encoded molecular structure. The methods use properties of conflict-free replicated data types (CRDT's) and causal trees to provide a distributed system which can manage the life-cycle of virtual molecular structures; including simultaneous editing, versioning, and provenance. Applications of the technology include, but are not limited to: simultaneous computer aided design of molecules in 2D or 3D in which users may be distributed across multiple computers and in which the need for computer time synchronization (offline or online editing) is obviated; version control and provenance tracking of a virtual molecule; and other types of data used in computer aided molecular design activities.

Claims (36)

1. A non-transitory machine-readable medium having executable instructions to cause one or more processing units to perform a method of editing a molecular structure, the method comprising:

receiving a plurality of edits to the molecular structure; and

for each of the plurality of edits,

timestamping that edit when the edit does not include a timestamp, wherein each of the plurality of edits for this molecular structure has a different timestamp, and

updating a conflict-free data structure associated with the molecular structure using at least that edit, wherein the conflict-free data structure incorporates the plurality of edits that have been made to the molecular structure into a set of the ordered set of immutable edits.

2. The machine-readable medium of claim 1 , wherein the plurality of edits includes at least one remotely generated edit that was generated by device different from the device receiving the plurality of edits.

3. The machine-readable medium of claim 1 , wherein the timestamping comprises timestamping the edit with a Lamport timestamp.

4. The machine-readable medium of claim 3 , wherein the Lamport timestamp uses at least a Lamport logical clock.

5. The machine-readable medium of claim 1 , wherein the timestamping comprises:

incrementing a clock; and

timestamping the edit using a current value of the clock.

6. The machine-readable medium of claim 1 , wherein each of the plurality of edits has a unique identifier.

7. The machine-readable medium of claim 1 , wherein each of the plurality of edits is at least one of adding an atom, deleting an atom, adding a bond, deleting a bond, changing an atom characteristic, and changing a bond characteristic.

8. The machine-readable medium of claim 1 , further comprising:

cryptographically signing each of the plurality of the edits that were locally generated such that an authorship of each of the plurality of edits can be verified.

9. The machine-readable medium of claim 1 , wherein each of the plurality of edits has a parent edit.

10. The machine-readable medium of claim 1 , further comprising:

ordering the plurality of edits using at least the timestamp of each of the plurality of edits.

11. The machine-readable medium of claim 1 , further comprising:

sending a locally generated edit to a molecule device, where the molecule device propagates that edit to another device.

12. A method of editing a molecular structure, the method comprising:

receiving a plurality of edits to the molecular structure from; and

for each of the plurality of edits,

timestamping that edit when the edit does not include a timestamp, wherein each of the plurality of edits for this molecular structure has a different timestamp, and

updating a conflict-free data structure associated with the molecular structure using at least that edit, wherein the conflict-free data structure incorporates the plurality of edits that have been made to the molecular structure into a set of the ordered set of immutable edits.

13. The method of claim 12 , wherein the plurality of edits includes at least one remotely generated edit that was generated by device different from the device receiving the plurality of edits.

14. The method of claim 12 , wherein the timestamping comprises timestamping the edit with a Lamport timestamp.

15. The method of claim 14 , wherein the Lamport timestamp uses at least a Lamport logical clock.

16. The method of claim 12 , wherein the timestamping comprises:

incrementing a clock; and

timestamping the edit using a current value of the clock.

17. The method of claim 12 , wherein each of the plurality of edits has a unique identifier.

18. The method of claim 12 , wherein each of the plurality of edits is at least one of adding an atom, deleting an atom, adding a bond, deleting a bond, change an atom characteristic, and change a bond characteristic.

19. The method of claim 12 , further comprising:

cryptographically signing each of the plurality of the edits that were locally generated such that an authorship of each of the plurality of edits can be verified.

20. The method of claim 12 , wherein each of the plurality of edits has a parent edit.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 15, 2019
From: LAFON, JHARROD
To: OPENEYE SCIENTIFIC SOFTWARE, INC.
Reel/Frame 051025/0081 →
Continuity (2)
Provisional Application 62768047 · Nov 15, 2018
Related Publication 20200160940A1 · May 21, 2020
Cited By (1)
US 12,455,800