Learning Regular Languages with RPNI Algorithm
5 points by vrthra
5 points by vrthra
This post provides a tutorial of the RPNI algorithm for inferring input grammars when given only accepted and rejected examples (positive and negative examples). I had posted the L* algorithm before.
This is part of my ongoing effort to document various algorithms relating to grammars including various algorithms for parsing, random sampling of fixed size strings, and grammar fuzzing.
I am looking for feedback on structure as well as content as before. The content is oriented toward software engineering students with limited knowledge or interest in formal theory. The implementation prioritizes clarity over speed.
Note: Pyodide takes a little time to initialize, but it should be faster to initialize than spinning up the binder service from Jupyter (but slower to execute).