property HasNext prefix "Iterator" prefix "List" start -> start: * start -> invalid: I = iterator(*) invalid -> valid: B = hasNext(i) if B != 0 // in SIL, "true" is encoded as "not 0" valid -> invalid: next(i) invalid -> error: next(i)