HOL: inductive package no longer splits induction rule aggressively,
but only as far as specified by the introductions given; the old
format may recovered via ML function complete_split_rule or attribute
'split_rule (complete)';
consts sep :: 'a list => 'a => 'a list
recdef sep "measure length"
"sep (x#y#zs) = (%a. x # a # sep zs a)"
"sep xs = (%a. xs)"