Add shuffle rule
This adds a shuffle rule to Alethe that can be used to change the order of arguments of commutative operators. Two remarks:
- Reconstruction might be easier if steps using this rules come with a permutation in the arguments. So for example:
(step s1 (= (cl (+ a b c) (+ b a c)) :rule shuffle :args (2 1 3))
However, I am not certain of hard it is to generate this. I suggest we think about adding this after Hanna used this rule.
- We should consider renaming
reordering
toshuffle_clause
. In the proofs meeting yesterday we said that "reorder" is not a good name, because it implies a specific order.