Presumably, we would expect that any writing software should be able to detect and correct grammatical mistakes. In addition, some can also provide useful information such as detailed explanation with examples of usage to aid users’ understanding when they are dealing with grammars. This can be a good platform to reduce and in a way educates the user so that less grammatical mistakes will happen in the future.
Writing software usually come with a predefined set of library or rules consisting of various aspects of writing including grammar, vocabulary, commonly wrong word usage and so forth. In a much general explanation, the way writing software work is by comparing what you have typed into the software or your word processor against the predefined rules. A specific key or command is usually assigned that you need to activate to trigger a “detect and repair” process. Based upon these predefined rules, the writing software would then suggests you with corrections or automatically corrects grammatical mistakes that you have made.
In a more detailed approach to see how writing software can reduce grammatical mistakes, we can look into the components that made up grammar. As you would know, grammar is the system of a language. It defines the rule that you need to abide to so that what you write or speak can be easily understood. But the irony is sometimes you don’t need to know proper grammar so long as what have written is understandable – imagine ourselves in our childhood not knowing anything about grammar and yet we can be understood in some extent. Grammar makes learning a language a quick and efficient process.
By using specific rules that are coded in the writing software’s mechanism, a “string” or texts that you type is compared and logically determined if it is correct or otherwise. This can go from a single word check to sentence check for instance.
Have a look at an example of one grammar rule, definition and examples of usage here.
Because of the program statements (in programming language) for checking made, any mistakes will raise a specific set of other program statements that will alert the user so that corrections can be made. Writing software would typically parse your sentence into chunks of words for comparison. Elements of this sentence would then be checked word by word through programming languages’ logic construction
Other related keywords or phrase that you can use to study more about writing software can be linguistics in artificial intelligence in the field of cognitive science. Do note that they might be very technically-inclined.