MATCH_ACCEPT_TAC : thm_tactic

SYNOPSIS
Solves a goal which is an instance of the supplied theorem.

DESCRIPTION
When given a theorem A' |- t and a goal A ?- t' where t can be matched to t' by instantiating variables which are either free or universally quantified at the outer level, including appropriate type instantiation, MATCH_ACCEPT_TAC completely solves the goal.
    A ?- t'
   =========  MATCH_ACCEPT_TAC (A' |- t)

Unless A' is a subset of A, this is an invalid tactic.

FAILURE CONDITIONS
Fails unless the theorem has a conclusion which is instantiable to match that of the goal.

EXAMPLE
The following example shows variable and type instantiation at work. Suppose we have the following simple goal:
  # g `HD [1;2] = 1`;;
we can do it via the polymorphic theorem HD = |- !h t. HD(CONS h t) = h:
  # e(MATCH_ACCEPT_TAC HD);;

SEE ALSO
ACCEPT_TAC.