diff options
| -rw-r--r-- | doc/refman/RefMan-tac.tex | 20 | ||||
| -rw-r--r-- | tactics/equality.ml | 2 |
2 files changed, 16 insertions, 6 deletions
diff --git a/doc/refman/RefMan-tac.tex b/doc/refman/RefMan-tac.tex index 4946be8f22..0c60a4ea73 100644 --- a/doc/refman/RefMan-tac.tex +++ b/doc/refman/RefMan-tac.tex @@ -1540,17 +1540,27 @@ symmetric form occurs. It is equivalent to {\tt cut \term$_2$=\term$_1$; [intro H{\sl n}; rewrite <- H{\sl n}; clear H{\sl n}| assumption || symmetry; try assumption]}. +\begin{ErrMsgs} +\item \errindex{terms do not have convertible types} +\end{ErrMsgs} + \begin{Variants} \item {\tt replace {\term$_1$} with {\term$_2$} in \ident}\\ This replaces {\term$_1$} with {\term$_2$} in the hypothesis named {\ident}, and generates the subgoal {\term$_2$}{\tt =}{\term$_1$}. - \begin{ErrMsgs} - \item \errindex{No such hypothesis} : {\ident} - \item \errindex{Nothing to rewrite in {\ident}} - \end{ErrMsgs} - +% \begin{ErrMsgs} +% \item \errindex{No such hypothesis} : {\ident} +% \item \errindex{Nothing to rewrite in {\ident}} +% \end{ErrMsgs} + +\item {\tt replace {\term$_1$} with {\term$_2$} by \tac} This acts as + {\tt replace {\term$_1$} with {\term$_2$}} but try to solve the + generated subgoal {\tt \term$_2$=\term$_1$} using {\tt \tac}. +\item {\tt replace {\term$_1$} with {\term$_2$} in \ident by \tac} This acts as + {\tt replace {\term$_1$} with {\term$_2$} in \ident} but try to solve the + generated subgoal {\tt \term$_2$=\term$_1$} using {\tt \tac}. \end{Variants} \subsection{\tt reflexivity diff --git a/tactics/equality.ml b/tactics/equality.ml index ea7967bb1d..f51751359e 100644 --- a/tactics/equality.ml +++ b/tactics/equality.ml @@ -201,7 +201,7 @@ let abstract_replace clause c2 c1 unsafe tac gl = ] ] gl else - error "terms does not have convertible types" + error "terms do not have convertible types" let replace c2 c1 gl = abstract_replace None c2 c1 false tclIDTAC gl |
