STM - siegebell/vscoq GitHub Wiki
Sentences: each command sent to CoqTop is a "sentence"; they are typically terminated by ".\s" (followed by whitespace or EOF). Examples: "Lemma a: True.", "(* asdf *) Qed.", "auto; reflexivity." In practice, the command sentences sent to CoqTop are terminated at the "." and start with any previous whitespace. Each sentence is assigned a unique stateId after being sent to Coq (via Add). States:
- Processing: has been received by Coq and has no obvious syntax error (that would prevent future parsing)
- Processed:
- InProgress:
- Incomplete: the validity of the sentence cannot be checked due to a prior error
- Complete:
- Error: the sentence has an error error
State ID 0 is reserved as 'null' or 'default' state. (The 'query' command suggests that it might also refer to the currently-focused state, but I have not tested this yet). The first command should be added to state ID 0. Queries are typically performed w.r.t. state ID 0.