BETA_RULE : thm -> thm
A |- ....((\x. s1) s2).... ---------------------------- BETA_RULE A |- ....(s1[s2/x])....
# let x = ASSUME `f = ((\x y. x + y) y)`;; val x : thm = f = (\x y. x + y) y |- f = (\x y. x + y) y # BETA_RULE x;; val it : thm = f = (\x y. x + y) y |- f = (\y'. y + y')