diff options
| author | Jason Gross | 2018-12-03 18:19:57 -0500 |
|---|---|---|
| committer | Jason Gross | 2019-01-24 14:29:03 -0500 |
| commit | 20fc76a75c13f61d467834414e97776477ec203c (patch) | |
| tree | 47afbe48e1a0df92d231086b2ce8532a0f6215fe | |
| parent | a10076e834720c05e55397c9e26b9d7a8786298b (diff) | |
Add subst to the end of nia in the test-suite
This speeds up the file from 2m32s to
```
real 0m41.851s
user 0m41.512s
sys 0m0.376s
```
Also note the `subst` trick in the doc.
| -rw-r--r-- | doc/sphinx/addendum/micromega.rst | 3 | ||||
| -rw-r--r-- | test-suite/success/Nia.v | 2 |
2 files changed, 3 insertions, 2 deletions
diff --git a/doc/sphinx/addendum/micromega.rst b/doc/sphinx/addendum/micromega.rst index 2ace8a59e1..5f199d28f5 100644 --- a/doc/sphinx/addendum/micromega.rst +++ b/doc/sphinx/addendum/micromega.rst @@ -251,7 +251,8 @@ obtain :math:`-1`. By Theorem :ref:`Psatz <psatz_thm>`, the goal is valid. .. [#] Support for :g:`nat` and :g:`N` is obtained by pre-processing the goal with the ``zify`` tactic. .. [#] Support for :g:`Z.div` and :g:`Z.modulo` may be obtained by pre-processing the goal with - the ``Z.div_mod_to_quot_rem`` tactic after manually running ``zify``. + the ``Z.div_mod_to_quot_rem`` tactic after manually running ``zify``. Note that additionally + running ``subst`` can speed up things up, sometimees by almost 4x in practice. .. [#] Sources and binaries can be found at https://projects.coin-or.org/Csdp .. [#] Variants deal with equalities and strict inequalities. .. [#] In practice, the oracle might fail to produce such a refutation. diff --git a/test-suite/success/Nia.v b/test-suite/success/Nia.v index 6cb645d9eb..c157173b77 100644 --- a/test-suite/success/Nia.v +++ b/test-suite/success/Nia.v @@ -4,7 +4,7 @@ Open Scope Z_scope. (** Add [Z.div_mod_to_quot_rem] to the end of [zify], just for this file. *) -Ltac zify ::= repeat (zify_nat; zify_positive; zify_N); zify_op; Z.div_mod_to_quot_rem. +Ltac zify ::= repeat (zify_nat; zify_positive; zify_N); zify_op; Z.div_mod_to_quot_rem; subst. Lemma Z_zerop_or x : x = 0 \/ x <> 0. Proof. nia. Qed. Lemma Z_eq_dec_or (x y : Z) : x = y \/ x <> y. Proof. nia. Qed. |
