GEN : (term -> thm -> thm)
A |- t
------------ GEN "x" [where x is not free in A]
A |- !x. t
#top_print print_all_thm;; - : (thm -> void) #let t = ASSUME "x=T";; t = x = T |- x = T #GEN "x:bool" t;; evaluation failed GEN