Invariante di rappresentazione di sottoclassi di una classe concreta
invariante di rappresentazione per MaxIntSet
// IMaxIntSet (c) = c.size() > 0 ==>
// (c.mass appartiene a aIntSet(c) &&
// per tutti gli x in aIntSet(c), x <= c. mass)
l’invariante non include (e non utilizza in questo caso) l’invariante di IntSet perché tocca all’implementazione di IntSet preservarlo
- le operazioni di MaxIntSet non possono interferire perché operano sulla rep del supertipo solo attraverso i suoi metodi pubblici
- ma se implementiamo repOk, .....
usa la funzione di astrazione del supertipo