假设我有一个像a + (b + (c + d))
这样的总和,我希望将其转换为a + b + c + d
来应用引理。
使用Nat.add_assoc
手动执行此操作非常繁琐。有更聪明的方法吗?
答案 0 :(得分:4)
我会使用的“简单但不好”的方式是replace (a + (b + (c + d)))) with (a + b + c + d) by now omega
答案 1 :(得分:4)
你可以使用repeat
战术,在不再适用之前重复一些策略:
repeat rewrite Nat.add_assoc.
或更简洁的版本:
rewrite !Nat.add_assoc.
它的作用与repeat
的变体相同。
这种方法的缺点是它会在目标中的任何地方重写。因此,您可能希望选择公式的某些部分来仅对其进行重写。