(isPrefix.1) isPrefix([], B) = true (isPrefix.2) isPrefix(A, []) = false (when A is not []) (isPrefix.3) isPrefix(A, B) = head(A) == head(B) and isPrefix(tail(A), tail(B)) (when A ≠ [] and B ≠ [])Evaluation is as follows.
isPrefix([2,3], [2]) = 2 == 2 and isPrefix([3], []) by (isPrefix.3) = true and isPrefix([3], []) = isPrefix([3], []) = isPrefix(3:[], []) = false by (isPrefix.2)