prove_cases_thm : (thm -> thm)
|- !P. (!x. P(LEAF x)) /\ (!b1 b2. P b1 /\ P b2 ==> P(NODE b1 b2)) ==> (!b. P b)prove_cases_thm proves and returns the theorem:
|- !b. (?x. b = LEAF x) \/ (?b1 b2. b = NODE b1 b2)This states that every labelled binary tree b is either a leaf node with a label x or a tree with two subtrees b1 and b2.