Compat.prove_thm : (string * term * tactic) -> thm

SYNOPSIS
Attempts to prove a boolean term using the supplied tactic, then save the theorem.

DESCRIBE
Found in the hol88 library. When applied to a triple (s,tm,tac), giving the name to save the theorem under, the term to prove (with no assumptions) and the tactic to perform the proof, the function prove_thm attempts to prove the goal ?- tm, that is, the term tm with no assumptions, using the tactic tac. If prove_thm succeeds, it attempts to save the resulting theorem in the current theory segment, and if this succeeds, the saved theorem is returned.

FAILURE
Fails if the term is not of type bool (and so cannot possibly be the conclusion of a theorem), or if the tactic cannot solve the goal. In addition, prove_thm will fail if the theorem cannot be saved, e.g. because there is already a theorem of that name in the current theory segment, or if the resulting theorem has assumptions; clearly this can only happen if the tactic was invalid, so this gives some measure of validity checking. The function is not available unless the hol88 library has been loaded.

COMMENTS
In hol90, use store_thm instead; the cognitive dissonance between prove, PROVE, and prove_thm proved to be too much for the author, so in hol90 PROVE doesn't exist: there is only prove; and prove_thm doesn't exist: it has been replaced by store_thm.

SEEALSO  prove,   PROVE,   TAC_PROOF,   VALID

HOL  Kananaskis 0