Thanks for posting these questions as they are central to the design of STACK!
STACK is designed to establish mathematical properties, such as "equivalence". Unfortunately this word has a number of different meanings, which are potentially confused. So, I have written some Maxima code to provide the teacher with "answer tests" which help establish if two expressions are equivalent in a number of different senses.
One sense it "algebraic equivalence" which basically tests if the difference evaluates (aka "simplifies") to zero.
A very useful sense is "up to commutativity and associativity of addition and multiplication, together with their inverses minus and division"? For example \[a+b=b+a\mbox{,}\] but \[x+x\neq 2x\mbox{.}\] This is very useful in elementary algebra, where we want the form of the answer exactly. Simplification is automatically switched off when this test is applied, otherwise it makes no sense. This is basically the case you describe.
The tests are described in
https://github.com/maths/moodle-qtype_stack/blob/master/doc/en/Authoring/Answer_tests.md
It is very unusual to only check one property. Unfortunately teachers are used to making many different and subtle judgements, and it is difficult to begin with to articulate exactly what you want. E.g. you might want both
- equivalence with the correct answer
- in a particular form (e.g. factored)
How to use more than one test, and link them together is described in the authoring guide.
https://github.com/maths/moodle-qtype_stack/blob/master/doc/en/Authoring/Authoring_quick_start.md
I make no apologies that STACK is complex. It has a complex task to do. I'm very open to suggestions of how to improve the system and the documentation, and very much welcome contributions. If something isn't clear to you, please let me know. I forget what people don't know. I think all teachers do this from time to time!
I also replied to a similar formulation of this question in the quiz forum earlier...
https://moodle.org/mod/forum/discuss.php?d=258632
Chris