At:
append is singleton T:Type, a,b:T List, x:T. [x] = (a @ b) a = nil & b = [x] b = nil & a = [x]
By:
InductionOnList
THEN
Reduce 0
Generated subgoals:
1. T: Type 2. a: T List 3. u: T 4. v: T List 5. b:T List, x:T. [x] = (v @ b) v = nil & b = [x] b = nil & v = [x] b:T List, x:T. [x] = [u / (v @ b)] [u / v] = nil & b = [x] b = nil & [u / v] = [x]