aboutsummaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorEnrico Tassi2019-03-21 10:08:29 +0100
committerErik Martin-Dorel2019-04-23 12:54:44 +0200
commite68bccba9344c1b3d77d3e815af6cce1ce50b731 (patch)
treeb155f20564f0bd20bc15184f943d4b4501e2a770 /doc
parent600fef9a1c9cd15ad43196b7750ba15922c01752 (diff)
[ssr] new syntax for the under tactic
Diffstat (limited to 'doc')
-rw-r--r--doc/sphinx/proof-engine/ssreflect-proof-language.rst10
1 files changed, 3 insertions, 7 deletions
diff --git a/doc/sphinx/proof-engine/ssreflect-proof-language.rst b/doc/sphinx/proof-engine/ssreflect-proof-language.rst
index a4ab038314..cb529bd68e 100644
--- a/doc/sphinx/proof-engine/ssreflect-proof-language.rst
+++ b/doc/sphinx/proof-engine/ssreflect-proof-language.rst
@@ -3692,9 +3692,7 @@ complete terms, as shown by the simple example below.
.. coqtop:: all abort
Lemma example_G (n : nat) : G (fun n => n - n) n >= 0.
- under m: eq_G by rewrite subnn.
-
- ``(* FIXME: replace with do... *)``
+ under eq_G => n do rewrite subnn.
.. tacn:: under {? @occ_switch} {? [ @r_pattern ] } @term {? => @i_item} {? do ( @tactic | [ {*| @tactic } ] ) }
:name: under
@@ -3762,7 +3760,7 @@ lemma ``eq_G``, but this time in interactive mode:
.. coqtop:: all abort
Lemma example_G (n : nat) : G (fun n => n - n) n >= 0.
- under m: eq_G.
+ under eq_G => m.
rewrite subnn.
over.
@@ -3857,9 +3855,7 @@ shortened to: :n:`under @term => i do tac1.`
Lemma test_big_nested (F G : nat -> nat) (m n : nat) :
\sum_(0 <= a < m) \sum_(0 <= j < n | odd (j * 1)) (a + j) =
\sum_(0 <= i < m) \sum_(0 <= j < n | odd j) (j + i).
- under i I: eq_bigr by under j J: eq_big by [rewrite muln1|rewrite addnC].
-
- ``(* FIXME: replace with do... *)``
+ under eq_bigr => i Hi do under eq_big => [j|j Hj] do [rewrite muln1|rewrite addnC].
.. _locking_ssr: