Python implementation of the Cocke–Younger–Kasami algorithm (also known as CKY algorithm) for context-free-grammars, which I completed for a Natural Language Processing course.
The Symbol, Rule, and PCFG (sub)-classes were given as part of the assignment
See the Pseudocode for the algorith (Jurafsky d. & Martin j. h. speech and language processing (3rd ed.), Ch 17, (2019))