sentence <- article? subject verb ( preposition? article? (object preposition object / object )) spaces <- [ ]* article <- spaces ("the two" / "the" / "a") preposition <- spaces ("on" / "at the" / "to" / "with") subject <- spaces ("man" / "men" / "dogs" / "dog" / "cat") verb <- spaces ("sat" / "saw" / "shot" / "gave") object <- spaces ("cannon" / "hat" / "mat")