692 \item[\labelitemi] \textbf{\textit{learn\_isar}:} Invokes MaSh on the current |
692 \item[\labelitemi] \textbf{\textit{learn\_isar}:} Invokes MaSh on the current |
693 theory to process all the available facts, learning from their Isabelle/Isar |
693 theory to process all the available facts, learning from their Isabelle/Isar |
694 proofs. This happens automatically at Sledgehammer invocations if the |
694 proofs. This happens automatically at Sledgehammer invocations if the |
695 \textit{learn} option (\S\ref{relevance-filter}) is enabled. |
695 \textit{learn} option (\S\ref{relevance-filter}) is enabled. |
696 |
696 |
697 \item[\labelitemi] \textbf{\textit{learn\_atp}:} Invokes MaSh on the current |
697 \item[\labelitemi] \textbf{\textit{learn\_prover}:} Invokes MaSh on the current |
698 theory to process all the available facts, learning from ATP-generated proofs. |
698 theory to process all the available facts, learning from proofs generated by |
699 The ATP to use and its timeout can be set using the |
699 automatic provers. The prover to use and its timeout can be set using the |
700 \textit{prover} (\S\ref{mode-of-operation}) and \textit{timeout} |
700 \textit{prover} (\S\ref{mode-of-operation}) and \textit{timeout} |
701 (\S\ref{timeouts}) options. It is recommended to perform learning using an |
701 (\S\ref{timeouts}) options. It is recommended to perform learning using an |
702 efficient first-order ATP (such as E, SPASS, and Vampire) as opposed to a |
702 efficient first-order ATP (such as E, SPASS, and Vampire) as opposed to a |
703 higher-order ATP or an SMT solver. |
703 higher-order ATP or an SMT solver. |
704 |
704 |
705 \item[\labelitemi] \textbf{\textit{relearn\_isar}:} Same as \textit{unlearn} |
705 \item[\labelitemi] \textbf{\textit{relearn\_isar}:} Same as \textit{unlearn} |
706 followed by \textit{learn\_isar}. |
706 followed by \textit{learn\_isar}. |
707 |
707 |
708 \item[\labelitemi] \textbf{\textit{relearn\_atp}:} Same as \textit{unlearn} |
708 \item[\labelitemi] \textbf{\textit{relearn\_prover}:} Same as \textit{unlearn} |
709 followed by \textit{learn\_atp}. |
709 followed by \textit{learn\_prover}. |
710 |
710 |
711 \item[\labelitemi] \textbf{\textit{running\_learners}:} Prints information about |
711 \item[\labelitemi] \textbf{\textit{running\_learners}:} Prints information about |
712 currently running machine learners, including elapsed runtime and remaining |
712 currently running machine learners, including elapsed runtime and remaining |
713 time until timeout. |
713 time until timeout. |
714 |
714 |
717 \end{enum} |
717 \end{enum} |
718 |
718 |
719 Sledgehammer's behavior can be influenced by various \qty{options}, which can be |
719 Sledgehammer's behavior can be influenced by various \qty{options}, which can be |
720 specified in brackets after the \textbf{sledgehammer} command. The |
720 specified in brackets after the \textbf{sledgehammer} command. The |
721 \qty{options} are a list of key--value pairs of the form ``[$k_1 = v_1, |
721 \qty{options} are a list of key--value pairs of the form ``[$k_1 = v_1, |
722 \ldots, k_n = v_n$]''. For Boolean options, ``= \textit{true\/}'' is optional. For |
722 \ldots, k_n = v_n$]''. For Boolean options, ``= \textit{true\/}'' is optional. |
723 example: |
723 For example: |
724 |
724 |
725 \prew |
725 \prew |
726 \textbf{sledgehammer} [\textit{isar\_proofs}, \,\textit{timeout} = 120] |
726 \textbf{sledgehammer} [\textit{isar\_proofs}, \,\textit{timeout} = 120] |
727 \postw |
727 \postw |
728 |
728 |