I could not find any explanation for the keyword 'invariant' in the PDF doc. Is it the equivalent of the C++ 'const' in at least some of the latter's usages ? The only explanation for it existed as part of Contract Programming, but it seems to be used otherwise also.