aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJason Gross2018-12-03 18:19:57 -0500
committerJason Gross2019-01-24 14:29:03 -0500
commit20fc76a75c13f61d467834414e97776477ec203c (patch)
tree47afbe48e1a0df92d231086b2ce8532a0f6215fe
parenta10076e834720c05e55397c9e26b9d7a8786298b (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.rst3
-rw-r--r--test-suite/success/Nia.v2
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.